Files
ca-lose/README.md
T
2026-05-20 13:52:08 +02:00

2.9 KiB

CA-Lose

Ticket intake and validation app with a React frontend and an Express + MySQL backend.

Tech Stack

React TypeScript Vite Tailwind%20CSS MUI React%20Query React%20Router Node.js Express MySQL Docker Nginx

Project Structure

Quick Start (Docker)

  1. Set the database password env var used by Docker Compose:
export DB_PASSWORD=your_password
  1. Start MySQL and the backend:
docker compose up -d

Notes:

  • The frontend service is commented out in docker-compose.yml. If you want the frontend container, uncomment that block and rebuild.
  • The frontend container uses Nginx and proxies /backend to the backend service (see frontend/nginx.conf).

Local Development

Backend

  1. Create a .env file in the backend folder with:
PORT=8004
DB_HOST=127.0.0.1
DB_USER=root
DB_PASSWORD=your_password
DB_NAME=ca_lose
  1. Install deps and run:
cd backend
npm install
node server.js

Backend listens on http://localhost:8004 and exposes routes under /default.

Frontend

cd frontend
npm install
npm run dev

Vite runs the app on the default dev port and talks to the backend using the API helpers in frontend/src/utils/api.

API Endpoints

  • GET /default/users
  • GET /default/confirm-user?username={name}
  • POST /default/new-entry?username={name}

Database Notes