Default Drwnut Experience

A cleaner home for the default.drwnut.uk side of things.

This page follows the updated local app design system: reusable layout primitives, big rounded white cards, green-led actions, clear states, and practical templates for dashboards, CRUD pages, and auth flows.

Container

Start pages with `max-w-7xl mx-auto px-6 py-8 lg:px-8` so everything feels aligned and deliberate.

Stack + Cluster

Use `space-y-*` for rhythm and `flex flex-wrap items-center gap-3` for controls, chips, and grouped actions.

Grid

Default multi-card layouts should lean on `grid gap-6 md:grid-cols-2 xl:grid-cols-3` rather than ad-hoc spacing.

Page Templates

The revised design system now defines clearer starting points for common page types.

Shared System Style
Dashboard Page

Hero/top bar, stat cards, chart or table area, and an activity list.

Admin CRUD Page

Top bar, filters, list or table, plus a quick-action side panel.

Auth Page

Centered card, clear branding, low noise, and one obvious primary action.

Key Coding Principles

A few of the most important engineering rules to keep front-of-mind while building pages in this system.

Predictable Beats Clever
Thin Controllers

Controllers should receive the request, call the right service, and return the response, not become a swamp of business logic and SQL.

Services Hold Business Rules

Important app behaviour belongs in services or domain classes so the rules stay testable and reusable.

Validate All Input

Never trust request data. Validate early, normalise where needed, and fail clearly instead of hoping the form behaved itself.

Follow Existing Patterns

Match the current architecture, naming, and UI conventions before inventing anything new or parallel.