Project Overview

Pop.Eats is a responsive, single restaurant ordering app. The app serves as an intermediary for both the client (customer) and the restaurant.

Customers can log in, place orders, view their previous orders and update their profile. As a restaurant owner, the user can also update the menu as well as accept and process orders. When an order is placed, the user receives a text confirming receipt and showing the restaurant’s estimated pick-up time.

This application was built on the front end using EJS (Embedded Javascript Templating) and SASS CSS styling. The backend utilizes ExpressJS, with direct PostgreSQL database interactions.

Technical Challenges

One of the main challenges was implementing the real-time notification system to keep customers informed about their order status. This was solved by integrating the Twilio API for SMS messaging, triggered by status changes made through the admin dashboard.

Another challenge was optimizing the user experience for both customers and staff. The solution involved creating separate interfaces with different permissions and capabilities, tailored to each user type’s needs.

Pop.Eats Application demo animation Pop.Eats management dashboard screenshot Pop.Eats personal profile screenshot

Key Features

  • User-Friendly Menu Interface: Intuitive menu browsing with categories, item descriptions, and prices
  • Order Management: Add items to cart, modify quantities, and submit orders
  • SMS Notifications: Real-time updates to customers about order status using Twilio integration
  • Admin Dashboard: Staff interface for order management and status updates
  • Responsive Design: Optimized for both mobile and desktop experiences

Technical Stack

  • Frontend: HTML, CSS, JavaScript, jQuery, AJAX, SASS
  • Backend: Node.js, Express
  • Database: PostgreSQL
  • Libraries/APIs: Twilio API for SMS notifications
  • Deployment: Heroku

Development Process

This project was developed using an agile methodology over a two-week sprint. The team consisted of three developers, each responsible for different aspects of the application:

  1. User Interface & Frontend Logic: Design and implementation of the customer-facing ordering interface
  2. Backend Services: Database design, API endpoints, and business logic
  3. Integration & Testing: SMS notification service integration and comprehensive testing

Technologies Used

  • Google Pay Provides the API used to manage user payments.
  • Twilio Provides the API used to send users text notifications during booking and user communication.
  • Google Maps Provides the API used to search for display the local restaurant locations.

Share this project

Like this project? Share it with your network!