Restaurant Equis is configured entirely through environment variables — no values are hard-coded. The frontend reads variables at build time via Vite (prefixedDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/teofilobetancourt/Restaurant-Equis/llms.txt
Use this file to discover all available pages before exploring further.
VITE_), while the backend reads them at runtime from a backend/.env file loaded by the systemd service or the shell that runs Uvicorn. This page documents every variable, shows the provided example files, and explains the Docker Compose database defaults.
Frontend Environment Variables
Frontend variables are defined in.env.local at the project root and must be prefixed with VITE_ to be exposed to the React application by Vite.
Base URL of the FastAPI backend. All API requests from the React app are prefixed with this value. When left as an empty string, requests are made relative to the same origin — which is the correct behavior when Nginx serves both the SPA and proxies
/api/* from the same host. Set to http://localhost:5000 during local development when the frontend and backend run on different ports.Default: empty string (same-origin)Example: http://localhost:5000The restaurant’s WhatsApp number used by the POS module to pre-fill order messages via the
wa.me deep-link. The value must include the country code with no + sign, spaces, or dashes.Format: 58 (Venezuela country code) + area code + subscriber number — e.g. 584140000000Example: 584140000000Backend Environment Variables
Backend variables are stored inbackend/.env. The systemd service file points to this file via EnvironmentFile=, so all variables are available to the Uvicorn process at runtime.
Hostname or IP address of the PostgreSQL server.Default:
localhostTCP port on which PostgreSQL is listening.Default:
5432Name of the PostgreSQL database. The database must already exist before the backend starts; SQLAlchemy creates the tables automatically on first boot but does not create the database itself.Default:
restaurant_equisPostgreSQL username that has full privileges on
DB_NAME.Example: equis_userPassword for
DB_USER. Replace the placeholder CAMBIA_ESTA_CONTRASENA with a strong, unique password before deploying to any non-local environment.Port on which Uvicorn listens. The Nginx reverse proxy and the systemd
ExecStart command both reference port 5000 — change all three in sync if you need a different port.Default: 5000Comma-separated list of origins that the FastAPI CORS middleware will accept requests from. Include every hostname from which the frontend is served. In local development this is typically
http://localhost:5173,http://localhost:3000; in production it should be limited to the exact production URL(s).Example: http://158.220.100.226,http://localhost:5173,http://localhost:3000Frontend .env.local Example
The .env.example file at the project root is the canonical template for frontend configuration:
.env.local and update the values before running npm run dev or npm run build.
Backend .env Example
The backend/.env.example file is the canonical template for backend configuration:
backend/.env before starting the backend:
Docker Compose
Thedocker-compose.yml file defines a single postgres service for running the database in a container. This is used during local development to avoid installing PostgreSQL natively, or can serve as the basis for a fully containerised deployment.
| Variable | Value | Description |
|---|---|---|
POSTGRES_USER | postgres | Superuser account created inside the container |
POSTGRES_PASSWORD | postgres | Password for the superuser — change this for any shared or production environment |
POSTGRES_DB | restaurant_equis | Database created automatically on first container start |
backend/.env:
postgres_data, so it survives docker-compose down and is only removed with docker-compose down -v.