Skip to content
excsnPublic

About

Write apps in TypeScript, run it in Rust. File routes, loaders, actions, typed OpenAPI and gRPC clients, sessions, streaming and island hydration, with no Node in the build or on the request path. Plus snapfirec, TypeScript to browser ESM and the original Tera and Actix live-reload library.

Topics

Resources

Stars

7 stars

Watchers

0 watching

Forks

Repository files navigation

SnapFire Project

License: MPL 2.0

Write the application in TypeScript. Run it in Rust.

Visit SnapFire Project Website for demos, documentation, tutorials and guides

SnapFire started as SnapFire Web, a Tera templating library with live reload. It is now a stack built around SnapFire FSR, a runtime where routes, data loading, actions, service clients, sessions, identity, caching, streaming and client navigation are primitives rather than features owned by a UI framework. Beside it sit a compiler that turns TypeScript into browser-native ES modules with no Node and a typechecker that fetches and pins its own tsc. SnapFire Web is still here and is now one renderer among several.

Nothing in the chain needs Node, at build time or on the request path. There is no node_modules.

The pieces

Each one installs and is used from its own README.

What you want Where it is
A full-stack application: file routes, loaders and actions in TypeScript, rendered by Rust SnapFire FSR, the fsr executable
TypeScript and CSS to browser ES modules SnapFire Compiler, the snapfirec executable
Types checked against a pinned TypeScript, fetched and verified SnapFire Typecheck, the snapfiretc executable
Tera templates with live reload inside an Actix application SnapFire Web, the snapfire crate
Tailwind CSS v4 built in Rust snapfire_tailwind
An image's display size and EXIF orientation, a font's family, weight and fallback metrics snapfire_media
Sitemaps and sitemap indexes with every protocol limit enforced as a constructor error snapfire_sitemap
Seven applications demonstrating FSR The SnapFire FSR examples
One question per chapter, with a lab on the running example The SnapFire FSR guide

Layout

Directory What it holds
fsr/ SnapFire FSR: the runtime crates, the client library, the CLI, the guide and the examples
compiler/ SnapFire Compiler, snapfirec, with its own example
typecheck/ SnapFire Typecheck, snapfiretc
web/ SnapFire Web, the snapfire crate: Tera and Actix, with its own example
tailwind/ snapfire_tailwind, Tailwind CSS v4 in Rust
media/ snapfire_media, image and font metadata
sitemap/ snapfire_sitemap, sitemap writing

Every crate carries a README.md to skim, a README.USAGE.md to work from and an API_REFERENCE.md for the surface.

License

Mozilla Public License 2.0. See LICENSE.

Excerion Sun LLC

About

Write apps in TypeScript, run it in Rust. File routes, loaders, actions, typed OpenAPI and gRPC clients, sessions, streaming and island hydration, with no Node in the build or on the request path. Plus snapfirec, TypeScript to browser ESM and the original Tera and Actix live-reload library.

Topics

Resources

Stars

7 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages