+
+
+
+ Introducing{' '}
+ Nx Agents,
+ the next leap in CI.{' '}
+
-
-
- Smart
-
- , Fast
+ Read
+ more
+
+
+
+
+
+
+ Smart
+ {' '}
+ Monorepos
+
+
+ Fast
+ {' '}
+ CI
+
+
+ Nx is a{' '}
+ setDisplayBuildSystem(!displayBuildSystem)}
+ className={cx(
+ 'cursor-pointer hover:underline inline-flex items-center rounded-md bg-slate-50 my-0.5 px-1.5 py-0.5 transition text-md font-medium ring-1 ring-inset ring-slate-500/10 dark:bg-slate-400/10 dark:ring-slate-400/20',
+ displayBuildSystem && 'bg-yellow-500/10 dark:bg-yellow-500/20'
+ )}
+ >
+ build system
+ {' '}
+
+
+ optimized for monorepo
- Extensible
-
- Build System
+ {' '}
+ with{' '}
+ setDisplayTools(!displayTools)}
+ className={cx(
+ 'cursor-pointer hover:underline inline-flex items-center rounded-md bg-slate-50 my-0.5 px-1.5 py-0.5 transition text-md font-medium ring-1 ring-inset ring-slate-500/10 dark:bg-slate-400/10 dark:ring-slate-400/20',
+ displayTools && 'bg-cyan-500/10 dark:bg-cyan-500/20'
+ )}
+ >
+ built-in tooling
+ {' '}
+
+
+ for code scaffolding, module boundary enforcement, automated
+ updates
-
-
- Next generation build system with first class monorepo support and
- powerful integrations.
-
-
-
- Get started
-
+ {' '}
+ and{' '}
+ setDisplayCi(!displayCi)}
+ className={cx(
+ 'cursor-pointer hover:underline inline-flex items-center rounded-md bg-slate-50 my-0.5 px-1.5 py-0.5 transition text-md font-medium ring-1 ring-inset ring-slate-500/10 dark:bg-slate-400/10 dark:ring-slate-400/20',
+ displayCi && 'bg-fuchsia-500/10 dark:bg-fuchsia-500/20'
+ )}
+ >
+ advanced CI capabilities
+ {' '}
+
+
+ with caching and distribution
+
+ {' '}
+ . It helps your maintain and scale monorepos, both locally and on
+ CI.
+
+
+
+ Get started
+
- {
- setCopied(true);
- }}
+ {
+ setCopied(true);
+ }}
+ >
+
-
+
+ {copied ? (
+
+ ) : (
+
+ )}
+
+
+ npx create-nx-workspace
+
+
+
+
+ Built with
+
+ Rust for speed &
+
+ Rust for extensibility
+
+
+
+
+
+
+
+ {/**/}
+
diff --git a/nx-dev/ui-home/src/lib/improve-worst-ci-case.tsx b/nx-dev/ui-home/src/lib/improve-worst-ci-case.tsx
new file mode 100644
index 00000000000000..0e5cc31201170b
--- /dev/null
+++ b/nx-dev/ui-home/src/lib/improve-worst-ci-case.tsx
@@ -0,0 +1,33 @@
+import { ButtonLink } from '@nx/nx-dev/ui-common';
+
+export function ImproveWorstCiCase(): JSX.Element {
+ return (
+
+
+
+
+
+
+
+ Try it now!
+
+
+
+
+
+ );
+}
diff --git a/nx-dev/ui-home/src/lib/logo-cloud.tsx b/nx-dev/ui-home/src/lib/logo-cloud.tsx
index 57e6e97906459a..f0f748405e9dce 100644
--- a/nx-dev/ui-home/src/lib/logo-cloud.tsx
+++ b/nx-dev/ui-home/src/lib/logo-cloud.tsx
@@ -1,126 +1,150 @@
export function LogoCloud(): JSX.Element {
return (
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {/**/}
-
-
-
-
-
-
-
-
-
-
-
-
- {/**/}
-
+ //
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {/**/}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {/**/}
+ //
);
}
diff --git a/nx-dev/ui-home/src/lib/nx-is-fast.tsx b/nx-dev/ui-home/src/lib/nx-is-fast.tsx
index ced27a4cb71903..777b33eca0cd60 100644
--- a/nx-dev/ui-home/src/lib/nx-is-fast.tsx
+++ b/nx-dev/ui-home/src/lib/nx-is-fast.tsx
@@ -7,7 +7,7 @@ import {
ServerStackIcon,
} from '@heroicons/react/24/outline';
import { CogIcon } from '@heroicons/react/24/solid';
-import { SectionHeading } from '@nx/nx-dev/ui-common';
+import { Button, ButtonLink, SectionHeading } from '@nx/nx-dev/ui-common';
import {
animate,
motion,
@@ -67,20 +67,17 @@ export function NxIsFast(): JSX.Element {
}, [controls, inView, progress]);
return (
-
+
-
+ {/*
Nx is fast
-
+ */}
-
-
+
+ {/*
-
{' '}
from its cache.
-
-
- -
-
-
-
-
-
-
- Distributed task execution (DTE)
-
-
- -
- Smart, automated, dynamic distribution of tasks across multiple
- machines to get{' '}
-
- maximum parallelization and CPU efficient
- {' '}
- CI runs.
-
-
-
- -
-
-
-
-
-
-
-
- Remote caching
-
-
- -
-
- Share your local computation cache
- {' '}
- with team mates and your CI system for maximum efficiency.
-
-
-
+
+
+ Learn more about caching
+
+
+ */}
+ {/**/}
+ {/* - */}
+ {/* */}
+ {/* */}
+ {/* */}
+ {/* */}
+ {/*
*/}
+ {/* */}
+ {/* Distributed task execution (DTE)*/}
+ {/*
*/}
+ {/* */}
+ {/* - */}
+ {/* Smart, automated, dynamic distribution of tasks across multiple*/}
+ {/* machines to get{' '}*/}
+ {/* */}
+ {/* maximum parallelization and CPU efficient*/}
+ {/* {' '}*/}
+ {/* CI runs.*/}
+ {/*
*/}
+ {/**/}
+ {/**/}
+ {/* - */}
+ {/* */}
+ {/* */}
+ {/* */}
+ {/* */}
+ {/* */}
+ {/*
*/}
+ {/* */}
+ {/* Remote caching*/}
+ {/*
*/}
+ {/* */}
+ {/* - */}
+ {/* */}
+ {/* Share your local computation cache*/}
+ {/* {' '}*/}
+ {/* with team mates and your CI system for maximum efficiency.*/}
+ {/*
*/}
+ {/**/}
+ {/*
-
{' '}
and what tasks need to be re-run.
-
+
+
+ Learn more about the "affect" command
+
+
+ */}
diff --git a/nx-dev/ui-home/src/lib/nx-statistics.tsx b/nx-dev/ui-home/src/lib/nx-statistics.tsx
index ccc4624ae86184..c4e3f4d2f0d98f 100644
--- a/nx-dev/ui-home/src/lib/nx-statistics.tsx
+++ b/nx-dev/ui-home/src/lib/nx-statistics.tsx
@@ -1,14 +1,15 @@
import { SectionHeading } from '@nx/nx-dev/ui-common';
+import { LogoCloud } from './logo-cloud';
export function NxStatistics(): JSX.Element {
return (
-
-
+
+
Trusted by developers, enterprises and open-source projects.
-
+
Whether your workspace{' '}
has a single project or a thousand
@@ -17,6 +18,9 @@ export function NxStatistics(): JSX.Element {
+ {/*LOGO CLOUD*/}
+
+ {/*STATISTICS*/}
@@ -28,7 +32,7 @@ export function NxStatistics(): JSX.Element {
developers use it every day
-
- 1.5M+
+ 2M+
@@ -44,7 +48,7 @@ export function NxStatistics(): JSX.Element {
monthly npm downloads
-
- 11M+
+ 16M+
diff --git a/nx-dev/ui-home/src/lib/nx-with-ci.tsx b/nx-dev/ui-home/src/lib/nx-with-ci.tsx
new file mode 100644
index 00000000000000..065ea445180d30
--- /dev/null
+++ b/nx-dev/ui-home/src/lib/nx-with-ci.tsx
@@ -0,0 +1,214 @@
+import {
+ CloudArrowDownIcon,
+ CogIcon,
+ ServerStackIcon,
+} from '@heroicons/react/24/outline';
+import { SectionHeading } from '@nx/nx-dev/ui-common';
+import {
+ animate,
+ motion,
+ MotionValue,
+ useAnimation,
+ useMotionValue,
+ useTransform,
+} from 'framer-motion';
+import { useEffect, useRef } from 'react';
+import { useInView } from 'react-intersection-observer';
+
+function Counter({
+ from = 0,
+ to = 10,
+ round = 0,
+ progress,
+}: {
+ from: number;
+ to: number;
+ round: number;
+ progress: MotionValue;
+}): JSX.Element {
+ const ref = useRef();
+ const value = useTransform(progress, [0, 1000], [from, to], {
+ clamp: false,
+ });
+
+ const { format: formatNumber } = new Intl.NumberFormat('en-US', {
+ minimumFractionDigits: round,
+ maximumFractionDigits: round,
+ });
+
+ useEffect(() => {
+ return value.onChange((v) => {
+ if (ref !== undefined && ref.current !== undefined)
+ ref.current.firstChild.data = formatNumber(
+ round === 0 ? Math.round(v) : Number(v.toFixed(round))
+ );
+ });
+ }, [formatNumber, round, value]);
+
+ return {formatNumber(value.get())};
+}
+
+export function NxWithCi(): JSX.Element {
+ const progress: MotionValue = useMotionValue(0);
+ const controls = useAnimation();
+ const [ref, inView] = useInView({ triggerOnce: true });
+
+ useEffect(() => {
+ if (!inView) return;
+ controls.start('visible');
+ animate(progress, 1000, {
+ type: 'spring',
+ damping: 100,
+ });
+ }, [controls, inView, progress]);
+
+ return (
+
+
+
+
+
+ Smart project ecosystem
+
+
+ Peak CI performance, no matter the project size
+
+
+
+
+ Nx understands and help you modularize your code, it can ensure
+ top-tier performance and scalability{' '}
+
+ from your local environment to CI executions
+ {' '}
+ with native task and compute distribution.
+
+
+
+
+
+ Most workspaces see
+
+
+ 3 times reduction in CI time
+
+
+
+ Average
+
+
+ 2.5 times reduction in
+ computation time
+
+
+
+
+
+
+
+
+
+ -
+
DESCRIPTION HERE - CHANGE TEXT
+
+ -
+
+
+
+ Nx Cache
+
+
+
+ Local and remote caching solution.
+
+
+
+
+
+
+
+
+
+ -
+
DESCRIPTION HERE - CHANGE TEXT
+
+ -
+
+
+
+ Native task & compute distribution.
+
+
+
+
+
+
+
+
+
+ -
+
DESCRIPTION HERE - CHANGE TEXT
+
+ -
+
+
+
+ Full CI solution with distribution at its core.
+
+
+
+
+
+
+
+
+
+ );
+}
+ + Smart + {' '} + Monorepos + + + Fast + {' '} + CI +
+
+ Nx is a{' '}
+ setDisplayBuildSystem(!displayBuildSystem)}
+ className={cx(
+ 'cursor-pointer hover:underline inline-flex items-center rounded-md bg-slate-50 my-0.5 px-1.5 py-0.5 transition text-md font-medium ring-1 ring-inset ring-slate-500/10 dark:bg-slate-400/10 dark:ring-slate-400/20',
+ displayBuildSystem && 'bg-yellow-500/10 dark:bg-yellow-500/20'
+ )}
+ >
+ build system
+ {' '}
+
+
+ optimized for monorepo
- Extensible
-
- Build System
+ {' '}
+ with{' '}
+ setDisplayTools(!displayTools)}
+ className={cx(
+ 'cursor-pointer hover:underline inline-flex items-center rounded-md bg-slate-50 my-0.5 px-1.5 py-0.5 transition text-md font-medium ring-1 ring-inset ring-slate-500/10 dark:bg-slate-400/10 dark:ring-slate-400/20',
+ displayTools && 'bg-cyan-500/10 dark:bg-cyan-500/20'
+ )}
+ >
+ built-in tooling
+ {' '}
+
+
+ for code scaffolding, module boundary enforcement, automated
+ updates
-
-
- Next generation build system with first class monorepo support and
- powerful integrations.
-
-
-
- Get started
-
+ {' '}
+ and{' '}
+ setDisplayCi(!displayCi)}
+ className={cx(
+ 'cursor-pointer hover:underline inline-flex items-center rounded-md bg-slate-50 my-0.5 px-1.5 py-0.5 transition text-md font-medium ring-1 ring-inset ring-slate-500/10 dark:bg-slate-400/10 dark:ring-slate-400/20',
+ displayCi && 'bg-fuchsia-500/10 dark:bg-fuchsia-500/20'
+ )}
+ >
+ advanced CI capabilities
+ {' '}
+
+
+ with caching and distribution
+
+ {' '}
+ . It helps your maintain and scale monorepos, both locally and on
+ CI.
+
+
+
+ Get started
+
- {
- setCopied(true);
- }}
+ {
+ setCopied(true);
+ }}
+ >
+
-
+
+ {copied ? (
+
+ ) : (
+
+ )}
+
+
+ npx create-nx-workspace
+
+
+
+
+ Built with
+
+ Rust for speed &
+
+ Rust for extensibility
+
+
- Next generation build system with first class monorepo support and - powerful integrations. -
--
-
-
{' '} from its cache. - --- -
--- - -- - Distributed task execution (DTE) -
-- - Smart, automated, dynamic distribution of tasks across multiple - machines to get{' '} - - maximum parallelization and CPU efficient - {' '} - CI runs. -
---- -
--- - - -- - Remote caching -
-- - - Share your local computation cache - {' '} - with team mates and your CI system for maximum efficiency. -
-+*/} + {/*+++ Learn more about caching + +*/} + {/**/} + {/*- */} + {/*
*/} + {/**/} + {/**/} + {/* */} + {/* */} + {/**/} + {/* */} + {/* Distributed task execution (DTE)*/} + {/*
*/} + {/*- */} + {/* Smart, automated, dynamic distribution of tasks across multiple*/} + {/* machines to get{' '}*/} + {/* */} + {/* maximum parallelization and CPU efficient*/} + {/* {' '}*/} + {/* CI runs.*/} + {/*
*/} + {/**/} + {/**/} + {/*- */} + {/*
*/} + {/**/} + {/**/} + {/* */} + {/* */} + {/* */} + {/**/} + {/* */} + {/* Remote caching*/} + {/*
*/} + {/*- */} + {/* */} + {/* Share your local computation cache*/} + {/* {' '}*/} + {/* with team mates and your CI system for maximum efficiency.*/} + {/*
*/} + {/*{' '} and what tasks need to be re-run. - +++ Learn more about the "affect" command + + - -
- - 1.5M+ + 2M+
- - 11M+ + 16M+
-
+
DESCRIPTION HERE - CHANGE TEXT
+
+ -
+ +++ + Nx Cache + +++ Local and remote caching solution. ++
+
+
-
+
DESCRIPTION HERE - CHANGE TEXT
+
+ -
+ + +++ Native task & compute distribution. ++
+
+
-
+
DESCRIPTION HERE - CHANGE TEXT
+
+ -
+ + +++ Full CI solution with distribution at its core. ++
+
+
-
+ {/*
+
Whether your workspace{' '} has a single project or a thousand @@ -17,6 +18,9 @@ export function NxStatistics(): JSX.Element {
+ Nx understands and help you modularize your code, it can ensure + top-tier performance and scalability{' '} + + from your local environment to CI executions + {' '} + with native task and compute distribution. +
+-
+