From fdf36fee42e2bc39408c22e66372ce200dcd05a3 Mon Sep 17 00:00:00 2001
From: Matt Pocock
Date: Fri, 9 Sep 2022 15:18:22 +0100
Subject: [PATCH 1/9] Re-jigged the landing and getting started pages
---
docs/next.config.js | 5 +++
docs/pages/docs/_meta.json | 4 +-
docs/pages/docs/core-concepts/_meta.json | 1 +
.../docs/core-concepts/why-turborepo.mdx | 19 +++++++++
docs/pages/docs/getting-started.mdx | 19 ---------
docs/pages/docs/index.mdx | 40 +++++--------------
6 files changed, 39 insertions(+), 49 deletions(-)
create mode 100644 docs/pages/docs/core-concepts/why-turborepo.mdx
delete mode 100644 docs/pages/docs/getting-started.mdx
diff --git a/docs/next.config.js b/docs/next.config.js
index 7f0f6d390ae91..0b423c128f76c 100644
--- a/docs/next.config.js
+++ b/docs/next.config.js
@@ -23,6 +23,11 @@ module.exports = withNextra({
destination: "/docs/core-concepts/running-tasks",
permanent: true,
},
+ {
+ source: "/docs/getting-started",
+ destination: "/docs",
+ permanent: true,
+ },
{
source: "/discord{/}?",
permanent: true,
diff --git a/docs/pages/docs/_meta.json b/docs/pages/docs/_meta.json
index f7db8b04c233d..30d68835c8142 100644
--- a/docs/pages/docs/_meta.json
+++ b/docs/pages/docs/_meta.json
@@ -1,5 +1,7 @@
{
- "index": "Introduction",
+ "index": {
+ "title": "Quickstart"
+ },
"getting-started": "Getting Started",
"core-concepts": "Core Concepts",
"ci": "CI Recipes",
diff --git a/docs/pages/docs/core-concepts/_meta.json b/docs/pages/docs/core-concepts/_meta.json
index 4f19e3db4ed1a..dcdc4d3a243b2 100644
--- a/docs/pages/docs/core-concepts/_meta.json
+++ b/docs/pages/docs/core-concepts/_meta.json
@@ -1,4 +1,5 @@
{
+ "why-turborepo": "Why Turborepo?",
"running-tasks": "Running Tasks",
"filtering": "Filtering Workspaces",
"caching": "Caching",
diff --git a/docs/pages/docs/core-concepts/why-turborepo.mdx b/docs/pages/docs/core-concepts/why-turborepo.mdx
new file mode 100644
index 0000000000000..98167de7e7e70
--- /dev/null
+++ b/docs/pages/docs/core-concepts/why-turborepo.mdx
@@ -0,0 +1,19 @@
+# Why Turborepo?
+
+## The problem
+
+Monorepos have many advantages - but **they struggle to scale**. Each workspace you add has its own test suite, its own linting and its own build process. A single monorepo might have **hundreds of tasks to perform**.
+
+## The solution
+
+**Turborepo solves your monorepo's scaling problem**. Our remote cache stores the result of all your tasks, meaning that **your CI never needs to do the same work twice**.
+
+Task scheduling can be difficult in a monorepo. Imagine `yarn build` needs to run before `yarn test`, across all your workspaces. Turborepo **can schedule your tasks for maximum speed**, across all available cores.
+
+Turborepo can be **adopted incrementally**. 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`. You can add it to any monorepo in just a few minutes.
+
+## What turborepo is not
+
+Turborepo **doesn't handle package installation**. Tools like `npm`, `pnpm` or `yarn` already do that brilliantly. But they run tasks inefficiently, meaning slow CI builds.
+
+We recommend that **Turborepo runs your tasks**, and your favorite package manager installs your packages.
diff --git a/docs/pages/docs/getting-started.mdx b/docs/pages/docs/getting-started.mdx
deleted file mode 100644
index 2013d34eb528c..0000000000000
--- a/docs/pages/docs/getting-started.mdx
+++ /dev/null
@@ -1,19 +0,0 @@
----
-title: Getting Started with Turborepo
-description: Create your first monorepo or add Turborepo to an existing project.
----
-
-import { QuickStartArea } from "../../components/QuickStart";
-import { ExamplesArea } from "../../components/ExamplesArea";
-
-# Getting Started with Turborepo
-
-Turborepo is a blazing fast build system for JavaScript/TypeScript monorepos: codebases containing multiple projects, often using multiple frameworks, in a single, unified code repository. Turborepo leverages advanced build system ideas and techniques to speed up development, without the configuration and complexity. Unlike other build systems, Turborepo is designed to be incrementally adopted, so you can gradually and partially add it to most codebases in a few minutes.
-
-
-
-## Examples
-
-You can also clone a Turborepo starter repository to get a head start on your monorepo. For even more examples and starters, see the [Turborepo examples directory on GitHub](https://github.com/vercel/turborepo/tree/main/examples).
-
-
diff --git a/docs/pages/docs/index.mdx b/docs/pages/docs/index.mdx
index a2c81693347b8..c3e23c242ea0b 100644
--- a/docs/pages/docs/index.mdx
+++ b/docs/pages/docs/index.mdx
@@ -1,39 +1,21 @@
---
-title: Documentation
-description: Turborepo is a high-performance build system for JavaScript and TypeScript codebases.
+title: Turborepo Quickstart
+description: Create your first monorepo or add Turborepo to an existing project.
---
-import { DocsFeatures } from "../../components/Features";
+import { QuickStartArea } from "../../components/QuickStart";
+import { ExamplesArea } from "../../components/ExamplesArea";
-# Turborepo Documentation
+# Turborepo Quickstart
-
+Turborepo is a blazing fast build system for JavaScript/TypeScript monorepos: codebases containing multiple projects, often using multiple frameworks, in a single, unified code repository.
-Turborepo is a blazing fast build system for JavaScript/TypeScript _monorepos_: codebases containing multiple
-projects, often using multiple frameworks, in a single, unified
-code repository.
+Turborepo leverages advanced build system ideas and techniques to speed up development, without the configuration and complexity. Unlike other build systems, Turborepo is designed to be incrementally adopted, so you can gradually and partially add it to most codebases in a few minutes.
-## The problem
+
-Monorepos have many advantages - but **they struggle to scale**. Each workspace you add has its own test suite, its own linting and its own build process. A single monorepo might have **hundreds of tasks to perform**.
+## Examples
-## The solution
+You can also clone a Turborepo starter repository to get a head start on your monorepo. For even more examples and starters, see the [Turborepo examples directory on GitHub](https://github.com/vercel/turborepo/tree/main/examples).
-**Turborepo solves your monorepo's scaling problem**. Our remote cache stores the result of all your tasks, meaning that **your CI never needs to do the same work twice**.
-
-Task scheduling can be difficult in a monorepo. Imagine `yarn build` needs to run before `yarn test`, across all your workspaces. Turborepo **can schedule your tasks for maximum speed**, across all available cores.
-
-Turborepo can be **adopted incrementally**. 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`. You can add it to any monorepo in just a few minutes.
-
-## Features
-
-- **Never do the same work twice**: Turborepo will remember the output of tasks you (or your CI) ran and skip work that's already been done.
-- **Optimized scheduling**: Execute tasks using every core at maximum parallelism without wasting idle CPUs.
-- **Remote caching**: Share a remote cache across your organization for faster builds on CI/CD.
-- **Zero runtime overhead**: Turborepo doesn't interfere with your runtime code or touch your sourcemaps.
-
-## What turborepo is not
-
-Turborepo **doesn't handle package installation**. Tools like `npm`, `pnpm` or `yarn` already do that brilliantly. But they run tasks inefficiently, meaning slow CI builds.
-
-We recommend that **Turborepo runs your tasks**, and your favorite package manager installs your packages.
+
From 099ad59a4c395e86463fd37f8341e0881e9836f5 Mon Sep 17 00:00:00 2001
From: Matt Pocock
Date: Fri, 9 Sep 2022 15:54:36 +0100
Subject: [PATCH 2/9] Added Learn More area
---
docs/components/Feature.tsx | 8 +++++---
docs/components/QuickStart.tsx | 36 ++++++++++++++++++++++++++++++----
docs/pages/docs/index.mdx | 10 ++++++++--
3 files changed, 45 insertions(+), 9 deletions(-)
diff --git a/docs/components/Feature.tsx b/docs/components/Feature.tsx
index abbd20219675d..cb3ec54ed4c59 100644
--- a/docs/components/Feature.tsx
+++ b/docs/components/Feature.tsx
@@ -13,13 +13,15 @@ const DetailedFeatureInner = (props: { feature: FeatureProps["feature"] }) => {
<>
+ );
+};
diff --git a/docs/pages/docs/index.mdx b/docs/pages/docs/index.mdx
index c3e23c242ea0b..0d616c49fb560 100644
--- a/docs/pages/docs/index.mdx
+++ b/docs/pages/docs/index.mdx
@@ -3,17 +3,23 @@ title: Turborepo Quickstart
description: Create your first monorepo or add Turborepo to an existing project.
---
-import { QuickStartArea } from "../../components/QuickStart";
+import { QuickStartArea, LearnMoreArea } from "../../components/QuickStart";
import { ExamplesArea } from "../../components/ExamplesArea";
# Turborepo Quickstart
Turborepo is a blazing fast build system for JavaScript/TypeScript monorepos: codebases containing multiple projects, often using multiple frameworks, in a single, unified code repository.
-Turborepo leverages advanced build system ideas and techniques to speed up development, without the configuration and complexity. Unlike other build systems, Turborepo is designed to be incrementally adopted, so you can gradually and partially add it to most codebases in a few minutes.
+Unlike other build systems, Turborepo is designed to be incrementally adopted, so you can gradually and partially add it to most codebases in a few minutes.
+## Features
+
+Turborepo leverages advanced build system ideas and techniques to speed up development, without the configuration and complexity.
+
+
+
## Examples
You can also clone a Turborepo starter repository to get a head start on your monorepo. For even more examples and starters, see the [Turborepo examples directory on GitHub](https://github.com/vercel/turborepo/tree/main/examples).
From 43fc904d94d3097b934a85a685fcd14ef73e677a Mon Sep 17 00:00:00 2001
From: Matt Pocock
Date: Fri, 9 Sep 2022 16:03:00 +0100
Subject: [PATCH 3/9] Rephrased some things on the home page
---
docs/pages/docs/index.mdx | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/docs/pages/docs/index.mdx b/docs/pages/docs/index.mdx
index 0d616c49fb560..c6e1a10bef260 100644
--- a/docs/pages/docs/index.mdx
+++ b/docs/pages/docs/index.mdx
@@ -8,15 +8,15 @@ import { ExamplesArea } from "../../components/ExamplesArea";
# Turborepo Quickstart
-Turborepo is a blazing fast build system for JavaScript/TypeScript monorepos: codebases containing multiple projects, often using multiple frameworks, in a single, unified code repository.
+Turborepo is a smart **build system for JavaScript/TypeScript monorepos**: codebases containing multiple projects, often using multiple frameworks, in a single, unified code repository.
-Unlike other build systems, Turborepo is designed to be incrementally adopted, so you can gradually and partially add it to most codebases in a few minutes.
+Unlike other build systems, Turborepo is designed to be **incrementally adopted**, so you can add it to most codebases in a few minutes.
## Features
-Turborepo leverages advanced build system ideas and techniques to speed up development, without the configuration and complexity.
+Turborepo leverages advanced build system techniques to speed up development, **both on your local machine and your CI/CD**.
From d398a89309048bb78830b0e7d9e7db8f3cc9455c Mon Sep 17 00:00:00 2001
From: Matt Pocock
Date: Fri, 9 Sep 2022 16:37:11 +0100
Subject: [PATCH 4/9] Improved features boxes
---
docs/components/Feature.tsx | 50 ++++++++++++++++++++++++++++++++-----
1 file changed, 44 insertions(+), 6 deletions(-)
diff --git a/docs/components/Feature.tsx b/docs/components/Feature.tsx
index cb3ec54ed4c59..a7b55445b9a29 100644
--- a/docs/components/Feature.tsx
+++ b/docs/components/Feature.tsx
@@ -11,12 +11,16 @@ const DetailedFeatureInner = (props: { feature: FeatureProps["feature"] }) => {
const { Icon, name, description } = props.feature;
return (
<>
+
+