create-next-starter-pack
v0.0.3
Published
Nats Next.js starter CLI
Readme
🚀 nextjs-starter-pack
A ready-to-go, production-grade Next.js starter template packed with modern tools and batteries-included features like authentication, PostgreSQL/PostGIS support, TRPC, Drizzle ORM, and TailwindCSS — all in one clean setup.
✨ Features
- 🔐 Authentication – Built-in via
better-authwith support for Google login - 🧠 Type-safe APIs – Powered by tRPC
- ⚡ Modern ORM – Drizzle ORM with PostgreSQL & PostGIS support
- 🎨 UI Components – Built using shadcn/ui
- 🎯 Form Handling – Integrated with
react-hook-form - 💅 Styling – Tailwind CSS
- 🧪 TypeScript-first – End-to-end type safety
- 📧 Emails – Resend integration for transactional emails
- 🧼 Linting – ESLint configured and ready
- 🐘 Dockerized Database – Easily spin up a local PostgreSQL with PostGIS
🧱 Tech Stack
- Next.js
- TypeScript
- Drizzle ORM
- TRPC
- Tailwind CSS
- Shadcn UI
- React Hook Form
- Resend
- PostgreSQL + PostGIS (via Docker)
- Better Auth
- ESLint
⚙️ Getting Started
1. Install dependencies
pnpm install
2. Create your .env file
# Drizzle
DATABASE_URL="postgresql://postgres:password@localhost:5432/starter-pack"
# Auth
BETTER_AUTH_SECRET=""
BETTER_AUTH_URL="http://localhost:3000"
# Google OAuth
AUTH_GOOGLE_ID=""
AUTH_GOOGLE_SECRET=""
# Resend
AUTH_RESEND_KEY=""
EMAIL_FROM="[email protected]"
# Base URL
BASE_URL="http://localhost:3000"
3. Set up your database
pnpm db:start # Start the Dockerized Postgres DB
pnpm db:generate # Generate Drizzle client
pnpm db:push # Push schema to database
pnpm db:studio # (Optional) Open database studio
4. Run the development server
pnpm dev