Welcome to RESA
RESA is a restaurant operations platform. It helps restaurants run day-to-day service: tables, orders, products, reservations, and regulars — and it also offers guests a digital menu they can open from a QR code.
This documentation is for developers and maintainers. Use it to understand how the system is structured and where to work when you change something.
What you will find here
| If you want to… | Start with |
|---|---|
| Understand how the pieces fit together | How RESA is built below |
| See local ports and test URLs | Environments |
| Deploy on a blank AWS server | Fresh server installation |
| Update an existing deployment | Updating |
| Configure AWS security groups | Security settings |
| Work on the API or data model | API |
| Work on the guest digital menu | Customer app |
| Work on the staff POS | Staff app |
How RESA is built
RESA uses three layers. Data moves database → server → client, or the other way when a user takes an action.
| Layer | What it is |
|---|---|
| Database | Where data is stored. |
| Server / Backend API | Where data is processed and saved. |
| Client | Where people interact — sending input to the server, or showing what the server returns. |
Reading data: the client asks the server → the server loads from the database → the client shows it to the user.
Writing data: the user acts in the client → the client sends it to the server → the server processes it and stores it in the database.
The apps
- API — Django backend shared by all clients.
- Staff — POS for waiters (garson), bar/cashier (barkasa), and management (patron).
- Customer — guest digital menu (browse categories, prices, availability; ordering later).
New here? Read the overview above, then pick the layer or app you need to change.