State Management Patterns - MVC-Starter
Date: 2026-03-11T11:59:39Z
Overview
This project does not implement client-side application state management in the SPA sense. State is primarily handled on the server/request side through controller properties, request data, and helper libraries.
Observed Patterns
- Request-scoped flow: Incoming requests are routed and dispatched per request through
public/Default.asp and core/mvc.asp.
- Controller-held page state: Controllers expose simple properties such as
useLayout and Title to influence rendering behavior.
- Flash messaging: Shared layout calls
Flash().ShowErrorsIfPresent and Flash().ShowSuccessIfPresent, indicating transient server-side UI messaging.
- Configuration-driven behavior: Runtime flags and UI behavior are sourced from
public/web.config via GetAppSetting.
- Form/cache helpers available:
core/lib.FormCache.asp and related helpers suggest server-side request/form support patterns.
What Is Not Present
- No Redux, Context API, Vuex, MobX, Zustand, or similar client-state library
- No SPA store layer
- No separate API/client state synchronization layer
Brownfield Notes
- Treat this app as server-rendered and request-driven.
- If richer client-side interactivity is added later, it will be a new architectural layer rather than an extension of an existing state-management system.