create-turbo

The easiest way to get started with Turborepo is by using create-turbo. Use this CLI tool to quickly start building a new monorepo, with everything set up for you.

Terminal
npx create-turbo@latest

Start with an example

The community curates a set of examples to showcase ways to use common tools and libraries with Turborepo. To bootstrap your monorepo with one of the examples, use the --example flag:

Terminal
npx create-turbo@latest --example [example-name]

Use any of the example's names below:

Core-maintained examples

The following examples are maintained by the Turborepo core team. Dependencies are kept as up-to-date as possible and GitHub Issues are accepted and addressed for these examples.

NameDescription
BasicBasic monorepo example with two Next.js applications
Kitchen sinkMultiple frameworks, both frontend and backend
Non-monorepoA standalone application using Turborepo
Shell commandsA nearly empty Turborepo - useful for creating reproductions for GitHub Issues
SvelteKitMonorepo with multiple SvelteKit apps sharing a UI Library
TailwindCSSMonorepo with multiple Next.js apps sharing a UI library built with TailwindCSS

Community-maintained examples

The community curates a set of examples to showcase ways to use common tools and libraries with Turborepo. To bootstrap your monorepo with one of the examples, use the --example flag:

NameDescription
Design SystemUnify your site's look and feel by sharing a design system across multiple apps
AngularMinimal Turborepo example for learning the fundamentals
Yarn BerryMonorepo example using Yarn Berry (Yarn 3)
ChangesetsConfigured to publish packages via Changesets
DockerMonorepo with an Express API and a Next.js App deployed with Docker utilizing turbo prune
GatsbyMonorepo with a Gatsby.js and a Next.js app both sharing a UI Library
Nest.jsMonorepo with Nest.js
npm workspacesMonorepo example using NPM workspaces
PrismaMonorepo with a Next.js App fully configured with Prisma
React NativeSimple React Native & Next.js monorepo with a shared UI library
RollupMonorepo with a single Next.js app sharing a UI library bundled with Rollup
Solid.jsMonorepo example with SolidJS applications
typeormMonorepo with a Next.js App fully configured with typeorm
ViteMonorepo with multiple Vanilla JS apps bundled with Vite, sharing a UI Library
Vite + ReactMonorepo example with Vite and React
VitestMonorepo example with Vitest for testing
Vue/NuxtMonorepo with Vue and Nuxt, sharing a UI Library
YarnMonorepo example using Yarn workspaces

Use a community example

You can also use a custom starter or example by using a GitHub URL. This is useful for using your own custom starters or examples from the community.

Terminal
npx create-turbo@latest --example [github-url]

Options

Terminal
-m, --package-manager to use (choices: "npm", "yarn", "pnpm", "bun")

--skip-install: Do not run a package manager install after creating the project (Default: false)

--skip-transforms: Do not run any code transformation after creating the project (Default: false)

--turbo-version <version>: Use a specific version of turbo (default: latest)

-e, --example [name]|[github-url]: An example to bootstrap the app with. You can use an example name from the official Turborepo repo or a GitHub URL. The URL can use any branch and/or subdirectory

-p, --example-path <path-to-example>: In a rare case, your GitHub URL might contain a branch name with a slash (e.g. bug/fix-1) and the path to the example (e.g. foo/bar). In this case, you must specify the path to the example separately: --example-path foo/bar

-v, --version:  Output the current version

-h, --help: Display help for command