---
title: Introduction
description: Welcome to the Turborepo documentation!
product: turborepo
type: overview
summary: Learn what Turborepo is, how it solves monorepo scaling problems, and how to navigate the documentation.
related:
- /docs/getting-started
- /docs/getting-started/installation
- /docs/community
---
# Introduction
What is Turborepo? [#what-is-turborepo]
Turborepo is a high-performance build system for JavaScript and TypeScript codebases. It is designed for scaling monorepos and also makes workflows in [single-package workspaces](/docs/guides/single-package-workspaces) faster, too.
From individual developers to the largest enterprise engineering organizations in the world, Turborepo is saving years of engineering time and millions of dollars in compute costs through a lightweight approach to optimizing the tasks you need to run in your repository.
The monorepo problem [#the-monorepo-problem]
Monorepos have many advantages - but **they struggle to scale**. Each workspace has its own test suite, its own linting, and its own build process. A single monorepo might have **thousands of tasks to execute**.
These slowdowns can dramatically affect the way your teams build software, especially at scale. Feedback loops need to be fast so developers can deliver high-quality code quickly.
The monorepo solution [#the-monorepo-solution]
**Turborepo solves your monorepo's scaling problem**. [Remote Cache](/docs/core-concepts/remote-caching) stores the result of all your tasks, meaning that **your CI never needs to do the same work twice**.
Additionally, task scheduling can be difficult in a monorepo. You may need to build, *then* test, *then* lint...
Turborepo **schedules your tasks for maximum speed**, parallelizing work across all available cores.
Turborepo can be **adopted incrementally** and you can **add it to any repository in just a few minutes**. It uses the `package.json` scripts you've already written, the dependencies you've already declared, and a single `turbo.json` file. You can **use it with any package manager**, like `npm`, `yarn` or `pnpm` since Turborepo leans on the conventions of the npm ecosystem.
How to use these docs [#how-to-use-these-docs]
We will do our best to keep jargon to a minimum - but there are some need-to-know words that will be important to understand as you read through the docs. We've created [a glossary page](https://vercel.com/docs/vercel-platform/glossary) to help you out in case you're learning about these terms.
Join the community [#join-the-community]
If you have questions about anything related to Turborepo, you're always welcome to ask the community on [GitHub Discussions](https://github.com/vercel/turborepo/discussions), [Vercel Community](https://community.vercel.com/tag/turborepo), and [Twitter](https://twitter.com/turborepo).
---
[View full sitemap](/sitemap.md)