React frontend for the BOL multiplayer game with real-time WebSocket communication.
- Real-time multiplayer game interface
- Individual ChatGPT conversations with AI life coach
- Progress tracking and room management
- Unique player and room name validation
- Session management with browser tab control
- PDF export functionality for conversation summaries
- Copy the example environment file:
cp env.example .env- Configure the server URL in the
.envfile:
REACT_APP_SERVER_URL=http://localhost:3001
For production, update this to your deployed server URL.
npm installnpm startThis runs the app in development mode. Open http://localhost:3000 to view it in the browser.
npm run buildBuilds the app for production to the build folder.
- Login Page (
/) - Enter player name and room name - Lobby Page (
/lobby) - Wait for other players to join - Game Page (
/game/:roomId) - Individual AI conversations - Reset Page (
/reset) - Admin functionality to reset server state
GameRoom.js- Main game room component with player list and controlsPlayerList.js- Display and manage connected playersRoomList.js- Show available rooms
useSocket.js- Custom hook for Socket.IO connection management
browserSession.js- Browser session management and tab control
This client is configured for Railway deployment. The railway.toml file contains the deployment configuration.
Make sure to update the REACT_APP_SERVER_URL environment variable in your Railway deployment to point to your deployed server.