You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Café Lumière is a production-ready restaurant web platform combining a premium customer-facing website with a fully functional admin dashboard. It supports bilingual content in English (LTR) and Arabic (RTL) with automatic layout direction switching.
# Navigate to the Presentation layercd backend/Presentation
# Create a .env file with the required variables (see Environment Variables)
cp .env.example .env
# Restore dependencies & apply migrations
dotnet restore
dotnet ef database update
# Run the API
dotnet run
# API available at http://localhost:5258# OpenAPI UI at http://localhost:5258/scalar/
Frontend
cd frontend
# Install dependencies
npm install
# Start the dev server (proxies /api to http://localhost:5258)
npm run dev
# App available at http://localhost:5173
Environment Variables
Backend (backend/Presentation/.env)
Variable
Description
DEFAULTCONNECTION
PostgreSQL connection string
JWT_SECRET_KEY
JWT signing secret
JWT_ISSUER
JWT issuer URL
JWT_AUDIENCE
JWT audience URL
JWT_LIFETIME_MINUTES
Token expiry in minutes
CORS_ORIGIN
Allowed frontend origin (no trailing slash)
Frontend
Variable
Description
VITE_API_URL
Backend API base URL (production)
Deployment
Service
Platform
Config
Backend
Railway
Dockerfile · railway.json
Frontend
Vercel
frontend/vercel.json (SPA rewrite rule)
The Dockerfile uses a multi-stage build: compiles with the .NET SDK image, then runs on the lighter ASP.NET runtime image on port 8080.
A modern, bilingual (AR/EN) restaurant & café platform with online reservations, WhatsApp integration, and admin dashboard. Built with .NET 10, Clean Architecture and React + TypeScript.