Supporting

SnapFire Compiler

Compile TypeScript for the browser. No Node.js required. It reads your sources, emits browser-native ES modules and stops if an import cannot be resolved. The binary is snapfirec.

📦

No node_modules

Third-party libraries live in a committed vendor tree and resolve through a native browser import map. Nothing is fetched at build time that was not checked in.

🗺️

The import map is the check

Pass --import-map and a bare import with no entry fails the build instead of failing in a browser tab.

⚙️

One binary

Native and SWC-backed. There is no toolchain to install beside it and no configuration file it needs to start.

A build

What FSR runs for you, and what you run on its own.

sh
snapfirec --source-map --minify compact \
  --public-path /static/js/app \
  --import-map ../public/js/importmap.json
FlagWhat it does
--source-mapWrites a .map beside every output.
--minify compactMinifies without mangling what a stack trace needs.
--public-path <prefix>The URL prefix the browser fetches the outputs under.
--import-map <file>Fails the build when a bare import has no entry.

Where it sits

FSR uses the compiler to bundle the browser half of an application, but the dependency runs one way: the compiler knows nothing about FSR, plan files or routes. It is a TypeScript and CSS compiler you can point at any project, including one served by snapfire.

Built with SnapFire FSR. Pure Rust runtime, zero Node.js on the server.