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
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
Students at our institution regularly face:
- Long wait times in crowded queues
- Valuable time lost from their busy academic schedules
- Inefficient food ordering processes
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 .
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.
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.
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:
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
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
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.
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.
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.
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
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
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
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
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.
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.
We have chosen a robust and scalable tech stack to ensure our app runs smoothly and efficiently:
- Backend: Python / Django / TypeScript
- Database: PostgreSQL / Redis
- Package Management: Pipenv
- Frontend: React / TailWind / JavaScript
- Deployment: Coming soon!
🧩 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.
- Python 3.8+
- PostgreSQL
-
Clone the repository:
git clone https://github.com/ahmedabougabal/ITICafeFoodDeliveryApp.git cd ITICafeFoodDeliveryApp
-
Set up the virtual environment using
pipenv
:pipenv install
-
Apply the migrations to set up the database:
python manage.py migrate
-
Run the development server:
python manage.py runserver
You're all set! 🎉
Contributors | Last Update | Views |
---|---|---|
- Ahmed Abou Gabal - Collaborator
- KareemMMorsy - Collaborator
- Mahmoud Wafi - Collaborator
- MoatazSobhy - Collaborator
- AhmedFadl - Collaborator
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