karpathy/notpygamejs — explained in plain English
Analysis updated 2026-07-17 · repo last pushed 2023-10-17
Build a simple 2D browser game like a breakout paddle game by writing update, draw, and input functions.
Prototype an interactive art project or educational demo without wrestling with raw Canvas and timing APIs.
Learn how a game loop and input handling work under the hood using a minimal teaching-oriented library.
| karpathy/notpygamejs | tj/co-parallel | peng-zhihui/cheese-uestc | |
|---|---|---|---|
| Stars | 109 | 109 | 110 |
| Language | JavaScript | JavaScript | JavaScript |
| Last pushed | 2023-10-17 | 2016-12-27 | 2017-01-13 |
| Maintenance | Dormant | Dormant | Dormant |
| Setup difficulty | easy | easy | moderate |
| Complexity | 2/5 | 2/5 | 2/5 |
| Audience | developer | developer | general |
Figures from each repo's GitHub metadata at analysis time.
Intentionally minimal, no physics engine, sprite system, or asset management, you draw directly to the canvas.
A minimal JavaScript library by Andrej Karpathy for building simple 2D browser games on Canvas, handling the game loop, timing, and input so you just write init/update/draw functions.
Mainly JavaScript. The stack also includes JavaScript, HTML Canvas.
Dormant — no commits in 2+ years (last push 2023-10-17).
Setup difficulty is rated easy, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.