All notable changes to this template are tracked here.
Follow Semantic Versioning: MAJOR.MINOR.PATCH
| Bump type | When to use |
|---|---|
patch |
Bug fixes, typo corrections, minor doc updates |
minor |
New features, new shadcn components, new CLI commands — backwards-compatible |
major |
Breaking structure changes, dependency major upgrades, architecture changes |
Production-ready Next.js 15 frontend template extracted and standardized from internal Hybrid Interactive projects.
lib/auth/— BFF auth pattern: httpOnly cookies, login/me/refresh/logout BFF route handlers,useMe+useLogin+useLogouthookslib/permissions/— Built-in RBAC: 4 default roles (super_admin,admin,member,viewer),usePermission()/useFilteredNavItems()hookslib/loading/— Centralized blocking loading system:useBlockingMutation,GlobalLoadingOverlay, token-based concurrent trackinglib/api-client.ts— Stateless singleton HTTP client: 401 auto-refresh with deduplication, FastAPI 422 error flattening, typedget/post/patch/put/delete/uploadcomponents/layout/—DashboardShell: collapsible sidebar (desktop) + Sheet-based mobile nav, user dropdown, permission-gated nav itemscomponents/shared/— GenericDataTable,StatsCard,lazy.tsxregistryproxy.ts— Route protection + API proxy auth injectionncube.js— CLI scaffolding tool (mirrorsfcube.py)
super_admin— Bypasses all permission checksadmin— Full operational accessmember— Create + edit contentviewer— Read-only
- Next.js 15 (App Router, Turbopack), React 19, TypeScript 5
- Tailwind CSS v4 (CSS-native, no config file), shadcn/ui
- TanStack Query v5, Zustand v5
- React Hook Form v7 + Zod v3, Sonner v2, Framer Motion v12
node ncube.js startdomain <Name>— scaffold a complete feature domainnode ncube.js listdomains— list existing domainsnode ncube.js setup— install shadcn/ui componentsnode ncube.js create <name> --variant base|rbac|full— bootstrap a new projectnode ncube.js bump patch|minor|major— bump version + add changelog entry