Skip to main content

Crate brep_app

Crate brep_app 

Source
Expand description

brep-app — engine-native UI spike (an eframe host for the brep-render engine).

The same app::BrepApp runs on native (main.rsrun_native) and on the web (start below → eframe::WebRunner), sharing one wgpu frame with egui. Additive spike: it does NOT touch the previous app or the render wasm build.

Modules§

app
BrepApp — the THIN shell of the engine-native UI.
fonts
Font setup — a MONOSPACE UI font with broad symbol coverage.
form
The generic, schema-driven egui form engine — ONE per-field renderer for BOTH the display-settings dialog AND the schema-driven feature dialogs (the user’s principle: the structure of a thing drives the UI; you don’t rewrite UI code per field, and you don’t write two dialog engines).
palette
A generic, reusable searchable command-palette modal — engine-agnostic.
panels
The left-control-panel modules — one file per panel, each following ONE pattern so parallel agents can add a new panel with minimal conflict:
store
The storage / filesystem seam — the ONE platform exception in the engine-native UI (see engine-native-ui-design.md). Everything else in the UI is platform-agnostic egui; only persistence differs by platform, so it goes through this trait with two #[cfg]-gated impls:
viewport
The 3D viewport — everything that draws + drives the central brep-render scene, split out of the thin app shell.