A modern, production-ready starter template for building full-stack applications with Next.js and Supabase.
- Next.js 15 - React framework with App Router
- TypeScript - Strict mode for type safety
- Supabase - Open source Firebase alternative
- Tailwind CSS - Utility-first CSS framework
- Authentication - Built-in Supabase auth
- Dark Mode - Theme switching with next-themes
- Testing - Vitest + React Testing Library
- ESLint & Prettier - Code quality tools
- Node.js 20+
- npm 10+
- Supabase account
# Clone repository
git clone <your-repo>
cd nextjs-with-supabase
# Install dependencies
npm ci
# Setup environment
cp .env.example .env.local
# Edit .env.local with your Supabase credentials
# Run development server
npm run devOpen http://localhost:3000 to see the application.
Create .env.local with:
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_anon_key# Development server
npm run dev
# Lint code
npm run lint
# Type checking
npm run type-check
# Format code
npm run format
# Run tests
npm run test
# Coverage
npm run test:coverage├── app/ # Next.js app directory
├── components/ # React components
├── lib/ # Utilities and types
├── utils/ # Helper functions
├── public/ # Static files
├── supabase/ # Supabase config
└── middleware.ts # Next.js middleware
- Framework: Next.js 15
- Language: TypeScript
- Database: Supabase PostgreSQL
- Auth: Supabase SSR
- Styling: Tailwind CSS
- UI Components: Custom + shadcn/ui pattern
- Testing: Vitest + React Testing Library
npm run build
vercel deployEnsure Node.js 20+ is configured and run:
npm run build
npm run start- ✅ TypeScript strict mode
- ✅ Input validation
- ✅ Environment variables
- ✅ Server-side authentication
- ✅ CSRF protection via Next.js
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
MIT