This is a minimal fullstack web application that demonstrates how to make modern technologies work seamlessly together:
- Django — A robust Python framework to quickly build backend logic and manage databases.
- Django REST Framework (DRF) — A powerful toolkit for exposing Django models via a RESTful API.
- Vite.js — A blazing-fast build tool and development server, a modern alternative to Create React App.
- React.js — A declarative JavaScript library for building user interfaces.
- Redux (with Redux Toolkit) — A predictable client-side state management library.
The app simulates a simple pizza ordering flow à la Uber Eats.
Each order is tied to a phone number.
- 🧾 Enter a phone number to begin a new order.
- ➕ Add/Remove pizzas from a list of available products.
- 💾 If the user closes the app, the order can be recovered later by re-entering the same phone number.
- ✅ Once ready, the user can confirm the order.
- 🎁 On the confirmation page, entering the code
PROMO10will apply a €10 discount for orders over €30.
⬇️ Docker needed
git clone https://github.com/TbdGnr/django_drf_vite_react_redux_minimal_app
cd django_drf_vite_react_redux_minimal_app
docker compose up --buildOpen http://localhost:4173/ in a browser
- Python 3.x
npmand Vite.js
git clone https://github.com/TbdGnr/django_drf_vite_react_redux_minimal_app
cd django_drf_vite_react_redux_minimal_app/backend
python -m venv venvActivate the virtual environment:
- macOS/Linux:
source venv/bin/activate - Windows:
venv\Scripts\activate.bat
Install dependencies:
pip install -r requirements.txtStart the server:
python uber_eats/manage.py runservercd frontend
npm install
npm run dev- Frontend App: http://localhost:5173/
- Django Admin: http://localhost:8000/admin
An admin account is pre-configured to manage products:
- Username:
thibaud - Password:
1234