Skip to content

Repository files navigation

Alisa's Games

Alisa's Games - little browser games built by a 5-year-old with a little help from Claude Code

Play CI Deploy License: MIT Built with Claude Code

Little browser games for the phone, invented by Alisa, age 5, and built with a little help from Claude Code.

▶ Play at games.vreshch.com - no install, no account, no ads.

What is this?

A 5-year-old cannot type code - but she can draw, talk, and play. That turns out to be enough:

  1. Alisa brings the requirements - usually a sketch drawn on paper.
  2. She dictates what the game should do to Claude Code through the microphone.
  3. Claude Code builds it; dad reviews the pull request and merges.
  4. Alisa plays it on the phone and dictates changes. Repeat until it is fun.

Every game on the site went through that loop. The result is a real production website: tested, deployed automatically, and open source - this repository is the whole thing.

The games

Scary Smile Perot Spranki Crystal Rooms
Scary Smile screenshot Perot screenshot Spranki screenshot Crystal Rooms screenshot
Tap the smile through 7 stages until it is a monster. Tap the parrot, say something; it squawks it back pitched up. Beat toy - tap characters, each adds a looping voice. 3D crystal caves - walk, collect letter keys, spell a word out loud.

Privacy: Perot uses the microphone, but no audio ever leaves the device - the clip is played back locally and thrown away. Nothing is recorded, uploaded, or stored.

For developers

Next.js (App Router) + React + TypeScript strict + Tailwind CSS v4. The 3D game uses three.js via react-three-fiber; all sound is WebAudio-synthesized (no audio assets) and the letters are spoken with the Web Speech API. Unit tests are Vitest, the browser smoke is Playwright, both run in CI.

npm install
npm run dev      # http://localhost:3000
npm run verify   # type-check + lint + format check + unit tests + build
npm run test:e2e # Playwright smoke against a prod build

Add a game

Drop a component in src/components/, a page in src/app/<slug>/, and an entry in src/lib/games.ts - the home grid, sitemap, and page metadata pick it up.

Deploy

Push to master. CI builds ghcr.io/vreshch/kids-games, deploys the kids-games Swarm stack behind Traefik, then fails the run unless https://games.vreshch.com/health reports the deployed commit. Never deploy by hand.

Repo secrets: SERVER_HOST, SSH_PRIVATE_KEY (environment production).

License

MIT

About

Browser games built by Alisa (5) with a little help from Claude Code - Next.js + React + three.js

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages