Next.js + Tailwind, built for AI

Bedrock

The starter where clean architecture is enforced, not hoped for.

Every rule is a pass or fail gate wired into one command. Your AI cannot drift: it ships scalable, SOLID code by construction, or the build stops. Start by reading AGENTS.md.

Next.js 16 docsGitHub
Live example: a counter
This widget is one orchestrator, one hook, one presenter. State lives in the hook, rendering lives here, wiring lives in the orchestrator.
0

Every component, three roles

Orchestrator
orchestrators/
Wires data and state to a presenter. Calls hooks, passes ready props down.
Presenter
presenters/
Pure and presentational. Props in, JSX out. No transforms, no effects.
Hook
hooks/
Logic and state. Returns data and handlers, never JSX.

SOLID, by construction

S

Single Responsibility

One component or function does one thing.

O

Open/Closed

Extend via composition or props, never by editing internals.

L

Liskov Substitution

A variant is usable wherever the base is used.

I

Interface Segregation

No component is forced to accept props it does not use.

D

Dependency Inversion

Depend on abstractions, not concrete implementations.