Layered domains
Repository → service → action → UI. Zod at the boundary.
Next.js 16 starter
App Router, Prisma RBAC, layered features, and a refined admin UI — ready to fork for your next product.
What you get
Public pages stay marketing-simple. Staff work lives in /admin with cookie sessions, permission gates, and URL-backed list screens.
Repository → service → action → UI. Zod at the boundary.
Cookie locale, prefixed routes, dictionaries as the source of copy.
Roles, permissions, activity logs, and Super Admin bypass.
Built for forks
The same patterns Lencir uses in production — adapted so every new product starts with a calm, consistent back office.
Clear layers so agents and humans know where new code belongs.
Every UI string lives in en and id dictionaries — no hardcoded copy.
Dashboard, users, roles, and audit logs gated by permission keys.
FAQ