FireCubeStudios / Rebound

Windows 11 done right.
https://ivirius.vercel.app
MIT License
387 stars 9 forks source link

Spec: use MVVM #51

Open Lamparter opened 2 weeks ago

Lamparter commented 2 weeks ago

📄 Description

Currently, Rebound does not implement MVVM namespace structure. Code should be moved from code-behind into reusable ViewModels/Models, like so:

âš¡ API Changes

API Description
VIEWS Contains views for pages with little code-behind except button handlers
MODELS Contains reusable models for logic
VIEWMODELS Contains ViewModels for logic attached to pages

👥 Usage scenarios

For example, the code-behind for the installer (InstallationWindow.xaml.cs) would now be a separate model.

🔙 Backward Compatibility

Shouldn't affect anything.

🤔 Difficulty

Medium

Lamparter commented 2 weeks ago

I can't use MVVM app model as in [ObservableProperty] and bindings and etcetera but I can copy the classic MVVM project style, that looks like this: