Skip to main content

Crate app_ui

Crate app_ui 

Source
Expand description

app-ui β€” the Leptos CSR app served by Trunk into the Tauri webview.

Composes the workshopped components from ui_storybook::components into the recorder’s shell surface:

As of M-PLAY.2, the shell drives the screen-app player via Tauri IPC: the file-drop event opens the file, the transport buttons toggle play/pause, and a pushed player-status event keeps the UI in sync with the Rust-side player. See player_ipc for the JS-bridge extern declarations and the player_ipc::PlayerStatus mirror.

ModulesΒ§

app
Top-level App component for the recorder shell.
app_shell_mount πŸ”’
AppShellRoot β€” root component for the tray-launched main window (M-TRAY.3 / AUT-252) and the in-app NavigationRail surface routing (M-TRAY.4 / AUT-253).
bubble
<BubbleRoot /> β€” the Leptos tree mounted into the webcam-bubble Tauri window (M-BUBBLE.0 / AUT-273 + the M-QUAL.4 overlay redesign).
bubble_ipc
JS bridge for the webcam-bubble toggle command (M-BUBBLE.0 / AUT-273).
camera_ipc
JS-bridge bindings for the M-CAM.2 Tauri camera commands (M-CAM.4 / AUT-258 + M-REC.1 / AUT-260).
camera_picker
<CameraPicker /> β€” live-data dropdown selector for the Recorder surface (M-CAM.4 / AUT-258 + M-REC.1 / AUT-260).
camera_preview
<CameraPreview /> β€” Leptos canvas painted by raw BGRA frames pulled from the CameraFrameSlot (M-PIX.8 of M-RECORD-EXPORT-REAL-PIXELS).
clip_inspector
Clip inspector β€” per-segment controls (ED.14: speed) (M-EDIT).
cursor_inspector
Cursor inspector β€” cursor styling (ED.19 / M-EDIT).
editor_edits
Timeline editing β€” split + undo/redo (ED.11 / M-EDIT).
editor_ipc
Leptos-side bindings for the editor IPC (ED.5 / M-EDIT).
editor_preview_canvas
Live editor preview canvas wiring (AUT-510 / ED.6b).
editor_surface
EditorSurface β€” the live editor surface (ED.5/ED.7 / M-EDIT).
export_bar
Export bar β€” start / progress / cancel for the edited export (ED.22).
filmstrip
Video track filmstrip + clip selection (ED.9 / M-EDIT).
framing_inspector
Framing inspector β€” output aspect ratio + crop (ED.15 / M-EDIT).
mic_ipc
JS-bridge bindings for the M-MIC.1 / AUT-278 microphone commands (M-MIC.2 / AUT-279).
mic_picker
<MicPicker /> β€” live-data dropdown selector for microphones in the Recorder surface (M-MIC.2 / AUT-279).
player_ipc
Leptos-side bindings for the screen-app player IPC.
recorder_page
<RecorderPage /> β€” the live recorder surface that composes the ui-storybook presentational components into the design shown in the Screen-Studio-style mock (workspace badge, capture-mode tabs, display source card, camera / mic / system-audio rows with inline expandable pickers, on-screen options summary, and the recording-controls footer).
recording_ipc
JS-bridge bindings for the M-RECORD.1 coordinated-recording commands (start / stop / status) + the recording-status event.
recordings_library
Recordings library β€” open a finished recording in the editor (ED.24).
routing
Pure-Rust URL-routing helpers (M-TRAY.4 / AUT-253, M-BUBBLE.0 / AUT-273).
screen_ipc
JS-bridge bindings for the M-SCK.1 / .2 / .4 screen-capture commands (AUT-268 / AUT-269 / AUT-271).
screen_picker
<ScreenPicker /> β€” screen / window source picker for the Recorder surface (M-SCK.4 / AUT-271 + M-SCK.0.1 / AUT-291).
screen_preview_canvas
Live screen-capture preview canvas (AUT-269).
settings_ipc
JS-bridge bindings for the M-SAVE.0 recorder settings β€” the persisted output directory + the native folder picker.
style_inspector
Style inspector β€” background framing (ED.18 / M-EDIT).
system_audio_ipc
JS-bridge bindings for the M-AUDIO-SYS.2 / AUT-282 system-audio commands.
system_audio_picker
<SystemAudioPicker /> β€” live-data picker for the speaker / per-app audio capture in the Recorder surface (M-AUDIO-SYS.2 / AUT-279 / AUT-282).
timeline_view
Timeline coordinate system + ruler (ED.8 / M-EDIT).
waveform
Audio waveform lane (ED.10 / M-EDIT).
zoom_dopesheet
Zoom dopesheet β€” keyframes + Easy Ease for the selected zoom (ED.13).
zoom_lane
Zoom lane β€” author cinematic punch-ins on the timeline (ED.12 / M-EDIT).

FunctionsΒ§

mount_default πŸ”’
mount_point_from_query
Pull the live page URL’s query string, parse it via routing::parse_mount_point. Falls back to routing::MountPoint::DropZone outside a browser so the calling site’s match arm has a sensible default.
parse_surface_from_query
Parse the live page URL’s ?surface= query β€” thin wrapper around routing::parse_surface that pulls the string from window.location.search(). Returns None outside a browser (so the calling site falls through to the default mount path).
run
Trunk entry point β€” installs panic hooks and mounts the app to <body>.
surface_to_query
Convert an AppSection to its URL slug β€” thin wrapper around routing::surface_slug.