kgames

KGames — free keyboard games for kids
git clone https://www.keyboard.games/code/kgames.git
Log | Files | Refs | README | LICENSE

KGames

Free games for kids. No ads. No signup. No backend.

Philosophy

Run locally

Just open index.html in any browser — double-click it or run:

xdg-open index.html        # Linux
open index.html            # macOS

Or use the included dev server (also used by the test suite):

node tests/serve.js
# then open http://localhost:8765

An internet connection is required on first load so the browser can fetch Phaser and Google Fonts from their CDNs. After that, the games themselves work offline.

Testing

Run tests before committing:

npm install       # one-time setup (downloads headless Chromium ~112 MB)
npm test          # unit tests + browser smoke tests

Deploy

rsync -av --delete --exclude=node_modules --exclude='.git' . user@server:/path/to/docroot/

Standard static file hosting. No .htaccess tricks needed.

Add a game

  1. Create games/<slug>/index.html, games/<slug>/lib.js, and games/<slug>/game.js
  2. Add an entry to the GAMES array in js/main.js:
    { slug: '<slug>', title: 'My Game', thumb: 'assets/thumbnails/<slug>.svg', status: 'live' }
    
  3. Add a thumbnail SVG at assets/thumbnails/<slug>.svg
  4. Add unit tests in tests/unit/ and browser test cases in tests/browser/runner.js
  5. Run npm test — must pass before committing

Source

Browse the code at https://www.keyboard.games/code/, or clone it:

git clone https://www.keyboard.games/code/kgames.git

The browser and the clone URL are static files generated by stagit — no forge, no server-side code.

License

GPL-3.0 — see LICENSE


Browse the commit log →