Skip to content

khanakat/nextjs-fullstack-starter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Next.js Fullstack Starter

Next.js 14 TypeScript PostgreSQL Prisma Clerk Tailwind CSS MIT License

Production-ready Next.js 14 fullstack template with modern tools and best practices

🚀 Quick Start📖 Documentation🎯 Features🏗️ Architecture🤝 Contributing


✨ Features

🎯 Core Framework

  • ⚡ Next.js 14 with App Router
  • 🔷 TypeScript for type safety
  • 🎨 TailwindCSS for styling
  • 📱 Responsive design

🔐 Authentication

  • 🛡️ Clerk Auth (v5.6.0)
  • 👥 User management
  • 🔒 Protected routes
  • 📧 Email verification

💾 Database

  • 🐘 PostgreSQL primary
  • 🗃️ SQLite development option
  • ⚡ Prisma ORM
  • 🔄 Migration system

🎨 UI Components

  • 🧩 shadcn/ui components
  • 🌓 Dark/Light theme
  • ♿ Accessibility ready
  • 📊 Data tables

📁 File Upload

  • 📤 UploadThing integration
  • 🖼️ Image upload components
  • 📄 Document handling
  • 🎥 Video support

⚡ Advanced Features

  • 🔄 React Query caching
  • 🛠️ Server Actions
  • 📝 Form validation
  • 🎯 Type-safe APIs

🚀 Quick Start

Prerequisites: Node.js 18+, npm/yarn/pnpm

1️⃣ Clone & Install

git clone https://github.com/khanakat/nextjs-fullstack-starter.git
cd nextjs-fullstack-starter
npm install

2️⃣ Environment Setup

cp .env.example .env.local

Configure your .env.local with:

  • Clerk authentication keys
  • Database URL
  • Other environment variables

3️⃣ Database Setup

Option A: Quick PostgreSQL (Docker)

npm run db:postgres:docker

Option B: Local PostgreSQL

npm run db:postgres:local

Option C: Development SQLite

npm run db:sqlite

4️⃣ Launch Development

npm run dev

🎉 Visit http://localhost:3000


📖 Documentation

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

✅ Build Status

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.


🛠️ Available Scripts

# 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

🎯 Use Cases

🏢 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

🏗️ Tech Stack

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]
Loading

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

🐛 Found a bug?

Create an issue

💡 Have a feature request?

Start a discussion


📄 License

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

About

Production-ready Next.js fullstack template with TypeScript, PostgreSQL, Prisma, Clerk Auth, shadcn/ui, and React Query. Perfect starter for modern web applications.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages