A collection of mobile-first web games built with React, TypeScript, and Vite.
- Install dependencies:
npm install- For development (with live compilation):
npm run start:devThis starts both the Vite dev server (port 5173) and the Express backend (port 3000).
- For production:
npm run build
npm start- Frontend runs on
http://localhost:5173(Vite dev server with hot reload) - Backend API runs on
http://localhost:3000 - Vite proxies
/apirequests to the backend
- Tap snowflakes before they hit the ground
- Speed increases every 15 flakes
- Game over when 5 flakes reach the ground
- React 18
- TypeScript
- Vite (build tool with HMR)
- Express (backend API)
- File-based storage (scores.json)
See the Deployment Guide for instructions on deploying to:
- Google Cloud Run (Recommended) - Serverless with automatic scaling
- Docker Compose + SWAG - Self-hosted with Let's Encrypt
Important: For Cloud Run deployment, see CONFIGURATION.md for:
- Setting up Cloud Storage for persistent scores
- Configuring games via GitHub Secrets
- Managing game activation via Cloud Run environment variables
The repository includes:
- Optimized Dockerfile for small image size
- GitHub Actions workflow for CI/CD to Cloud Run
- Comprehensive deployment documentation
- Cloud Storage integration for persistent scores