Documentation
Every page below is generated from the markdown in docs/. The compatibility profile is in turn generated from the runtime itself, so the boundary this site publishes is the one the runtime actually enforces.
Specification
What Blitsen is meant to be, and how it is built.
- Product specificationThe problem, the positioning, the principles, and the size budget treated as a product commitment.
- Technical specificationArchitecture, the host phase reversal, threading, the DOM–JS bridge, the frame pipeline and the export path.
- Module resolution in the shipped binaryHow an import is resolved once there is no Node and no bundler left in the picture.
The boundary
Blitsen renders less of the web than a browser does. This is where that line is drawn.
- v1 compatibility profileThe accepted surface, generated from the runtime rather than hand-maintained, with capability tiers and diagnostic severities.
- Layout conformance corpusThe corpus behind requirement P6 — that an application lays out the same way on every platform.
- Blitz rendering gaps — standing listStanding list of what the pinned Blitz revision does not yet render, each reported upstream with a reproduction.
Using it
Getting an application in, and an executable out.
- Migrating to the Phase 2 runtimeNothing changes and your application gets smaller — unless it carries a .node addon.
- Licensing Blitsen and exported applicationsWhat an exported application owes, what it carries, and why closed-source applications are supported.
- ReleasingSix prebuilt runtimes and one JavaScript package, published together.
- 0.1.0 — first cross-platform releaseDraft notes for the first release that publishes prebuilt runtimes.
Decisions and evidence
Milestones are declared on measurements. These are the measurements.
- M0 — feasibility decisionThe measurement that withdrew the original 25–50 MB size target rather than restating it.
- M2 — interactive acceptanceInput, animation and restyle proven together through the window's own hit test.
- M3 — Pong architecture proofThree files, one executable, 0.809 ms median frame cost against a 16.7 ms budget.
- M3b — compatible adoption proofSix applications written by other people, rendered from their own unmodified build output.
- Phase 2 JavaScriptCore acquisitionThe engine decision, and the spike that superseded it in favour of QuickJS-ng.