⚡ Live Web Demo
every facett component, every palette — running in your browser (egui → WebAssembly)
facett
The egui component framework for the constellation's UIs — reusable, source-agnostic data-viewing components (each a facet of your data): hand one Arrow / a graph / geo and it draws it fast. Build your own korp on it — korp and nornir both do.
Quickstart — run the showcase
cargo install facett-demo --locked # from crates.io
facett-demo # launch the showcase eframe app
Every facett component with realistic data, switchable across all palettes (needs a display — or try the browser demo linked above). cargo install facett-demo also ships an osm3d_demo bin for the 3D/OSM view.
The Falsett tab includes synthetic hub, stage and layered-DAG fixtures. Pipeline,
query-plan and Brokkr DAG components share Falsett's persistent GPU/CPU rendering,
with their own data models, overlays and navigation. Embedding hosts enable the
component's wgpu feature and install facett_flow::gpu::install_renderer on
their render state; see the pipeline guide.
Mashup — one Facet kernel, every kind of data view
Every component implements a single facett_core::Facet trait (title / ui /
state_json) and drops into a FacetDeck — so one source-agnostic kernel draws
them all, and a test can drive any of them headless:
- Source-agnostic — facett renders what it's handed; no connection or query logic (that stays in the data layer, e.g. knut).
- Flagship
facett-grid— Arrow-backed, virtualized rows+cols at 60 fps over 1M+ rows, frozen header + pinned cols + Σ footer, Excel-style selection→TSV. - Geo · 3D · graphs — a Garmin-style car-nav basemap (road-class hierarchy · casing · one-way chevrons · route ribbon · priority labels) over GeoParquet (
facett-osmat 6.3M pts/s), a z-buffered lit 3D city (CPU or wgpu), 3D graphs + a glTF model viewer, circular + force-directed layouts. - Falsett flow graphs — animated directed curves through a translucent hub, explicit group overview and resident GPU geometry; component and host integration.
- wgpu fast path — a GPU viewport-cull + indirect-draw kernel lands behind the same
draw()/ui()call. - Themeable & headless-tested —
Theme::sci_fi(), self-tested against the MEGA matrix + perf harness.
Read the real docs
- 📖 The manual —
docs/manual.pdf— every component chapter (kernel, grid, map, graph, docview, app framework): design + guide, the crisp core. - 🔰 The idiot guide —
docs/idiot_guide.pdf— zero-knowledge, cold-shell-to-green walkthroughs. - 🧠 Reasoning & record —
docs/unsorted.pdf— the why, the rejected alternatives, and the history. - 📄 Full overview —
.nornir/README-full.md— the full pitch, the complete crate catalog, and usage.
License
MIT — see LICENSE and NOTICE. Versions published up to and including 0.2.0 (crates.io 0.1.x/0.2.0 and PyPI facett/facett-demo 0.2.0) were released under MIT OR Apache-2.0 and stay so. From 0.2.1 facett is MIT only.
Credits: see CREDITS.md.