Overview:
The PokémonA Next.js 13 application is a project built to explore the use of server actions, server components, Drizzle ORM, and the new intercepting/parallel routes in Next.js. It also integrates authentication using NextAuth.js and utilizes Turso for the database. However, it is important to note that this app may not be using the best practices since server actions are still in alpha, and there may be issues when running the app in an Nx monorepo.
Features:
- Next.js App Directory: Utilizes the new Next.js app directory and its features such as dynamic open graph images and metadata.
- Intercepting/Parallel Routes: Implements intercepting and parallel routes for improved functionality.
- Authentication with NextAuth.js: Integration of NextAuth.js for user authentication.
- Drizzle ORM: Uses Drizzle ORM for database operations.
- Turso Database Integration: Integrates Turso as the database for the application.
- TypeScript: Implements TypeScript for improved type safety.
Installation:
To run the PokémonA Next.js 13 application locally, follow these steps:
- Install dependencies using npm.
- Copy the
.env.examplefile to.envand update the variables, including setting up GitHub OAuth. - Run the database migrations and seed the database.
- Start the development server.
Summary:
The PokémonA Next.js 13 application is a project that explores the use of server actions, server components, Drizzle ORM, and intercepting/parallel routes in Next.js. It also integrates authentication using NextAuth.js and utilizes Turso as the database. However, it is important to note that the app may not follow best practices and may have some issues when running in an Nx monorepo. Overall, it serves as a playground for experimenting with these technologies.