Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/JAQA20/LaComanda/llms.txt

Use this file to discover all available pages before exploring further.

La Comanda is packaged as a Docker Compose application, which means you can run the complete stack — Apache, PHP 8.2, and MySQL 8 — on your local machine without installing any of those dependencies directly. All you need is Docker Desktop and Git. From a fresh clone to a working login screen takes about five minutes (plus image download time on first run).

Prerequisites

Before you begin, make sure you have the following installed:

Docker Desktop

Provides the Docker Engine and the docker compose CLI. Required to build and run the application containers.

Git

Used to clone the La Comanda repository to your local machine.
Verify both tools are available before proceeding:
docker --version
docker compose version
You should see version output for both commands. Docker Desktop must be running before you execute any docker compose commands.

Setup

1

Clone the Repository

Clone the La Comanda repository from GitHub and navigate into the project directory:
git clone https://github.com/JAQA20/LaComanda.git
cd LaComanda
2

Create the Environment File

Copy the example environment file to create your local .env:
cp .env.example .env
The default .env values are configured to work with the Docker Compose setup out of the box. Open the file to review or adjust them:
APP_ENV=development
APP_URL=http://localhost:8080
BASE_URL=/
DB_HOST=db
DB_PORT=3306
DB_NAME=la_comanda
DB_USER=lacomanda_user
DB_PASSWORD=ClaveSegura123
MYSQL_ROOT_PASSWORD=rootpassword
DB_HOST=db refers to the MySQL service name defined in docker-compose.yml — Docker’s internal DNS resolves it automatically. Do not change this to localhost when running inside containers.
3

Start the Containers

Build the images and start all services with a single command:
docker compose up --build
Docker will:
  1. Pull the php:8.2-apache and mysql:8 base images (first run only)
  2. Build the application image with all PHP dependencies
  3. Start the MySQL container and run the initialization SQL script to seed the database schema and default accounts
  4. Start the Apache/PHP container and bind it to port 8080
The first run may take a few minutes while Docker downloads the base images and builds the application layer. Subsequent starts (without --build) are much faster.
Wait until you see MySQL log output indicating the server is ready — for example, ready for connections — before opening the app.
4

Open the App

Navigate to http://localhost:8080 in your browser. You will be presented with the La Comanda login screen.Log in with the default admin account to explore the full system:
FieldValue
Emailadmin@proyecto.com
PasswordAdmin123!
These are shared test credentials seeded for development. Replace all default passwords before exposing the application to a network or deploying to production.

Useful Docker Commands

Use these commands to manage the running stack during development:
CommandDescription
docker compose upStart all containers (without rebuilding images)
docker compose up --buildRebuild images and start all containers
docker compose downStop and remove containers, but preserve the database volume
docker compose down -v && docker compose up --buildCompletely reset the database and rebuild from scratch
docker exec -it la-comanda-db mysql -u root -pOpen an interactive MySQL shell inside the database container
# Start (fast, no rebuild)
docker compose up

# Rebuild after code or config changes
docker compose up --build

# Stop everything
docker compose down

# Wipe the database and start fresh
docker compose down -v && docker compose up --build

# Access the MySQL shell
docker exec -it la-comanda-db mysql -u root -p
MySQL is exposed on host port 3307 (not 3306) to avoid conflicts with any local MySQL installation you may already have running. Connect external tools like TablePlus or DBeaver to 127.0.0.1:3307.

What’s Next

Roles Overview

Understand the four user roles — Admin, Waiter, Kitchen, and Barista — and how permissions and views differ for each.

Environment Variables

Full reference for every .env variable, including database settings, app URL configuration, and environment modes.

Build docs developers (and LLMs) love