Steve Sanderson agreed to write the foreword!
Look into WASM pre-rendered Securing sensative config values Static web app
Top-navigation -- [Theme Toggle] [Notifications] [Voice Options] [Langauge] [Log in]
-
Six panel layout -- each panel is a Component (draggable)
- Twitter -- configure hash tags and handles
- Jokes -- auto-refresh, but allow manual after a while
- Weather -- editable
- Have I Been Pwned -- email and password checker, on-demand (alerts?)
- Chat / Video Chat
- [ + ]
-
Use Have I Been Pwned (HIBP) service ~
-
Use localization / globalization, and resource translation ✔
- JS interop, speak anything on the page -- in any language
- Translation services
-
Use repository-pattern .NET SDK (Cosmos DB) ✔
- Background / Worker service - for API caching
- Azure Functions -- stateless
-
Use some sort of jokes API ✔
- Aggregate chuck norris (cnidb, nerdy), programming jokes, and dad jokes
-
Show xUnit the Blazor complementary bUnit ✔
- Consider "Scenario testing"
-
Loading page
- Show strobing Blazor logo: Blazor WebAssembly
- Use a bit of CSS, add JS to intercept the loading of WASM -- show progress
Consider bulma for the CSS framework, as it doesn't require JavaScript:
See this for unit testing: https://github.com/egil/blazor-workshop
And AutoData
from AutoFixture
https://gist.github.com/davidfowl/ed7564297c61fe9ab814 ✔
CI/CD and so much more! ✔
Modular components to highlight component aspect.
Blazor Wasm - client
- HTTP calls
- Microservices
- SignalR
- Azure static web app
Server - bits
- ASP.NET Core Web API
- Azure Functions
- Cosmos DB
- Repository-pattern
File new > Blazor WebAssembly App