• List rendering (basic) — Uses Virtualize for efficient rendering and includes key on items to preserve identity and reduce re-renders.
  • Interactive components & view state — Child components (month list, event items) raise callbacks and the page maintains the selected/month state so the UI stays in sync.
    • Search — Filters events as you type and updates results immediately; clearing the search restores the list filtered by the currently selected month. UX win
    • Month selection — Clicking a month clears any active search and shows only events for that month group, making navigation predictable and fast.
    • Component communication — Parent components pass data into children using [Parameter] properties; children notify parents using EventCallback events.
  • Form handling & validation — Add/Edit pages use EditForm, data annotations and validation messages to validate inputs before submitting.
  • Server interactivity (advanced) — The app architecture supports server-side interactions (repository/service calls) and can be extended to async/remote APIs or SignalR for realtime updates.
winter
October – December
An unhandled error has occurred. Reload 🗙