A standalone Golf Course / Club / Camp CRM platform — member & player management, tee-time booking, academy/camp management, coaching, tournaments, course operations, hospitality, finance, and analytics.
Built as a self-contained app (own repo, npm workspaces, no Turborepo) with an inlined shared core
(@golfbide/* packages under packages/).
- API — Express 5 + MariaDB (stored procedures) + Socket.IO — port
3014 - Web — React 19 + Vite + MUI + PWA — port
5180 - AI/RAG — FastAPI + LangGraph + LiteLLM + Qdrant — port
8110 - Native — Expo (Android/iOS) — Metro
8090 - Website — static marketing site
npm install
# Create & seed the database (credentials in api/.env)
mysql -u root -p < database/00_init.sql
mysql -u root -p golfbide < database/01_core_admin.sql
mysql -u root -p golfbide < database/02_core_seed.sql
mysql -u root -p golfbide < database/10_members_schema.sql
mysql -u root -p golfbide < database/11_members_dummy_data.sql
mysql -u root -p golfbide < database/12_members_menus_routes.sql
# Configure env
cp api/.env.example api/.env
cp web/.env.example web/.env
# Run
npm run dev # API on :3014, Web on :5180See CLAUDE.md for architecture and conventions, and SECRETS.md for the GitHub Actions secrets required by the deployment workflows.