Skip to content

Commit

Permalink
docs(core): re-adjust entry page tutorial boxes
Browse files Browse the repository at this point in the history
  • Loading branch information
juristr committed Mar 31, 2023
1 parent 8e570c8 commit 0c505bd
Showing 1 changed file with 39 additions and 35 deletions.
74 changes: 39 additions & 35 deletions docs/shared/getting-started/intro.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,38 @@
# Intro to Nx

Nx is a smart, fast and extensible build system with first class monorepo support and powerful integrations.
Nx is a powerful open-source development toolkit designed to help developers build high-quality software faster. It provides tools and techniques for enhancing developer productivity, optimizing application performance, and maintaining code quality.

You can use Nx to quickly scaffold a new standalone project or even an entire monorepo. It will grow with you as you need it.

{% cards cols="3" %}
{% persona type="extend" title="Add to an Existing Project or Monorepo" url="/recipes/adopting-nx" %}
Nx can be incrementally added to your existing project.

- [Adopt Nx on your existing project](/recipes/adopting-nx)

{% /persona %}

{% persona type="extend" title="New Monorepo" url="/getting-started/intro#start-a-new-monorepo" %}

Create your new package-based or integrated monorepo with Nx.

- [Learn how to setup a new monorepo](/getting-started/intro#start-a-new-monorepo)

{% /persona %}

{% persona type="extend" title="New Standalone Project" url="/getting-started/intro#start-a-new-standalone-project" %}

Not just monorepos! Use Nx for your next standlone React, Angular or Node project.

- [Get started with your integrated repo](/getting-started/intro#start-a-new-standalone-project)

{% /persona %}

{% /cards %}

## Start a New Monorepo

Nx has been designed from the ground up to scale well with monorepos. Its modular architecture allows you to adopt Nx for simple package-based monorepos in combination with NPM, Yarn or PNPM workspaces, or create a fully integrated and managed monorepo that leverages Nx plugins. Learn more with the tutorials below.

{% personas %}
{% persona type="javascript" title="New Package-Based Repo" url="/tutorials/package-based-repo-tutorial" %}
Expand All @@ -20,6 +52,12 @@ Get a pre-configured setup. Nx configures your favorite frameworks and lets you

{% /personas %}

{% /cards %}

## Start a new Standalone Project

You can still benefit from Nx even if you don't have a monorepo. Nx plugins provide generators that help you not only scaffold a new standlone project with pre-configured tooling, but also to modularize your codebase with local libraries.

{% cards cols="3" %}

{% persona type="react" title="Create a Standalone React app" url="/tutorials/react-standalone-tutorial" %}
Expand Down Expand Up @@ -47,37 +85,3 @@ A modern Node server with scaffolding for Express, Fastify or Koa. There's also
{% /persona %}

{% /cards %}

## Adopting Nx

Coming from an existing project and want to adopt Nx? We have a few recipes to help you get started.

{% cards cols="2" %}

{% card title="Add to Existing Monorepo" description="Add Nx to your existing NPM/YARN/PNPM workspace" type="documentation" url="/recipes/adopting-nx/adding-to-monorepo" /%}

{% card title="Add to any Project" description="Add Nx to an standalone project" type="documentation" url="/recipes/adopting-nx/adding-to-existing-project" /%}

{% card title="Migrate from CRA" description="Migrate from a CRA setup and automatically switch to Vite" type="documentation" url="/recipes/adopting-nx/migration-cra" /%}

{% card title="Migrate from Angular CLI" description="Automatically migrate from the Angular CLI" type="documentation" url="/recipes/adopting-nx/migration-angular" /%}

{% /cards %}

## Why Nx?

Nx has two main goals:

- **Speed up your existing workflow with minimum effort.**
- **Provide a first-rate developer experience no matter the size of the repo.**

It achieves that speed via [computation caching](/core-features/cache-task-results), by only [run tasks affected by a given change](/core-features/run-tasks#run-tasks-affected-by-a-pr) and by being able to [distribute your task execution](/core-features/distribute-task-execution) across multiple agents in CI.

High quality DX is implemented via [code generators](/plugin-features/use-code-generators), [IDE extensions](/core-features/integrate-with-editors#integrate-with-editors) and by helping you [keep your codebase evergreen](/core-features/automate-updating-dependencies).

## How does Nx compare to other tools?

If you know other tools in the monorepo space, here is how Nx compares:

- [Monorepo.tools](https://monorepo.tools)
- [Nx and Turborepo](/more-concepts/turbo-and-nx)

0 comments on commit 0c505bd

Please sign in to comment.