Open
Conversation
Signed-off-by: Serhii A. Hrytsenko <gritcsenko@users.noreply.github.com>
Open
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.OpenSSF Scorecard
Scanned Files
|
Contributor
There was a problem hiding this comment.
Pull Request Overview
Adds Avalonia-based user interfaces for both web (WASM) and desktop, introducing view-model/view mapping and project configurations.
- Introduces
ViewLocator,ViewForAttribute, and related UI infrastructure in theHomeInventory.UIproject - Adds a WebAssembly UI project with splash screen, startup scripts, and launch settings
- Adds a desktop UI project with Windows manifest and Avalonia startup code
- Updates shared
Directory.Packages.propsto pin Avalonia package versions
Reviewed Changes
Copilot reviewed 29 out of 30 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/HomeInventory/HomeInventory.UI/ViewLocator.cs | Implements ViewLocator for view-model to view resolution |
| src/HomeInventory/HomeInventory.UI/ViewForAttribute.cs | Defines attribute to associate views with view-model types |
| src/HomeInventory/HomeInventory.UI/IViewModelTypeProvider.cs | Interface for attribute-based view-model type providers |
| src/HomeInventory/HomeInventory.UI/HomeInventory.UI.csproj | Sets up Avalonia UI project and package references |
| src/HomeInventory/HomeInventory.UI/AppViewLocator.cs | Registers MainViewModel to MainView mapping |
| src/HomeInventory/HomeInventory.UI/App.axaml.cs | Configures Avalonia application initialization |
| src/HomeInventory/HomeInventory.UI/App.axaml | Declares data templates and styles in XAML |
| src/HomeInventory/HomeInventory.UI.Web/wwwroot/main.js | WebAssembly launch script |
| src/HomeInventory/HomeInventory.UI.Web/wwwroot/index.html | HTML splash page and host element |
| src/HomeInventory/HomeInventory.UI.Web/wwwroot/css/app.css | CSS for the splash screen with light/dark theme support |
| src/HomeInventory/HomeInventory.UI.Web/runtimeconfig.template.json | WASM host configuration |
| src/HomeInventory/HomeInventory.UI.Web/Properties/launchSettings.json | ASP.NET Core launch profile for browser |
| src/HomeInventory/HomeInventory.UI.Web/Properties/AssemblyInfo.cs | Marks the assembly as supported on the browser platform |
| src/HomeInventory/HomeInventory.UI.Web/Program.cs | Entry point and app builder for the web project |
| src/HomeInventory/HomeInventory.UI.Web/HomeInventory.UI.Web.csproj | Defines the WASM project settings and references |
| src/HomeInventory/HomeInventory.UI.Desktop/app.manifest | Windows application manifest for desktop transparency |
| src/HomeInventory/HomeInventory.UI.Desktop/Program.cs | Desktop application entry point with Avalonia setup |
| src/HomeInventory/HomeInventory.UI.Desktop/HomeInventory.UI.Desktop.csproj | Desktop project file with dependencies |
| src/HomeInventory/Directory.Packages.props | Pins Avalonia and related package versions |
Files not reviewed (1)
- src/HomeInventory/.idea/.idea.HomeInventory/.idea/avalonia.xml: Language not supported
Comments suppressed due to low confidence (3)
src/HomeInventory/HomeInventory.UI.Web/wwwroot/index.html:5
- [nitpick] The HTML <title> is still the default 'AvaloniaApplication1.Browser'; consider updating it to reflect the actual application name, e.g., 'HomeInventory Browser'.
<title>AvaloniaApplication1.Browser</title>
src/HomeInventory/HomeInventory.UI.Web/wwwroot/main.js:3
- [nitpick] Use consistent JavaScript naming conventions: prefer camelCase for variable names (e.g., 'isBrowser') instead of snake_case.
const is_browser = typeof window != "undefined";
src/HomeInventory/HomeInventory.UI/ViewLocator.cs:42
- Add unit tests for the Register<TViewModel, TView>() method and attribute-based scanning (InternalScan) to verify that ViewLocator correctly maps view-model types to view types under various scenarios.
public bool Register<TViewModel, TView>()
Signed-off-by: Serhii A. Hrytsenko <gritcsenko@users.noreply.github.com>
Signed-off-by: Serhii A. Hrytsenko <gritcsenko@users.noreply.github.com>
Signed-off-by: Serhii A. Hrytsenko <gritcsenko@users.noreply.github.com> # Conflicts: # src/HomeInventory/Directory.Packages.props
Signed-off-by: Serhii A. Hrytsenko <gritcsenko@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes:
Definition of done