- Authentication System (NextAuth.js with Google OAuth + Credentials)
- Database Integration (Prisma ORM with PostgreSQL)
- Task Management System (Full CRUD operations)
- Modern UI (Tailwind CSS with responsive design)
- API Routes (RESTful endpoints)
- Session Management (JWT-based sessions)
src/
βββ app/
β βββ api/
β β βββ auth/[...nextauth]/ # NextAuth configuration
β β βββ tasks/ # Task CRUD API routes
β βββ dashboard/ # Main dashboard page
β βββ signin/ # Authentication page
β βββ layout.tsx # Root layout with providers
β βββ page.tsx # Landing page
β βββ providers.tsx # Session provider wrapper
βββ prisma/
βββ schema.prisma # Database schema
npm install bcryptjs
npm install @types/bcryptjs --save-dev# Generate Prisma client
npx prisma generate
# Run database migrations
npx prisma db push
# (Optional) View your database
npx prisma studioUpdate your .env.local file:
# Database
DATABASE_URL="your-postgresql-connection-string"
# NextAuth
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=your-secret-key-here
# Google OAuth (optional)
GOOGLE_CLIENT_ID=your-google-client-id
GOOGLE_CLIENT_SECRET=your-google-client-secretnpm run dev- Email: test@example.com
- Password: password
- Landing Page (
/) - Authentication and feature overview - Sign In (
/signin) - Login with credentials or Google - Dashboard (
/dashboard) - Task management interface
GET /api/tasks- Fetch user tasksPOST /api/tasks- Create new taskPUT /api/tasks/[id]- Update taskDELETE /api/tasks/[id]- Delete task
- Set up your database (PostgreSQL recommended)
- Configure Google OAuth (optional)
- Customize the UI to match your brand
- Add more features like task categories, team collaboration, etc.
- Deploy to Vercel or your preferred platform
- Next.js 15 - React framework
- TypeScript - Type safety
- Tailwind CSS - Styling
- Prisma - Database ORM
- NextAuth.js - Authentication
- PostgreSQL - Database
Your full-stack application is ready to use! π