e50e6f83dc
Sets up the foundational project structure for the BuzzMaster Live Quiz Platform. This includes: - **Project Initialization:** Creates `package.json` with necessary dependencies (React, React Router DOM, Vite, TypeScript). - **Vite Configuration:** Configures Vite for development and building, including server settings and environment variable handling. - **HTML Entry Point:** Sets up `index.html` with basic structure, Tailwind CSS, Google Fonts, and ESM import maps. - **React Entry Point:** Configures `index.tsx` to render the main `App` component. - **TypeScript Configuration:** Defines `tsconfig.json` for the project. - **Git Ignore:** Adds standard files and directories to `.gitignore`. - **README and Metadata:** Includes a basic `README.md` and `metadata.json` describing the project. - **Type Definitions:** Establishes core type definitions in `types.ts` for game state, user roles, players, teams, and questions. - **App Component:** Creates a basic `App.tsx` component with routing and initial game state management, including logic for local storage fallback and API sync. - **Component Stubs:** Adds placeholder components for `PlayerView`, `AdminDashboard`, and `SpectatorView`.
43 lines
717 B
YAML
43 lines
717 B
YAML
|
|
version: '3.8'
|
|
|
|
services:
|
|
db:
|
|
image: mariadb:10.11
|
|
restart: always
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: root_password
|
|
MYSQL_DATABASE: buzzmaster
|
|
MYSQL_USER: buzz_user
|
|
MYSQL_PASSWORD: buzz_password
|
|
ports:
|
|
- "3306:3306"
|
|
volumes:
|
|
- db_data:/var/lib/mysql
|
|
|
|
backend:
|
|
build: ./backend
|
|
restart: always
|
|
environment:
|
|
DB_HOST: db
|
|
DB_USER: buzz_user
|
|
DB_PASS: buzz_password
|
|
DB_NAME: buzzmaster
|
|
PORT: 5000
|
|
ports:
|
|
- "5000:5000"
|
|
depends_on:
|
|
- db
|
|
|
|
frontend:
|
|
build: .
|
|
ports:
|
|
- "80:80"
|
|
environment:
|
|
- VITE_API_URL=http://localhost:5000
|
|
depends_on:
|
|
- backend
|
|
|
|
volumes:
|
|
db_data:
|