Examples
One engine, many surfaces.
Built and demonstrated
Two end-to-end examples exist today. Both run on the same WASM binding — the engine is compiled to WebAssembly once; these are two independent applications that embed it. The engine is married to neither React nor any particular framework.
React temporal UX
A React application that embeds the tflo WASM engine to evaluate temporal rules client-side. Demonstrates cross-tier parity: the same rule runs in the browser (via WASM) and on the server (native Rust), producing identical output over the same event log. Three live acts: parity verification, hot rule push, and offline reconciliation.
Read the walkthrough →Browser analytics (framework-agnostic)
A framework-agnostic browser analytics library built on the same WASM binding. No React, no framework coupling — plain TypeScript over the WASM module. Demonstrates that the binding is a substrate, not a React integration.
Read the browser analytics guide →Embed today
The patterns below reflect real embedding shapes you can use by pulling the crates. Deeper guides and runnable examples are coming; these are honest stubs, not aspirational marketing copy.
Edge / IoT gateway
A Rust binary that links tflo-core and tflo-ops directly.
No JVM, no container overhead. Compiles to ARM and musl targets; heap footprint
is proportional to window state and key cardinality, not to a runtime.
Suitable for <1 GB RAM embedded Linux deployments.
Crates: tflo-core, tflo-ops
— embed today; deeper guide coming.
Embedded in a Rust service
Call Iterator::tflo(…) inside a tonic gRPC handler, axum route,
or actix actor. The engine is synchronous by default; add the async
feature for Stream::tflo with Tokio and backpressure. No separate
process, no serialization boundary.
Crates: tflo-core, tflo-ops
— embed today; deeper guide coming.
Batch / backfill / backtesting
Pass a Vec through Iterator::tflo to run the same rule
over historical data. The engine is deterministic given the event log — the
output for a replay is identical to what would have been produced live.
tflo-arrow adds columnar I/O for larger datasets.
Crates: tflo-core, tflo-ops,
tflo-arrow
— embed today; deeper guide coming.
Domain libraries
tflo-fintech demonstrates the pattern: a domain-specific crate that wraps the engine with finance-specific operators and golden-tested indicator implementations. The engine itself is domain-neutral; domain libraries add vocabulary without forking the core.
Example: tflo-fintech
— embed today; deeper guide coming.
See also: Bindings — the three layers (core engine, binding, application) and what ships vs. what is on the roadmap.