Project Setup

Automatic installation:

npx create-next-app@latest

Recommended Options:

Option Default Selection
TypeScript Yes Yes
ESLint No Yes
Tailwind CSS Yes Yes
src/ directory No Yes
App Router Yes Yes
Turbopack (next dev) Yes Yes
Custom import alias (@/*) No No

File Structure

my-app/
├── public/                   # Static assets (images, fonts, icons)
├── node_modules/             # Project dependencies installed via npm
├── src/                      # Application source code
│   └── app/                  # Next.js App Router structure
│       ├── layout.tsx        # Root layout component
│       └── page.tsx          # Entry page component
├── eslint.config.mjs         # ESLint configuration (Flat Config)
├── postcss.config.mjs        # PostCSS configuration for Tailwind CSS
├── next.config.ts            # Next.js custom configuration (routing, images)
├── tsconfig.json             # TypeScript compiler options
├── package.json              # Dependencies, scripts, project metadata
├── package-lock.json         # Locked dependency versions
├── next-env.d.ts             # TypeScript declaration file for Next.js
├── README.md                 # Project documentation and description
└── .gitignore                # Specifies intentionally untracked files

Configuration Highlights

Core Dependencies

Package Purpose
next React Framework
react UI Library
react-dom DOM Renderer
tailwindcss Utility-first CSS
eslint Code Linting
typescript Static Typing