facett-menu — crate card
Reverse-engineered (from source — verify, don't trust the name)
- One-line pitch: A uniform, theme-aware overlay menu system — right-click context menus, a fuzzy command-palette overlay, and dropdown menu bars over one headless-addressable command set.
- Does: One
Commandtype (stableid,label,group,keywords, optionalshortcuthint /iconglyph,enabled) drives all three surfaces:context_menu, a floatingCommandPaletteoverlay (Ctrl-K / Ctrl-Shift-P, fuzzy-matched, invokable by id viaCommandPalette::invokefrom a headless test), and classicmenu_bars. Every surface reads the facettThemefrom the egui context (panel_bg/stroke/accent/glow/text/text_dim), nothing hardcoded — the house rule that nothing is pointer-only. Commandids are owned strings so a runtime source can build them. - Key deps:
facett-core(theme),egui,serde_json. - Shape: lib; tiny (single lib.rs); ships a
menu_demoexample. Has a.nornir/design/facett-menu.md. - Observed role in the workspace: Re-exported by umbrella
facettasfacett::menu; facett-demo uses its command palette (Ctrl+P). Sits above any facet.
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: