- 🚀 Next.js 14 (App router) - Meta Framework for React
- ⚛️ React 18 - A library for web and native user interfaces
- 📘 Typescript - JavaScript with syntax for types
- 🎨 TailwindCSS - Class sorting, merging and linting
- 🛠️ shadcn/ui - Customizable UI components
- 🔒 Auth.js - Authentication library (Google provider)
- 🛡️ Prisma - Next-generation Node.js and TypeScript ORM
- 🔍 Zod - Schema validation library
- 🧪 Vitest - Vite powered API and component test framework
- 💅 Prettier - Code formatter
- 🧹 Eslint - Code linting tool
- 🔹 Lucide - Icons
- 🌑 Next-Themes - Dark Mode
- ⚙️ T3 Env - Manage your environment variables
- 🪵 Winston - Better development logging
git clone https://github.com/Zac-Zajdel/PrismaNext.git
yarn install
Create .env
file and set env variables from .env.example
file.
Start the server using this command:
yarn dev
and open http://localhost:3000/ to see the landing page.
.
├── .github # GitHub folder
├── .next # Auto-generated build files from Next.js
├── app # Next JS App (App Router)
├── components # React components
├── hooks # Custom hooks
├── lib # Validation, functions, and utilities
├── prisma # Prisma schema and migrations
├── public # Public assets folder
├── styles # Styles folder
├── tests # Vitest API calls
├── types # Type definitions
├── vitest.config.ts # Vitest configuration
├── app.log # Winston Log file
├── auth.ts # Auth.js configuration
├── components.json # shadcn/ui configuration
├── tailwind.config.ts # Tailwind configuration
├── env.ts # T3-env build time ENV check
├── middleware.ts # Middleware for Next.js routes
yarn analyze
yarn test
- The easiest way to get up and running is to deploy via Vercel.
- Before deploying, ensure you all required ENV variables specified within
env.ts
. - If the build fails, analyze the attached logs of your deployment for more information.
To contribute, please follow these steps:
- Clone the repository.
- Create a new branch.
- Make your changes and commit them.
- Push your changes to a PR.
- Create a pull request.
If you like this project, feel free to leave a star. 🌟😊
Made by Zac Zajdel