- TypeScript 98.4%
- HTML 1%
- Dockerfile 0.6%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .forgejo/workflows | ||
| src | ||
| .dockerignore | ||
| .gitignore | ||
| .mise.toml | ||
| AGENTS.md | ||
| bun.lock | ||
| Caddyfile | ||
| compose.yaml | ||
| Dockerfile | ||
| index.html | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
| vite.config.ts | ||
Little Cloud Arcade
A cheerful, client-only game shelf for kids aged 2–7. It includes:
- Puzzle Picnic — an assisted drag-and-drop picture puzzle with eight pieces.
- Bouncy Blocks — a keyboard- and touch-friendly falling-block game with a ghost landing preview, adjustable speed, scoring, and a local best score.
Each game lives under a dedicated URL, and game options are stored in the query string so any setup can be shared or reopened directly:
| URL | What you get |
|---|---|
/ |
Game shelf |
/puzzle |
Puzzle Picnic (default picture) |
/puzzle?scene=2 |
Puzzle Picnic with the third picture |
/blocks |
Bouncy Blocks (turtle speed) |
/blocks?speed=3 |
Bouncy Blocks at rocket speed |
The Caddy config serves index.html for unknown paths, so the History API
routing works on deep links.
The app has no backend. Best scores are stored in the browser's localStorage.
Development
mise install
bun install
bun run dev
Check and build locally with bun run typecheck and bun run build.
Deployment
The Forgejo Actions workflow builds a SHA-tagged image and pushes it to the Forgejo registry. A push to main then updates and deploys the kids stack on Dockhand environment 3 (UM890), using the two-step upsert/deploy flow. The public route is configured by the ingress labels in compose.yaml and is served at https://kids.barbara8.de.