Goal Provide a concise, LLM-friendly rule set for building ASP.NET Core MVC pages that stay reusable, testable, and maintainable.
- Think in Features, Not Layers – co-locate Controllers, Views, ViewModels, Tag Helpers, and View Components under
/Features/<FeatureName>/…
so everything a feature needs lives together. - Shape Data Up-Front – perform all heavy lifting (queries, transforms) in services or controllers; Razor files should only render.