multi-workspace-glm5.3
- AppServices composition root: owns config, global workspace registry (app.db), platform path comparer and the LRU workspace connection pool; configuration persisted once at shutdown and services disposed - AppDataPaths centralizes app.json / app.db locations; AppConfig gains a DefaultLanguage constant - MVVM shell: MainWindowViewModel hosts SidebarViewModel and the current content page (welcome / workspace / localized failure state), mapping typed open failures to ResX messages - SidebarViewModel: persistent workspace list with name-asc, name-desc and recently-updated sorting (selection persisted), open-project folder picker and initialize confirmation via Interaction<TInput,TOutput> handlers registered by the view; workspace entries open/remove - Pages (welcome, workspace, message), dialogs (settings, about, confirm) with their view models; settings/about opened from the window - App startup applies configured culture (RTL flow direction) and theme before the main window; forwarded IPC commands activate the window and switch workspace from the launch path - Full UI text sourced from ResX in both en and zh-Hans; no hardcoded strings, theme colors via ThemeDictionaries
YKanBan
My personal used local/offline kanban.
WIP.
Languages
C#
98.2%
Inno Setup
1%
Shell
0.8%