Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Blazor Hybrid tracking #24956

Closed
25 tasks done
guardrex opened this issue Feb 9, 2022 · 2 comments
Closed
25 tasks done

Blazor Hybrid tracking #24956

guardrex opened this issue Feb 9, 2022 · 2 comments
Assignees
Labels
Blazor doc-idea Pri1 High priority, do before Pri2 and Pri3

Comments

@guardrex
Copy link
Collaborator

guardrex commented Feb 9, 2022

Articles (ToC and physical/URL locations)

Topic Location/filename Issue PR  
Static files1 aspnetcore/blazor/hybrid/static-files.md #25674 #25891 Live Topic
Routing & Navigation2 aspnetcore/blazor/hybrid/routing-and-navigation.md #25130 Live Topic
Reuse Razor components3 aspnetcore/blazor/hybrid/reuse-razor-components.md #25675 #25847 Live Topic
Integrate with native UI4 DROPPED† aspnetcore/blazor/hybrid/integrate-with-native-ui.md #25676
Access native platform features5 DROPPED† aspnetcore/blazor/hybrid/access-to-platform-features.md #25677
Native look and feel6 DROPPED† aspnetcore/blazor/hybrid/native-look-and-feel.md #25678
Globalization & Localization7 aspnetcore/blazor/hybrid/globalization-localization.md #25679
Use browser dev tools8 aspnetcore/blazor/hybrid/developer-tools.md #25382 #25384
#25484
Live Topic
Security & Identity Overview9 blazor/hybrid/security/index.md #25453, #25461, #25771 #25555, #25791 Live Topic
Security considerations (added per Security Overview updates) blazor/hybrid/security/security-considerations.md #25791 Live Topic
Security & Identity Threat mitigation10 DROPPED† blazor/hybrid/security/threat-mitigation.md #25680
Security & Identity With AAD11 DROPPED† blazor/hybrid/security/azure-active-directory.md #25681
Security & Identity With AAD B2C12 DROPPED† blazor/hybrid/security/azure-active-directory-b2c.md #25682
Publish Overview13 publish folder blazor/hybrid/publish/index.md #25683

†See the issue for details.

Notes:

5 — Will be covered by #25675 in the Reuse web components topic.
7 — Document dotnet/maui#2532.
9 — Create a folder at aspnetcore/blazor/hybrid/security.
13 — Create a folder at blazor/hybrid/publish.Cross-link landing and general guidance. Cross-link out to the Blazor host and deploy overview, and cross-link to this Hybrid apps publish overview from there.

Additional Tasks

Process

Working in order down this list ...

Notes

Additional remarks from the discussion

There's no formal name for using Blazor with WPF and WinForms. The ".NET MAUI Blazor app" name comes from the corresponding template name, but we don't have templates for using Blazor with WPF and WinForms. ".NET MAUI Blazor app" merely refers to a .NET MAUI app with at least one BlazorWebView control. We will avoid defining a name for Blazor-WPF and Blazor-WinForms for now and instead refer to the task, something such as, "Add a BlazorWebView to a {WPF|Windows Forms} app."

Hybrid apps use a blend of native and web technologies. A Blazor Hybrid app uses Blazor in a native client app. Razor components always run natively in the .NET process and render web UI to an embedded web view control using a local interop channel. WebAssembly isn't used at all in Hybrid apps.

There's no plan to add BlazorWebView articles to the WPF and Windows Forms doc sets. .NET MAUI is a bit different in that the BlazorWebView is built into the framework. .NET MAUI docs will link to the Blazor docs wherever appropriate.

Additional remarks for the content and tutorials

  • .NET MAUI tutorial
    • Include instructions both for getting started using the .NET MAUI Blazor template and manually adding a BlazorWebView to an existing .NET MAUI app, similar to what we'll need to document for WPF & WinForms.
    • Getting started guidance on both Windows and non-Windows machines.
  • WPF and WinForms tutorials: Go off of the sample apps.
  • Blazor Hybrid overview: Check out the presentations (email) as a starting point.

Archived work on this issue

Initial coverage

  • Overview - In blazor/index.md, add a Blazor Hybrid section. Blazor Hybrid PR1 #24965
  • Tutorials (ToC entry) - Create a folder named tutorials. Move the current tutorials.md file content to an overview, and add a redirect. Move this node down two spots under "Tooling". Blazor tutorial organization #24960
    • Overview - Dervied from existing tutorials.md with additional remarks, as needed. Include a cross-link to the Hybrid app tutorials overview. (aspnetcore/blazor/tutorials/index.md)
    • Get-started (ToC cross-link to the Learn Module for Blazor Server)
    • Build a Blazor todo list app (Server or WASM) (aspnetcore/blazor/tutorials/build-a-blazor-app.md)
    • SignalR with Blazor (Server or WASM) (aspnetcore/blazor/tutorials/signalr-blazor.md)
  • Supported platforms - In blazor/supported-platforms.md, mention Blazor Hybrid. "We test on and support the latest platform webview control versions (WebView2 on Windows, Chrome on Android, Safari on iOS and macOS)." Blazor Hybrid PR1 #24965
  • Tooling - In blazor/tooling.md, cross-link to the Blazor Hybrid tutorials overview. Blazor Hybrid PR1 #24965
  • Hosting models - In blazor/hosting-models.md, add a Blazor Hybrid section that covers the arch and pros/cons. Blazor Hybrid PR1 #24965
  • Hybrid apps (ToC entry) - Create a folder named hybrid.
@guardrex
Copy link
Collaborator Author

guardrex commented Mar 21, 2022

@danroth27 @mkArtakMSFT

There's no plan to add BlazorWebView articles to the WPF and Windows Forms doc sets. .NET MAUI is a bit different in that the BlazorWebView is built into the framework. .NET MAUI docs will link to the Blazor docs wherever appropriate.

Let's clarify this further. Where is BlazorWebView is going to be covered? Is it supposed to be part of the upcoming topic "Integrate with native UI" (aspnetcore/blazor/hybrid/integrate-with-native-ui.md)? ... to then be THE platform-agnostic place for coverage (covers for WPF and WinForms, too)? ... and the .NET MAUI topic will be deleted and redirected to the "Integrate with native UI" topic over here?

WRT the unblocked dotnet/docs-maui#281 ...

There's no topic in this tracking issue for the subject of error handling/error processing. The PU remarks seem to indicate that such a topic would be added to the list of topics to write for this doc set. Should the .NET MAUI repo unblocked issue should be moved over here?

@danroth27
Copy link
Member

Where is BlazorWebView is going to be covered? Is it supposed to be part of the upcoming topic "Integrate with native UI" (aspnetcore/blazor/hybrid/integrate-with-native-ui.md)? ... to then be THE platform-agnostic place for coverage (covers for WPF and WinForms, too)? ... and the .NET MAUI topic will be deleted and redirected to the "Integrate with native UI" topic over here?

The high level concept of using a BlazorWebView to build a Blazor Hybrid app should be covered in the Blazor Hybrid Overview and in the Blazor hosting models topic. The individual BlazorWebView controls for .NET MAUI, WPF, and Windows Forms will get covered in the onboarding tutorials and through API docs. The .NET MAUI BlazorWebView ships as part of .NET MAUI and is documented along with the other MAUI controls. This topic has a bunch of overlapping content with the Blazor Hybrid docs that we can replaced with links to the Blazor Hybrid Overview and .NET MAUI Blazor onboarding tutorial. The "Integrate with native UI" topic was intended specifically for discussing how you can use a BlazorWebView alongside other native UI.

I'm not sure what doc content is needed for dotnet/docs-maui#281. I've reached out to @TanayParikh
to get more clarity on that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Blazor doc-idea Pri1 High priority, do before Pri2 and Pri3
Projects
Archived in project
Development

No branches or pull requests

3 participants