Skip to content

Our ITI graduation project was born from a genuine desire to solve a real-world problem faced by our fellow students. As we conclude our academic journey, we wanted to leave a meaningful impact on our institution.

Notifications You must be signed in to change notification settings

ahmedabougabal/ITICafeFoodDeliveryApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

👨‍💻 ITI Cafe Food Delivery/Ordering App - ITI Graduation Project Project Status Awesome

Hellllloooooooooooooooooooo Folks! 👋

It's bittersweet to announce that this is our final ITI graduation project, but we are excited to share what we've built! 🎓✨ We wanted to leave a lasting impression and solve a real-life problem we encountered within our beloved institution, refer to the repo's description :D

Watch the Project Overview:

Watch the video


Getting Started Guide 🚀

Want to set up and run the project locally? Follow the detailed video guide to:

  • Start the Django server
  • Configure ports and WebSocket
  • Set up the database
  • Run migrations to fully initiate the project

Watch the video

🎯 What actually is the Problem?

Students at our institution regularly face:

  • Long wait times in crowded queues
  • Valuable time lost from their busy academic schedules
  • Inefficient food ordering processes

💡 How we came up with a Solution?

We developed a robust a web application that fully streamlines the whole food ordering process powered by a beautiful react frontend and django for the backend .

ITI Café Order System

Core Architecture & Administrative Capabilities

Our project, a sophisticated and scalable Café Order System, is a true testament to the power of teamwork and modern web development. Built by a dedicated team of 5 ITI developers, this solution has been endorsed by ITI's open source leaders, Eng. Cherry and Eng. Mina Nagy, recognizing its potential for freelancing and real-world applications.

The admin panel is the cornerstone of this system, providing a robust, elegant, and crispy interface that ensures seamless management. This project was executed through intensive meeting plans, late-night coding sessions, and adherence to Agile working methodologies, supported by JIRA for task management, tracking, and deadline compliance.

Sales Statistics Functionality

One of the system's standout features is its Sales Statistics functionality, powered by Python-written MySQL queries that dynamically feed the backend data into the front-end to generate actionable insights. Key metrics visualized through our interactive design include:

  • Daily sales totals in real-time
  • Rolling 7-day performance analytics
  • 30-day comprehensive reports
  • Top customer rankings and their purchases
  • Most popular item analytics

This functionality is presented through a polished, sophisticated interface, underscoring the professional finesse and attention to detail that went into the project. Every chart and metric is crafted to display vital business insights effortlessly.


Revolutionary Order Management Workflow

The order management system is another hallmark of our project, built to optimize efficiency and deliver an intuitive, breathtaking user experience. The process operates in three seamless phases:

1. Pending Orders Phase

When a customer places an order through the visually stunning client-side interface, it lands in the Pending Orders section of the admin panel. Chiefs can:

  • Accept or reject orders, with every action triggering an immediate, automated notification:
    • Email alerts sent directly to the customer
    • Real-time updates in the user’s notification center

2. Active Preparation Phase

Once accepted, orders enter the Active Preparation Phase, where our system incorporates:

  • Real-time tracking of the order's preparation
  • Crisp visual countdown timers in both the customer and admin interfaces
  • Red-flag alerts for orders exceeding preparation times
  • Interactive progress bars that display the order's status to the customer in real-time

3. Completion Phase

In the Completion Phase, the order lifecycle is finalized with:

  • Payment verification for cash transactions, handled by the admin
  • Automated status updates reflected in the user’s order history
  • Real-time synchronization of payment statuses to ensure clarity and ease for both the user and the admin.

Technical Innovation & User Experience

Our platform stands as a masterpiece of technology and design, balancing cutting-edge functionality with an elegant user experience. Every feature was reviewed and refined through intensive team meetings, following strict deadlines and timeframes to ensure everything functioned as smoothly as possible. Additionally, we utilized Git and GitHub extensively for version control, navigating intensive conflict resolution sessions to ensure collaboration without disruption.

Multi-Branch Architecture

The system supports a multi-branch structure, allowing users to switch between ITI branches based on location without needing to log out. Each branch offers a unique menu and is managed independently, ensuring a customized user experience.

Real-Time Communication Hub

Our real-time communication hub is built on a powerful WebSocket integration, enabling:

  • Instant chat functionality between customers and staff
  • Live order updates for both the customer and admin
  • An integrated notification system that seamlessly relays important updates

Payment Processing

We have implemented a dual-payment system that includes:

  • PayPal integration for digital transactions
  • Cash payment tracking and verification, ensuring smooth order processing
  • Real-time payment status updates visible to both customers and admins

Mobile-First Design

The entire platform follows mobile-first design principles, ensuring:

  • A responsive, elegant experience on mobile devices
  • Seamless functionality across all device types, with an optimized touch interface

Polling System Architecture

Our system also employs a sophisticated polling architecture, ensuring:

  • Continuous real-time order status monitoring
  • Automated notifications dispatched promptly to users
  • Dashboard updates for both customers and admins, ensuring they always have the most up-to-date information

Seamless Collaboration and Teamwork

This project reflects the strength of collaborative development. Throughout the project, our team followed Agile methodologies, with careful planning in JIRA for task tracking and deadline management. We utilized Git and GitHub for robust version control, ensuring smooth collaboration even during complex phases where we faced significant merge conflicts, all of which were handled with precision and expertise.


Final Remarks

Through dedicated collaboration, late-night coding, and extensive review cycles with our supervisor, we've delivered a project that is more than just a collection of features—it's a cohesive, professional-grade solution. Designed for scalability and configurability, this system is ready to adapt to any business model while ensuring an exceptional user experience.

Built on the latest tech stacks and following modern best practices, this project is a shining example of what can be achieved through cutting-edge technology, thoughtful design, and teamwork. It stands as a benchmark in professional web development and a proud testament to the skill and dedication of our team.

🛠️ Tech Stack

We have chosen a robust and scalable tech stack to ensure our app runs smoothly and efficiently:

📊 Repository Stats

GitHub repo size GitHub contributors GitHub last commit GitHub forks

🧩 Setup & Installation Update: a video will be released demostrating how to fully install the project on your ubuntu machine. Coming Soon!!

To get started with the project, you'll need Pipenv as the primary tool for managing dependencies and the virtual environment.

Prerequisites:

  • Python 3.8+
  • PostgreSQL

Installation Steps:

  1. Clone the repository:

    git clone https://github.com/ahmedabougabal/ITICafeFoodDeliveryApp.git
    cd ITICafeFoodDeliveryApp
  2. Set up the virtual environment using pipenv:

    pipenv install
  3. Apply the migrations to set up the database:

    python manage.py migrate
  4. Run the development server:

    python manage.py runserver

You're all set! 🎉

📈 Project Stats

Contributors Last Update Views
Contributors Last Commit Repo View

👥 Collaborators

🔗 Useful Links

🙏 Acknowledgements

We thank ITI for the wonderful journey, and our instructors for their constant guidance. This project is a small contribution to the learning experiences we’ve had.


"If it is easy, leave it to somebody else." – Abou Gabal

About

Our ITI graduation project was born from a genuine desire to solve a real-world problem faced by our fellow students. As we conclude our academic journey, we wanted to leave a meaningful impact on our institution.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published