A modern and opinionated Next.js starter template with a focus on developer experience and best practices. Built with TypeScript, Tailwind CSS, and includes essential tooling for code quality and optimization.
This starter was created with one key principle in mind: You should spend your time building, not configuring.
Unlike many starter templates that come loaded with features you may never use, this template provides just what you need to start building right away. No time wasted removing unused dependencies or reconfiguring bloated setups. Every included feature and configuration serves a purpose, creating a foundation that's ready for immediate development while maintaining complete flexibility for your project's specific needs.
# Create new project using this starter
npx create-next-app@latest --example "https://github.com/larsgoette/next-starter" [your-project-name]
# Navigate to the project
cd your-project-name
# Start the development server
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx
. The page auto-updates as you edit the file.
Modern Stack
Styling & UI
tailwind-merge
Developer Experience
jsx-a11y
SEO & Performance
src/
βββ app/ # Next.js App Router files
βββ components/ # React components
β βββ features/ # Feature-specific components
β βββ hooks/ # Custom React hooks
β βββ icons/ # SVG icons
β βββ layouts/ # Layout components
β βββ sections/ # Page sections
β βββ ui/ # Base UI components
βββ lib/ # Utilities and logic
βββ scripts/ # Build and development scripts
The src/app
directory contains the core Next.js application files:
app/
βββ apple-icon.png # [Auto-generated] iOS icon
βββ config.tsx # Global configuration
βββ favicon.ico # [Auto-generated] Browser favicon
βββ globals.css # Global styles
βββ icon.svg # [Auto-generated] Modern browsers icon
βββ layout.tsx # Root layout
βββ manifest.ts # PWA manifest
βββ opengraph-image.tsx # OG image generator
βββ page.tsx # Homepage
Files marked with [Auto-generated]
are created and managed by the npm run favicons
script. You should not edit these files directly as they will be overwritten when the script runs.
Edit src/app/config.ts
to customize your application:
// Basic settings
export const APP_LANG = "en";
export const APP_NAME = "Acme Studio";
export const APP_TITLE = "Welcome to the Future.";
export const BASE_URL = "https://example.com";
// Theme settings
export const THEME_COLOR = "#ffffff";
export const LOADING_BACKGROUND_COLOR = "#ffffff";
export const OG_BACKGROUND_COLOR = "#fafafa";
export const APPLE_ICON_BACKGROUND_COLOR = "#fafafa";
npm run dev
- Start development servernpm run build
- Build for productionnpm run start
- Start production servernpm run lint
- Run ESLintnpm run favicons
- Generate favicon assetsGenerate optimized favicon assets with:
npm run favicons -- path/to/your/image.[svg|png]
This creates:
favicon.ico
for browsersapple-icon.png
(180x180)icon.svg
or icon.png
for modern browsersTo learn more about the technologies used in this template:
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
Browserlist support is configured for:
This project is licensed under the MIT License - see the LICENSE file for details.
Lars GΓΆtte
Website: larsgoette.de