Skip to content

Commit 4b39864

Browse files
committed
Exercise 14: updated the TechStack.md file and adjusted instructions based on lasted app requirements.
1 parent 730258b commit 4b39864

2 files changed

Lines changed: 125 additions & 82 deletions

File tree

DownloadableCodeProjects/standalone-lab-projects/sdd-get-started-rss-feed/StakeholderDocuments/TechStack.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,38 @@ This incremental approach makes development extremely fast while keeping the arc
7373

7474
## Local development
7575

76+
### Blazor project initialization
77+
78+
When creating a new Blazor WebAssembly project from the template, the project includes demonstration pages that must be removed to avoid conflicts with MVP features.
79+
80+
**Required cleanup steps:**
81+
82+
1. **Remove template demo pages** from `frontend/[ProjectName].UI/Pages/`:
83+
- Delete `Home.razor` (conflicts with root route)
84+
- Delete `Counter.razor` (demo page)
85+
- Delete `Weather.razor` (demo page)
86+
87+
2. **Update navigation menu** in `frontend/[ProjectName].UI/Layout/NavMenu.razor`:
88+
- Remove navigation links to deleted demo pages
89+
- Update menu items to reflect MVP features only
90+
- Change root navigation link text to match your landing page (e.g., "Subscriptions")
91+
92+
3. **Verify routing**:
93+
- Ensure only ONE page uses `@page "/"` directive (your main MVP page)
94+
- All other pages should use unique routes (e.g., `@page "/settings"`)
95+
96+
**Why this matters:**
97+
98+
Blazor templates include demonstration pages with pre-configured routes. If you create new pages with the same routes (especially the root route `/`), you'll encounter **ambiguous route exceptions** at runtime. The error message will look like:
99+
100+
```
101+
System.InvalidOperationException: The following routes are ambiguous:
102+
'' in '[ProjectName].UI.Pages.Home'
103+
'' in '[ProjectName].UI.Pages.YourFeature'
104+
```
105+
106+
Cleaning up template pages before implementing MVP features prevents these conflicts and ensures a clean project structure focused on business requirements.
107+
76108
### Port configuration
77109

78110
The backend API and frontend UI run on separate localhost ports. **Port consistency is critical** - the ports must be coordinated between three locations:

0 commit comments

Comments
 (0)