Feature packed Next.js boilerplate. Zero setup. Edge ready.
Some features depend on environment variables (indicated in features list with ๐ก) and so require enabling. They are disabled by default so that the app runs without any setup. They can be enabled by uncommenting all lines under where @enable {feature}
appears.
View the repository branches for other feature sets (e.g. Bun)
pnpm run build:analyze
๐ Option 1: Clone and deploy with Vercel
๐ Option 2: Clone and run locally
main
branch only` if you are interested in other branches / feature sets)with pnpm
pnpm install
pnpm run dev
or with Docker
docker-compose --file docker/dev/docker-compose.yml up
.dockerignore
docker/
- Dockerfile and docker-compose.yml for development and production๐ก (requires enabling)
.github/workflows/ci.yml
- type-checking and linting (hence these errors are ignored in next.config.mjs
)๐ก (requires enabling)
src/app/api/auth
src/app/auth
src/components/auth.tsx
src/db/schemas/auth.ts)
store auth data in databasesrc/lib/auth.ts
types/lucia.d.ts
src/components/providers/theme-provider.tsx
src/components/ui/
src/components/theme-toggle.tsx
components.json
src/env.mjs
- configure environment variablesnext.config.mjs
- environment variables are validated at build-timesrc/app/examples/client-component/page.tsx
- use in a client componentsrc/app/examples/server-component/page.tsx
- use in a server componenttsconfig.json
- all modifications from create-next-app are explained with commentstypes/reset.d.ts
- using ts-reset to increase type-safety.vscode/extensions.json
- recommended workspace extensions.vscode/launch.json
- debug configurations.vscode/settings.json
- use project TypeScript version๐ก (requires enabling)