Self-host
The hosted site and the repo are the same code, MIT licensed. Pick one of two ways to run it.
On your server, with Docker
git clone https://github.com/njaiswal78/green-patakha.git cd green-patakha cp .env.example .env # set APP_ORIGIN to the URL you will serve it on docker compose up -d
Open http://your-server:8080 and burst a cracker. The counter lives in a SQLite file on the data volume. Put Caddy or your host's proxy in front for HTTPS, then set APP_ORIGIN to that https:// URL and restart. The compose file only publishes port 8080.
On your own Cloudflare account
git clone https://github.com/njaiswal78/green-patakha.git cd green-patakha npm install npx wrangler login npx wrangler d1 create green-patakha # paste the database_id into wrangler.jsonc npx wrangler d1 migrations apply green-patakha --remote npx wrangler deploy
Set APP_ORIGIN in wrangler.jsonc to your domain, then add it as a Custom Domain on the Worker so DNS is proxied through Cloudflare. Rate limiting uses the Workers rate-limit binding already in the config.
Just the game
Everything you see on /play is static files in public/. Any static host can serve that folder; the counter will show a dash and the crackers work the same.