Production-ready Next.js 14 fullstack template with modern tools and best practices
🚀 Quick Start • 📖 Documentation • 🎯 Features • 🏗️ Architecture • 🤝 Contributing
|
🎯 Core Framework
|
🔐 Authentication
|
|
💾 Database
|
🎨 UI Components
|
|
📁 File Upload
|
⚡ Advanced Features
|
Prerequisites: Node.js 18+, npm/yarn/pnpm
git clone https://github.com/khanakat/nextjs-fullstack-starter.git
cd nextjs-fullstack-starter
npm installcp .env.example .env.localConfigure your .env.local with:
- Clerk authentication keys
- Database URL
- Other environment variables
Option A: Quick PostgreSQL (Docker)
npm run db:postgres:dockerOption B: Local PostgreSQL
npm run db:postgres:localOption C: Development SQLite
npm run db:sqlitenpm run dev🎉 Visit http://localhost:3000
| Guide | Description |
|---|---|
| 📚 Getting Started | Installation, setup, and first steps |
| 🔐 Authentication | Clerk setup and user management |
| 💾 Database | PostgreSQL, Prisma, and migrations |
| 🚀 Deployment | Vercel, Docker, and production tips |
| 🏗️ Architecture | Project structure and patterns |
| 🎯 Examples | Code samples and tutorials |
| 📋 Technical Debt | Known issues and improvement plans |
Production Build: ✅ Successful (0 compilation errors)
All production code compiles successfully with TypeScript strict mode enabled. The project uses:
- TypeScript 5.x with strict type checking
- Prisma ORM for database operations
- Domain-Driven Design (DDD) with Clean Architecture
- Result pattern for error handling
- Inversify for dependency injection
For detailed information about compilation fixes and known test errors, see Technical Debt Documentation.
# Development
npm run dev # Start dev server
npm run build # Build for production
npm run start # Start production server
# Database Management
npm run db:setup # Interactive database setup
npm run db:migrate # Run migrations
npm run db:seed # Seed with sample data
npm run db:studio # Open Prisma Studio
npm run db:reset # Reset database
# Database Specific
npm run db:postgres:docker # Setup PostgreSQL with Docker
npm run db:postgres:local # Setup local PostgreSQL
npm run db:sqlite # Switch to SQLite
# Utilities
npm run type-check # TypeScript checks
npm run lint # ESLint checks🏢 SaaS Applications
Perfect for building SaaS products with:
- User authentication and management
- Subscription billing integration
- Multi-tenant architecture
- Admin dashboards
📱 Social Platforms
Ideal foundation for:
- User profiles and social features
- Content management systems
- Real-time notifications
- Media upload handling
🛒 E-commerce Sites
Ready for online stores with:
- Product catalog management
- User accounts and orders
- Payment processing integration
- Inventory management
graph TB
A[Frontend] --> B[Next.js 14 + TypeScript]
A --> C[shadcn/ui + TailwindCSS]
A --> D[React Query]
E[Backend] --> F[Next.js API Routes]
E --> G[Prisma ORM]
E --> H[PostgreSQL/SQLite]
I[Auth] --> J[Clerk Authentication]
I --> K[Protected Routes]
L[DevOps] --> M[Docker Support]
L --> N[Vercel Ready]
L --> O[TypeScript Config]
We welcome contributions! Please see our Contributing Guide for details.
MIT License - see the LICENSE file for details.
⭐ If this project helped you, please give it a star!
🐙 GitHub • 📝 Issues • 💬 Discussions
Made with ❤️ by khanakat