dotnet / dotnet/maui

Add Web Platform-Target (Like React Native Web)

Open
#4,528 19 comments 142 reactions 0 assignees View on GitHub
area-setup proposal/open
Dominant language
C#
Stars
23.3k
Forks
2k
Avg merge
1d 10h
Merged PRs (30d)
297

Description

### Description

Scenario: I have build this super cool maui app which runs on iOS, Android, Windows and mac which is very successful. But now I notice for a lot of users it is an entry barrier to download and install the App.
It would be really cool to have an WebApp, which they could test-drive and then download the actual app.

Or I want to build something like WhatsApp Web or Spotify Web

If I have Ionic I can quickly just host my app on a webpage, since everything is HTML anyway.
If I have React Native, I "just" need to make it compatible with React Native Web.
If I have UNO I can run in the Web for the start.
If I have Flutter, I can use Flutter Web

If I have Maui I currently need to rewrite the whole app in Blazor or Simular. Or would need to convert to Blazor Hybrid, which would loose the Advantage of Native Controls.

Since I have all these controls which can render as Windows Controls, iOS Controls and Android Controls, why can't I build a renderer under WebAssembly and Html+Css for these controls?

Now I am a big fan of Blazor and Blazor Hybrid, but sometimes I just want the advantages of Native Apps. Also I don't see this as an competitor to Blazor, its just a very good complimentary option for Blazor and even better with Blazor Hybrid.

### Public API Changes

- Add a Plattform Target for WebAssembly/Blazor which renders the controls as HTML/CSS.

- Maybe Utilize even PWA functionalities

### Intended Use-Case

Make a Web Version of an already successfull App without having to rewrite.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.