We are coming from a C# background and we are trying to port our Windows Forms and WPF UIs to the browser. Our current UI is hosted in a "framework" which hosts all Windows and you can navigate in the program. As a back-end, we want to use ASP.Net Core to use some existing logic as well as database access logic. We already collected some experience in JS and TS and are able to create basic UIs in vanilla JS/TS. But we struggle a bit with navigation from one "App" to another "App".
What would be your recommendation?
Have you tried Angular or React? They are frameworks for creating single page WebApps where the DOM is updated on a single webpage, what this means is that your app only loads once and thereafter it is as smooth as a native experience. What you can do is build one menu interface and then have multiple apps all running in the same project. Google Docs is a good example of this. Angular is easier to manage, but personally a bit jarring to get into and understand, whereas React is a bit messier, but easier to pick up.
You have mentioned React as a framework, well it is not a framework; it is a UI library
Yes sorry my mistake, I tend to do that with React, although it's not a framework, in many ways it serves much the same purpose and I feel has a better ecosystem. The patterns are just insane to get used to.
Coming from C# I think you’ll find Angular comfortable. If you were more node/ruby/web developer savvy I’d probably recommend React.
Angular comes with everything you need out of the box, it’s a bit more opinionated framework. React is a series of libraries that you can patch together to tweak exactly how you like to web dev.