Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.
Latest commit message
Commit time
July 17, 2023 20:14
July 23, 2022 13:49
July 17, 2023 18:32
August 29, 2021 12:58

Next.js + Tailwind CSS + TypeScript Starter and Boilerplate

πŸ”‹ ts-nextjs-tailwind-starter

Next.js + Tailwind CSS + TypeScript starter packed with useful development features.

Made by Theodorus Clarence

GitHub Repo stars Depfu Last Update


This repository is πŸ”‹ battery packed with:

  • ⚑️ Next.js 13 with App Router
  • βš›οΈ React 18
  • ✨ TypeScript
  • πŸ’¨ Tailwind CSS 3 β€” Configured with CSS Variables to extend the primary color
  • πŸ’Ž Pre-built Components β€” Components that will automatically adapt with your brand color, check here for the demo
  • πŸƒ Jest β€” Configured for unit testing
  • πŸ“ˆ Absolute Import and Path Alias β€” Import components using @/ prefix
  • πŸ“ ESLint β€” Find and fix problems in your code, also will auto sort your imports
  • πŸ’– Prettier β€” Format your code consistently
  • 🐢 Husky & Lint Staged β€” Run scripts on your staged files before they are committed
  • πŸ€– Conventional Commit Lint β€” Make sure you & your teammates follow conventional commit
  • ⏰ Release Please β€” Generate your changelog by activating the release-please workflow
  • πŸ‘· Github Actions β€” Lint your code on PR
  • 🚘 Automatic Branch and Issue Autolink β€” Branch will be automatically created on issue assign, and auto linked on PR
  • πŸ”₯ Snippets β€” A collection of useful snippets
  • πŸ‘€ Open Graph Helper Function β€” Awesome open graph generated using og, fork it and deploy!
  • πŸ—Ί Site Map β€” Automatically generate sitemap.xml
  • πŸ“¦ Expansion Pack β€” Easily install common libraries, additional components, and configs.

See the πŸ‘‰ feature details and changelog πŸ‘ˆ for more.

You can also check all of the details and demos on my blog post:

Getting Started

1. Clone this template using one of the three ways

  1. Use this repository as template

    Disclosure: by using this repository as a template, there will be an attribution on your repository.

    I'll appreciate if you do, so this template can be known by others too πŸ˜„

    Use as template

  2. Using create-next-app

    npx create-next-app -e project-name

    If you still want to use pages directory (is not actively maintained) you can use this command

    npx create-next-app -e project-name
  3. Using degit

    npx degit theodorusclarence/ts-nextjs-tailwind-starter YOUR_APP_NAME
  4. Deploy to Vercel

    Deploy with Vercel

2. Install dependencies

It is encouraged to use yarn so the husky hooks can work properly.

yarn install

3. Run the development server

You can start the server using this command:

yarn dev

Open http://localhost:3000 with your browser to see the result. You can start editing the page by modifying src/pages/index.tsx.

4. Change defaults

There are some things you need to change including title, urls, favicons, etc.

Find all comments with !STARTERCONF, then follow the guide.

Don't forget to change the package name in package.json

5. Commit Message Convention

This starter is using conventional commits, it is mandatory to use it to commit changes.

Projects using ts-nextjs-tailwind-starter

Are you using this starter? Please add your page (and repo) to the end of the list via a Pull Request. πŸ˜ƒ

Expansion Pack πŸ“¦

This starter is now equipped with an expansion pack.

You can easily add expansion such as React Hook Form + Components, Storybook, and more just using a single command line.

Check out the expansion pack repository for the commands

App Router Update

Due to App Router update, the expansion pack is currently outdated. It will be updated in the future. You can still use them by copy and pasting the files.