facett-warehousedeck — crate card
Reverse-engineered (from source — verify, don't trust the name)
- One-line pitch: A multi-pane dashboard over a lakehouse warehouse — a wall of N panes, each binding one table (or join) to a view-kind (3D graph / grid / chart / blob), all visible at once.
- Does:
WarehouseDeck(itself a Facet) composes existing facett widgets inside afacett_core::FacetDeck, rendered in Wall mode (wall_ui, severalGraph3Dat once) or Focus mode (tabbedui). Engine-agnostic: takes Arrow frames + view-models (PaneData), never a catalog — a host reads its Iceberg tables and maps rows in.WarehouseRegistrymaps table name →ViewKind(default_nordisk()presets);GraphSpec/ChartSpecdescribe panes;add/add_formount them.state_jsonexposes pane_count, per-kind counts, and each pane's nodes/edges/rows/series. - Key deps:
facett-core(FacetDeck, Facet), and the composed widgets:facett-graph3d,facett-grid,facett-table,facett-stat,facett-plot,facett-syschart;egui,serde_json; arrow stack (arrow-array/schema/select 58). - Shape: lib, single module (~628 lines). Key types:
ViewKind,PaneData,GraphSpec,ChartSpec,WarehouseRegistry,DeckLayout,WarehouseDeck. - Observed role in the workspace: The composition dashboard (the "Warehouse Deck" referenced in demo prep); a host like nornir's viz feeds warehouse tables in. Never reimplements a viewer — pure composition. No iceberg/skade/nornir dep.
Fill in (one line each — only the human knows these)
- Primary consumer(s):
- Why it exists (vs the obvious alternative):
- Hard constraint (airgap / no-C-deps / no-FFI / pure-Rust / etc.):
- Release cadence & independence (rides a parent? own repo someday?):
- Status (production / prototype / experimental / stubbed):
- Must-NOT-change invariant:
- Biggest known gap or TODO:
- Anything a newcomer would get wrong about it: