How amnweb/yasb-gui works
YASB GUI is a Windows desktop configuration editor for YASB Reborn. Users navigate to bar, widget, global, style, environment, or app settings, edit values visually or in Monaco, then validate and save the YAML/CSS configuration; widget changes can be applied to reload YASB. README also documents ZIP backup, schema updates, preferences, and app updates. The tree and excerpts support the entry point, configuration manager, page responsibilities, and Monaco assets; wiring among unsampled pages and services is not inferred.
Main entry points: application.py Window and navigation · config_manager.py Config manager · controls.py UI control factory · app_settings.py Application settings page
Components 20
Application shell
- App entry
app/main.py - Window and navigation
app/core/application.py
Configuration editing
- Bars page
app/pages/bars.py - Widgets page
app/pages/widgets.py - Global settings page
app/pages/global_settings.py - Styles page
app/pages/styles.py - Environment variables page
app/pages/env_variables.py - Application settings page
app/pages/app_settings.py
Configuration services
- Config manager
app/core/config_manager.py - YASB config files
- Preferences
app/core/preferences.py - Widget schema
app/core/schema_fetcher.py - Update service
app/core/updater.py
Editor experience
- Code editor integration
app/core/code_editor.py - Monaco editor assets
app/core/editor/monaco/vs/editor/editor.main.js - Editor context menu
app/core/editor/editor_context_menu.py - UI control factory
app/ui/controls.py - Localization
app/core/localization.py
Other components
- User
- YASB status bar
Connections 34
- User → App entry: launches
- App entry → Window and navigation: starts
- User → Window and navigation: navigates
- Window and navigation → Bars page: routes
- Window and navigation → Widgets page: routes
- Window and navigation → Global settings page: routes
- Window and navigation → Styles page: routes
- Window and navigation → Environment variables page: routes
- Window and navigation → Application settings page: routes
- Bars page → Config manager: edits bars
- Widgets page → Config manager: edits widgets
- Global settings page → Config manager: edits settings
- Styles page → Config manager: edits styles
- Environment variables page → Config manager: edits variables
- Config manager → YASB config files: reads and writes
- Window and navigation → Config manager: saves changes
- Window and navigation → YASB status bar: applies config
- Application settings page → Preferences: updates preferences
- Window and navigation → Preferences: reads preferences
- Application settings page → Widget schema: requests schema update
- Application settings page → Update service: checks app updates
- Widgets page → Code editor integration: opens options editor
- Styles page → Code editor integration: opens CSS editor
- Window and navigation → Code editor integration: hosts editor
- Code editor integration → Monaco editor assets: loads editor
- Editor context menu → Monaco editor assets: executes editor actions
- Code editor integration → Editor context menu: attaches menu
- Bars page → UI control factory: creates controls
- Widgets page → UI control factory: creates controls
- Global settings page → UI control factory: creates controls
- Styles page → UI control factory: creates controls
- Environment variables page → UI control factory: creates controls
- Application settings page → UI control factory: creates controls
- Window and navigation → Localization: translates labels