A LAN-only game portal for 16 players (14 regular + 1 admin) based on the Severance TV show theme.
- Backend: FastAPI 0.110, SQLModel 0.0.16, Uvicorn
- Frontend: React 18, Vite
- Authentication: JWT (HS256), bcrypt password hashing
- Runtime: Single Docker Compose service on port 3000
- Database: SQLite with persistent Docker volume
- User authentication with JWT tokens
- Character dossiers for "Outies" and "Innies"
- Admin dashboard for creating chat rooms
- Real-time chat between players using long-polling
- Dark mode support
- Mobile-responsive design
- Persistent database storage
- Make sure you have Docker and Docker Compose installed
- Clone this repository
- Run the application:
docker-compose up --build- Access the application at http://localhost:3000
The application uses a Docker volume to persist the database. This means your data will be preserved even if you restart or rebuild the container.
If you have an existing database that you want to migrate to the persistent volume, you can use the provided script:
./migrate-db.shTo make the application accessible over Tailscale:
tailscale funnel 3000