Broiler.JavaScript.Runtime
0.1.0-preview.8
dotnet add package Broiler.JavaScript.Runtime --version 0.1.0-preview.8
NuGet\Install-Package Broiler.JavaScript.Runtime -Version 0.1.0-preview.8
<PackageReference Include="Broiler.JavaScript.Runtime" Version="0.1.0-preview.8" />
<PackageVersion Include="Broiler.JavaScript.Runtime" Version="0.1.0-preview.8" />
<PackageReference Include="Broiler.JavaScript.Runtime" />
paket add Broiler.JavaScript.Runtime --version 0.1.0-preview.8
#r "nuget: Broiler.JavaScript.Runtime, 0.1.0-preview.8"
#:package Broiler.JavaScript.Runtime@0.1.0-preview.8
#addin nuget:?package=Broiler.JavaScript.Runtime&version=0.1.0-preview.8&prerelease
#tool nuget:?package=Broiler.JavaScript.Runtime&version=0.1.0-preview.8&prerelease
Broiler.JS
Broiler.JS is a modular JavaScript engine for .NET, part of the Broiler project (Browser Infrastructure in Intermediate Language with Enhanced Reliability).
Broiler.JS compiles JavaScript to .NET IL at runtime, providing an embeddable ECMAScript engine with strong interop to C# code. It is not a security sandbox: JavaScript host capabilities and CLR integration must be restricted by the embedding application.
First-preview status: The public API and behavior are unstable, breaking changes may occur without notice, and untrusted scripts must not be executed on the assumption that the engine provides isolation. This component is not human-approved for preview use while HUMAN_REVIEW.md remains
PENDING.
Origins
Broiler.JS began as a fork of Yantra JS (Apache 2.0), an open-source JavaScript engine for .NET. The original Yantra JS architecture, parser, and runtime design provided the foundation; Broiler.JS has since diverged substantially to pursue the goal of near-complete ECMAScript conformance.
Broiler.JS is maintained independently. It is not an official Yantra JS version, continuation, or release, and the Yantra JS authors have not reviewed or endorsed it. The upstream name is used only for accurate provenance. See THIRD_PARTY_NOTICES.md.
How this project is built
The implementation work in Broiler.JS is done primarily by Claude Opus (Anthropic's coding AI). The project reached a point where that was viable only after a substantial manual refactor — restructuring the inherited Yantra JS codebase into the modular, IL-centric architecture that a coding AI can navigate and extend reliably.
From that point on, the split is:
- Coding AI (Claude Opus) — new features, bug fixes, spec-compliance work, and code-level implementation.
- Maintainer (manual) — directing the work, reviewing changes, running tests, driving refactors, managing AI costs, and keeping the overall project on track.
This means the bottleneck on progress is not coding hours but maintenance bandwidth and the cost of AI inference. If you want to see faster progress, the most direct way to help is a donation (see below).
Human review
AI-generated or AI-modified implementation must receive source-level review from a real developer before a release is described as reviewed. The per-release record must identify the exact commit, evidence, findings, scope, and human decision in HUMAN_REVIEW.md. Test262 results are valuable conformance evidence, but they do not by themselves establish security or safety.
Compliance
Broiler.JS is validated against the test262 conformance suite — the official ECMAScript test suite maintained by TC39. The engine aims to pass nearly the full suite, and conformance is tracked continuously in CI.
| Resource | Description |
|---|---|
| Compliance dashboard | Current pass/fail status by feature area |
| Known gaps | Features not yet implemented |
| Roadmap | Every open plan for the engine: the component roadmap, the performance campaign, the acceptance gate, and the optimization catalogue |
| Compliance process | How test262 runs are managed in CI |
Documentation
| Resource | Description |
|---|---|
| Public API reference | Supported packages, entry points, module boundaries |
| Architecture overview | Engine layers and satellite assemblies |
| Assembly boundaries | Dependency direction and supported cross-assembly seams |
| Performance measurement | Repeatable baselines, bootstrap profiles, and execution-mode boundaries — the gate every performance claim passes |
| Performance and benchmark roadmap | JavaScript execution speed: phases 0–5, the Octane and probe metrics they are judged on, and the evidence each still owes |
| JavaScript VM profile roadmap | JavaScript semantics, lowering, verification, execution, and conformance on Broiler.VM; the generic VM host and WebAssembly built-in are owned by Broiler.VM/docs/roadmap.md in the aggregate repository |
| Contributing built-ins | How to implement new built-in objects |
| Publishing | How preview packages are versioned and published to nuget.org |
| LogParser usage | Shard log summarizer and JSON export |
| Contributing | CI pipeline, test262 workflow, running tests locally |
Building and testing
Restore and run the .NET test projects:
dotnet test Broiler.JS.slnx
Run test262 for a single assembly (e.g. the parser):
python scripts/compliance/list_test262_assemblies.py \
--manifest scripts/compliance/test262-assemblies.json \
--paths-for parser --output /tmp/parser-paths.txt
python scripts/compliance/run_test262.py \
--suite-root <path-to-test262> \
--broiler-dll <path-to-BroilerJS.dll> \
--path-file /tmp/parser-paths.txt \
--shard-count 1 --shard-index 0
See CONTRIBUTING.md for the full incremental CI workflow.
Support the project
Broiler.JS is free and open-source software. As described above, the coding is handled by Claude Opus, but the surrounding work — testing, directing, refactoring, and AI inference costs — falls on the maintainer personally.
A donation is genuinely appreciated. It directly offsets AI API costs and frees up the time needed to keep test262 passing and the project moving forward.
Sponsor or donate: github.com/sponsors/MaiRat
License
Broiler.JS is licensed under the Apache License 2.0.
This project is derived in part from Yantra JS, which is also licensed under the Apache License 2.0. Upstream attribution and independence are documented in THIRD_PARTY_NOTICES.md. The license provides the software on an “AS IS” basis, without warranties or conditions.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Broiler.JavaScript.Ast (>= 0.1.0-preview.8)
- Broiler.JavaScript.Expressions (>= 0.1.0-preview.8)
- Broiler.JavaScript.Storage (>= 0.1.0-preview.8)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Broiler.JavaScript.Runtime:
| Package | Downloads |
|---|---|
|
Broiler.JavaScript.Parser
Broiler.JS JavaScript source parsing: FastParser and the parser primitives that produce AST structures. |
|
|
Broiler.JavaScript.Engine
Broiler.JS execution host: JSEngine, JSContext, JavaScriptBootstrap, context builders and profiles, and feature flags. Reference this package to embed the engine. |
|
|
Broiler.JavaScript.LinqExpressions
Broiler.JS expression lowering helpers: the builders that connect runtime values to the expression compiler. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0-preview.8 | 0 | 10/11/2026 |
| 0.1.0-preview.7 | 204 | 10/9/2026 |
| 0.1.0-preview.6 | 795 | 10/6/2026 |
| 0.1.0-preview.5 | 919 | 9/24/2026 |
| 0.1.0-preview.4 | 268 | 9/23/2026 |
| 0.1.0-preview.3 | 207 | 9/23/2026 |
| 0.1.0-preview.2 | 76 | 9/23/2026 |