About
About Nomicon
Interactive explainers for game programmers. Every lesson has something running in the page that you can change, because most of this material is easier to understand by poking it than by reading about it.
Why it exists
It started as notes on flecs, the entity component system, and on the engine fundamentals underneath it. It grew into game AI, physics, rendering and networking, and then into labs where you can take each idea further. If you're new to all of it, start here.
How it's made
Nomicon is written with AI. The lessons, widgets, simulations and labs were drafted by Claude, Anthropic's AI model, working to the author's direction: the author chose what to cover and how deep to go, asked for changes until each lesson made sense, and decided what stays.
Because of that, the site leans hard on checks rather than trust:
- Every number a lesson or lab quotes from a simulation is recomputed by a test suite on every build. If a simulation changes, the build fails and prints the sentence that's now wrong. There are around 1,500 of these checks.
- Facts about real engines, APIs, papers and games were checked against primary sources (documentation, papers, talks) in separate review passes, each done by a fresh AI reviewer that hadn't written the lesson, and corrected where they were wrong.
- The simulations are deterministic, so the same settings always show the same thing, in every browser.
That makes mistakes less likely, not impossible. Claims about how a particular engine behaves can go out of date as it changes; where the site and an engine's own documentation disagree, trust the documentation.
Found a mistake?
Corrections are welcome. A way to report them is coming soon.
Supporting it
The site is free, with no ads, accounts or tracking. Building and checking it costs money (hosting, AI usage and the review passes). If it helped you and you'd like to chip in: Ko-fi.
Privacy
The site is static: no server code, no accounts, no analytics and no third-party requests (even the fonts are served from here). Your theme and some lab settings are kept in your browser's local storage, and never leave it.
Built on
- flecs by Sander Mertens (MIT), compiled to WebAssembly.
- Recast & Detour (zlib), via recast-navigation-js (MIT).
- Jolt Physics by Jorrit Rouwe (MIT), via JoltPhysics.js.
- Box3D by Erin Catto (MIT), and Bullet by Erwin Coumans and contributors (zlib), compiled to WebAssembly.
- Tiny Dungeon sprites by Kenney (CC0).
- Astro (MIT), and the Roboto, Roboto Mono and Cinzel fonts (Apache 2.0 and SIL Open Font Licence) via Fontsource.
Nomicon's own code and text are under the MIT licence. Not affiliated with flecs, Anthropic or any engine it covers.