A Next.js 16 template for building production web applications with React 19, TypeScript, Effect, and Tailwind CSS 4.
- Next.js App Router, React Compiler, and typed routes
- Effect 3, Effect Platform, and
@prb/effect-nextfor typed server workflows - Tailwind CSS 4, tailwind-variants, Base UI, and Lucide icons
SmartImage, a project wrapper aroundnext/imagewith inferred sizes and fallback alt text- Bun, Biome, ESLint, Prettier, Just, Husky, and lint-staged
- Vercel deployment with encrypted environment variables managed by dotenvx
Some configuration and Just recipes are provided by devkit.
Use the Use this template button, or clone it manually:
git clone https://github.com/PaulRBerg/next-template.git my-app
cd my-appInstall Bun, Ni, and Just, then run:
bun install
just devThe development URL is printed in the terminal. Run just to list the available build, quality, and deployment
recipes.
The committed .env is encrypted; private decryption keys remain local in the ignored .env.keys file. A clone cannot
decrypt the template's environment, so remove that .env and create project-specific values:
na dotenvx set VERCEL_ORG_ID <value>
na dotenvx set VERCEL_PROJECT_ID <value>
na dotenvx set VERCEL_TOKEN <value>Add the generated private key to GitHub Actions as DOTENV_PRIVATE_KEY. With the GitHub CLI, load it directly from the
keys file:
gh secret set -f .env.keysThe deployment workflow runs manually through workflow_dispatch; enable its commented push trigger if deployments
should run automatically from main.
See AGENTS.md for development and validation conventions.
MIT
