A sleek, modern web application designed to elevate the dining experience through contactless browsing.
Built with Django — featuring session-based cart management, automated QR code generation, and a premium user interface.
- 🛒 Dynamic Session-Based Cart: Engineered a bespoke
cart.pymodule that handles complex shopping cart logic. It utilizes Django sessions to temporarily store user orders without hitting the database, ensuring lightning-fast performance for guest users. - 📱 Automated QR Code Generator: Features an integrated
qr.pyutility that programmatically generates scannable QR codes. This allows restaurant owners to instantly deploy table-specific codes for a seamless, contactless dining experience. - 🛡️ Bespoke Error Handling: Implements custom routing and a tailored
404.htmltemplate to maintain a professional brand image and seamlessly guide users back to the active menu if they navigate to an invalid URL. - 📊 Powerful Admin Integration: A fully configured Django admin dashboard (
admin.py) enabling staff to easily manage inventory, categorize dishes, update pricing, and instantly toggle item availability in real-time. - 🎨 Premium UI/UX: A visually striking interface built with custom CSS, focusing on smooth transitions, intuitive navigation, and high-quality image rendering for an appetizing menu presentation.
- Backend: Python, Django
- Frontend: HTML5, Custom CSS3, Responsive Design Principles
- Database: SQLite (Default, scalable to PostgreSQL in production)
- Utilities: QR Code generation algorithms, Django Session Middleware
Follow these instructions to set up a local instance of the application for development, testing, and menu configuration.
- Python 3.10+
- Git
- pip (Python package manager)
-
Clone the repository:
git clone [https://github.com/AndrewTechTips/Django-Restaurant-Menu.git](https://github.com/AndrewTechTips/Django-Restaurant-Menu.git) cd Django-Restaurant-Menu -
Create and activate a virtual environment:
# Windows python -m venv venv venv\Scripts\activate # macOS/Linux python3 -m venv venv source venv/bin/activate
-
Install the dependencies:
pip install -r requirements.txt
-
Run Database Migrations:
python manage.py makemigrations python manage.py migrate
-
Create a Superuser (to manage the menu via Admin):
python manage.py createsuperuser
-
Start the Development Server:
python manage.py runserver
Navigate to
http://127.0.0.1:8000to view the live menu, andhttp://127.0.0.1:8000/adminto begin adding dishes and categories.
- Adding Items: Log into the
/adminportal to upload dish photos, write appetizing descriptions, set prices, and group items into categories (e.g., Starters, Mains, Desserts). - Generating QR Codes: Utilize the
qr.pyscript to generate high-resolution QR codes pointing to your server's domain for easy table-top printing. - Cart Management: Users can seamlessly add items to their cart, adjust quantities, and review their total before placing an order.
- Name: Andrei Condrea
- LinkedIn: Andrei Condrea
- Email: condrea.andrey777@gmail.com
"Building digital solutions that empower people and transform businesses."






