A free and open-source web framework that enables developers to create web apps using C# and HTML, developed by Microsoft.
Given your experience, I'd expect that the learning curve for shifting to cross-platform C# development is shorter than you think. You can entirely stop the practice of building isolated, siloed mobile apps that share nothing but a database. Consider Blazor Hybrid as your framework choice for asset management system.
Microsoft's modern ecosystem organizes frameworks by distinct architectural differences. In a standard Blazor Web project, you build using HTML, CSS, and Razor Components to target web browsers using Server-side execution or WebAssembly. In a pure .NET MAUI project, you target native mobile and desktop operating systems like iOS, Android, Windows, and macOS using XAML and native UI controls, which results in zero code sharing with a web application. Blazor Hybrid acts as the ultimate bridge by allowing you to write your UI once using HTML, CSS, and Razor Components, and then wrapping those web assets inside a native .NET MAUI container called a BlazorWebView. This architecture simultaneously unlocks 100% UI and business logic sharing across mobile, desktop, and web applications.
Blazor Hybrid would be most suitable for your asset management system because it allows you to leverage your existing knowledge of Razor syntax, C#, HTML, and CSS instead of forcing you to learn XAML or foreign mobile ecosystems like Flutter or React Native. You can build your UI components, such as asset cards, management forms, and dashboard elements, inside a single project type known as a Razor Class Library. You then reference this single library from two lightweight entry points: a standard Blazor Web App project for browser users, and a .NET MAUI Blazor Hybrid project that compiles into a native .apk file for Android and a native .ipa file for iOS. Your web and mobile apps will share all of their UI layout, styling, validation logic, and API service classes.
This framework approach handles pretty much every major milestone of your asset management system. For your multi-level authorization and admin section, you can translate your familiarity with classic MVC role-based policies into Blazor's AuthorizeView component and custom AuthenticationStateProvider implementations. Because your business logic is unified in the shared class library, your complex, granular access control rules are written once and fire identically across both desktop browsers and mobile devices.
For your asset architecture dashboards, which rely on interactive tree views, relationship nodes, and vector network graphs, you are not forced to buy specialized, expensive native XAML control suites. Because Blazor Hybrid renders your UI via an internal web view, you can use any standard JavaScript or HTML charting engine, such as D3.js or Chart.js, right out of the box using Blazor’s standard JavaScript Interop. Furthermore, your external system integrations can be handled universally via standard HttpClient calls in your shared C# code. Because a Blazor Hybrid application runs locally as a native application directly on the operating system rather than inside a sandboxed mobile browser, your shared C# code can directly invoke device hardware features like the camera to execute barcode or QR-code scanning for your physical asset tags.
If the above response helps answer your question, remember to "Accept Answer" so that others in the community facing similar issues can easily find the solution. Your contribution is highly appreciated.
hth
Marcin