Next App Router Template

screenshot of Next App Router Template
nextjs
react
tanstack
tailwind
drizzle-orm

Fullstack Next.js project template using App Router

Overview

The Next.js App Router Template offers a comprehensive solution for developers looking to create fullstack applications with the latest Next.js innovations. Leveraging the power of the App Router and Server Components, it paves the way for dynamic and efficient web applications. Ideal for both seasoned developers and newcomers, this template seamlessly integrates essential features for modern web development.

By prioritizing type safety and ease of use, this template addresses key challenges in building robust applications. Internationalization, user authentication, database persistence, and form validation capabilities are just a few highlights that make this template an attractive choice for developers aiming to deliver high-quality web products.

Features

  • App Router & Server Components: Built on Next.js's new App Router capabilities, enabling optimized routing and server-side rendering.
  • Internationalization (i18n): Easily support multiple languages with next-intl, including compatibility with Server Components.
  • Type-safe Translation Keys: Utilize type-safe keys for translation messages, enhancing code reliability and reducing runtime errors.
  • Client-side Data Fetching: Achieve end-to-end type safety with a combination of tRPC, superjson, and React Query for efficient data handling.
  • Advanced Form Validation: Employ React Hook Form in conjunction with Zod schemas to implement robust client-side form validation.
  • Drizzle ORM for Data Persistence: Manage database migrations seamlessly and ensure data integrity with Drizzle ORM.
  • NextAuth.js Authentication: Simplify user authentication with NextAuth.js, backed by Drizzle ORM for secure session storage.
  • Component Testing: Leverage Vitest and React Testing Library to conduct comprehensive testing of components, ensuring application stability.
nextjs
Next.js

Next.js is a React-based web framework that enables server-side rendering, static site generation, and other powerful features for building modern web applications.

react
React

React is a widely used JavaScript library for building user interfaces and single-page applications. It follows a component-based architecture and uses a virtual DOM to efficiently update and render UI components

tanstack
TanStack

TanStack is a collection of high-quality, framework-agnostic libraries including TanStack Query for data fetching, TanStack Router for routing, TanStack Table for tables, and more. These tools provide powerful, type-safe solutions for common web development challenges.

tailwind
Tailwind

Tailwind CSS is a utility-first CSS framework that provides pre-defined classes for building responsive and customizable user interfaces.

drizzle-orm
Drizzle ORM

Drizzle ORM is a TypeScript ORM for SQL databases designed with maximum type safety in mind. It comes with a drizzle-kit CLI companion for automatic SQL migrations generation. Drizzle ORM is meant to be a library, not a framework. It stays as an opt-in solution all the time at any levels.

fullstack
Fullstack

A fullstack boilerplate provides a starter application that includes both frontend and backend. It should include database, auth, payments, user roles and other backend services to build a fully featured saas or webapps.

eslint
Eslint

ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

postcss
Postcss

PostCSS is a popular open-source tool that enables web developers to transform CSS styles with JavaScript plugins. It allows for efficient processing of CSS styles, from applying vendor prefixes to improving browser compatibility, ultimately resulting in cleaner, faster, and more maintainable code.

react-hook-form
React Hook Form

React Hook Form is a performant, flexible, and extensible form library for React with easy validation. It reduces re-renders and improves performance by using uncontrolled components and native HTML validation, making form handling simple and efficient.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.

zod
Zod

Zod is a TypeScript-first schema declaration and validation library. It allows you to define schemas that can validate data at runtime while providing excellent TypeScript inference, making it perfect for API validation, form validation, and type-safe data handling.