How bylka882-png/yanlan works
YanLan is a Windows game launcher for managing separate Yandere Simulator builds, browsing and installing YanMod mods, editing mod configs, and diagnosing crashes. The main workflow runs from the launcher UI through background jobs to build/mod installation and persistent library state; other UI sections expose configuration, launch, and crash-analysis workflows. The graph includes documented catalog, proxy, theme, localization, and journal capabilities. Some subsystem links rely on the SOURCE INDEX or README because their implementation was not excerpted; uncertain links are omitted.
Main entry points: app.rs Application shell · jobs.rs Mod operations · builds_view.rs Builds view · diagnose.rs Crash analyzer
Components 26
Launcher UI
- Application shell
src/app.rs - Builds view
src/ui/builds_view.rs - Catalog view
src/ui/catalog.rs - Installed mods view
src/ui/installed.rs - Settings view
src/ui/settings.rs - Crashes view
src/ui/crashes.rs - Shared widgets
src/ui/widgets.rs
Build Management
- Build catalog
src/builds.rs - Build installs
src/library.rs - Game launcher
src/runner.rs
Mod Management
- YanMod catalog
src/mods.rs - Mod operations
src/jobs.rs - Archive installer
src/installer.rs - Config editor
src/cfg_edit.rs
Runtime Services
- Crash analyzer
src/diagnose.rs - Network and proxy
src/net.rs - Job progress
src/progress.rs - Preferences
src/config.rs - Localization
src/i18n.rs - Themes
src/theme.rs
Persistent State
- Activity journal
src/journal.rs - Installed mod library
src/library.rs
Other components
- Launcher user
- YanMod repository
- Game archives
- Game process
Connections 41
- Launcher user → Application shell: uses
README.md - Application shell → Builds view: presents
src/ui/builds_view.rs - Application shell → Catalog view: presents
src/ui/catalog.rs - Application shell → Installed mods view: presents
src/ui/installed.rs - Application shell → Settings view: presents
src/ui/settings.rs - Application shell → Crashes view: presents
src/ui/crashes.rs - Builds view → Application shell: reads state
src/ui/builds_view.rs - Catalog view → Application shell: reads state
src/ui/catalog.rs - Installed mods view → Application shell: reads state
src/ui/installed.rs - Settings view → Application shell: updates settings
src/ui/settings.rs - Crashes view → Crash analyzer: requests analysis
src/ui/crashes.rs - Builds view → Game launcher: launches game
src/ui/builds_view.rs - Builds view → Build catalog: requests builds
src/ui/builds_view.rs - Catalog view → YanMod catalog: browses mods
src/ui/catalog.rs - Catalog view → Mod operations: requests install
src/ui/catalog.rs - Installed mods view → Installed mod library: reads installed
src/ui/installed.rs - Installed mods view → Mod operations: requests changes
src/ui/installed.rs - Application shell → Mod operations: dispatches jobs
src/app.rs - Application shell → Crash analyzer: starts analysis
src/app.rs - Mod operations → YanMod catalog: uses metadata
src/jobs.rs - Mod operations → Archive installer: installs archives
src/jobs.rs - Mod operations → Installed mod library: updates library
src/jobs.rs - Mod operations → Network and proxy: downloads files
src/jobs.rs - Mod operations → Job progress: reports progress
src/jobs.rs - Builds view → Build installs: manages installs
src/ui/builds_view.rs - Builds view → Installed mod library: counts mods
src/ui/builds_view.rs - Build catalog → Game archives: fetches releases
README.md - YanMod catalog → YanMod repository: fetches manifests
src/mods.rs - YanMod catalog → Network and proxy: uses network
src/mods.rs - Settings view → Preferences: edits preferences
src/ui/settings.rs - Preferences → Network and proxy: configures proxy
README.md - Application shell → Activity journal: records activity
README.md - Game launcher → Game process: starts process
README.md - Game launcher → Crash analyzer: reports exit
README.md - Crash analyzer → Installed mod library: checks installed mods
src/diagnose.rs - Crash analyzer → Activity journal: checks run history
src/diagnose.rs - Crashes view → Job progress: shows progress
src/ui/crashes.rs - Application shell → Preferences: loads settings
src/app.rs - Application shell → Themes: applies theme
src/app.rs - Application shell → Localization: sets language
src/app.rs - Shared widgets → Themes: uses palette
src/ui/widgets.rs