This repository serves as a template for building modern web applications with Next.js. It comes pre-configured with essential tools and systems, allowing you to focus on building your application without unnecessary dependencies.
- Authentication with Auth.js: Fully functional user authentication system.
- Email Management with Resend: Easily send and manage emails in your application.
- Validation with Zod: Robust runtime validation and type inference for your data.
- Database with Prisma and PostgreSQL: ORM setup for efficient database management.
- TypeScript: Strongly typed development for better code quality and maintainability.
- Shadcn/ui: Pre-configured UI components styled with Tailwind CSS.
- Tailwind v4: A utility-first CSS framework for rapidly building custom user interfaces.
- React icons: Include popular icons in your React projects easily with react-icons.
- Nanoid: A tiny (124 bytes), secure, URL-friendly, unique string ID generator for JavaScript
This template follows a clear and modular structure to make it easy to navigate and extend.
.
βββ auth.config.ts # Authentication configuration (providers..)
βββ auth.ts
βββ middleware.ts # middleware for auth routes
βββ routes.ts # Setting up routes for auth
βββ actions/
βββ app/
β βββ api/
β β βββ auth/
β β βββ [...nextauth]/
β β βββ route.ts
β βββ auth/
β β βββ error/
β β βββ login/
β β βββ new-password/
β β βββ new-verification/
β β βββ register/
β β βββ reset/
β βββ app/
βββ components/
β βββ auth/ # auth components
β βββ ui/ # shadcn/ui components
βββ data/
βββ hooks/
βββ lib/
βββ prisma/
βββ public/
βββ schemas/To start using this template, follow these steps:
-
Clone the repository:
git clone https://github.com/ArtyomCZ/nextjs15.git cd nextjs15 -
Install dependencies:
npm install
-
Set up environment variables: Create a
.envfile in the root directory and configure the following variables:DATABASE_URL=postgresql://<USER>:<PASSWORD>@<HOST>:<PORT>/<DATABASE> RESEND_API_KEY=<YOUR_RESEND_API_KEY> NEXTAUTH_SECRET=<YOUR_NEXTAUTH_SECRET>
-
Run database migrations:
npx prisma migrate dev
-
Start the development server:
npm run dev
-
Access the application: Open your browser and navigate to
http://localhost:3000.
Here are some resources to help you understand the technologies used:
- Next.js Documentation
- Auth.js Documentation
- Resend Documentation
- Zod Documentation
- Prisma Documentation
- React icons
- Nanoid
If you'd like to contribute to this project, fork the repository, make your changes, and submit a pull request. Contributions are welcome!
This project is proudly supported by Denik.app β a modern trading journal and financial research tool. Denik.app helps traders and investors keep a clear trading journal, analyze their strategies, and improve results with the help of advanced AI features.