diff --git a/nx-dev/nx-dev/app/powerpack/page.tsx b/nx-dev/nx-dev/app/powerpack/page.tsx
index d3f157355ede9..1b03b6cfe51ec 100644
--- a/nx-dev/nx-dev/app/powerpack/page.tsx
+++ b/nx-dev/nx-dev/app/powerpack/page.tsx
@@ -5,9 +5,9 @@ import {
Hero,
PowerpackFeatures,
} from '@nx/nx-dev/ui-powerpack';
-import { contactButton } from '../../lib/components/headerCtaConfigs';
import type { Metadata } from 'next';
+import { type ReactElement } from 'react';
export const metadata: Metadata = {
title: 'Nx Powerpack',
@@ -32,10 +32,10 @@ export const metadata: Metadata = {
},
};
-export default function NxPowerPackPage(): JSX.Element {
+export default function NxPowerPackPage(): ReactElement {
const headerCTAConfig: ButtonLinkProps[] = [
{
- href: 'https://cloud.nx.app/powerpack/purchase?licenseBusinessType=small&utm_source=nx.dev&utm_medium=referral&utm_campaign=nx-powerpackurl',
+ href: '/powerpack/trial',
variant: 'primary',
size: 'small',
title: 'Request a free trial',
diff --git a/nx-dev/nx-dev/lib/components/headerCtaConfigs.tsx b/nx-dev/nx-dev/lib/components/headerCtaConfigs.tsx
index 1d773b90efffc..bf4cc26c89c6f 100644
--- a/nx-dev/nx-dev/lib/components/headerCtaConfigs.tsx
+++ b/nx-dev/nx-dev/lib/components/headerCtaConfigs.tsx
@@ -2,7 +2,7 @@ import { ButtonLinkProps } from '@nx/nx-dev/ui-common';
import { NxCloudAnimatedIcon } from '@nx/nx-dev/ui-icons';
export const requestFreeTrial: ButtonLinkProps = {
- href: '/contact/sales',
+ href: '/enterprise/trial',
variant: 'primary',
size: 'small',
title: 'Request a free trial',
diff --git a/nx-dev/nx-dev/pages/contact/sales.tsx b/nx-dev/nx-dev/pages/contact/sales.tsx
index 4b84ea74b5c2d..1636bd89e2479 100644
--- a/nx-dev/nx-dev/pages/contact/sales.tsx
+++ b/nx-dev/nx-dev/pages/contact/sales.tsx
@@ -1,21 +1,22 @@
import { useRouter } from 'next/router';
import { NextSeo } from 'next-seo';
import { Footer, Header } from '@nx/nx-dev/ui-common';
-import { TalkToOurSalesTeam } from '@nx/nx-dev/ui-contact';
+import { TalkToOurTeam } from '@nx/nx-dev/ui-contact';
+import { type ReactElement } from 'react';
-export function ContactSales(): JSX.Element {
+export function ContactSales(): ReactElement {
const router = useRouter();
return (
<>
-
+
diff --git a/nx-dev/nx-dev/pages/enterprise.tsx b/nx-dev/nx-dev/pages/enterprise/index.tsx
similarity index 96%
rename from nx-dev/nx-dev/pages/enterprise.tsx
rename to nx-dev/nx-dev/pages/enterprise/index.tsx
index e1e56019bc5b9..a3c3f1bb6bc79 100644
--- a/nx-dev/nx-dev/pages/enterprise.tsx
+++ b/nx-dev/nx-dev/pages/enterprise/index.tsx
@@ -14,7 +14,7 @@ import {
TestimonialCarousel,
VmwareTestimonial,
} from '@nx/nx-dev/ui-enterprise';
-import { requestFreeTrial } from '../lib/components/headerCtaConfigs';
+import { requestFreeTrial } from '../../lib/components/headerCtaConfigs';
import { ReactElement } from 'react';
export function Enterprise(): ReactElement {
diff --git a/nx-dev/nx-dev/pages/enterprise/trial.tsx b/nx-dev/nx-dev/pages/enterprise/trial.tsx
new file mode 100644
index 0000000000000..b926468155698
--- /dev/null
+++ b/nx-dev/nx-dev/pages/enterprise/trial.tsx
@@ -0,0 +1,44 @@
+import { useRouter } from 'next/router';
+import { NextSeo } from 'next-seo';
+import { Footer, Header } from '@nx/nx-dev/ui-common';
+import { TrialNxEnterprise } from '@nx/nx-dev/ui-enterprise';
+import { type ReactElement } from 'react';
+
+export function EnterpriseTrial(): ReactElement {
+ const router = useRouter();
+
+ return (
+ <>
+
+
+
+
+
+
+
+
+ >
+ );
+}
+
+export default EnterpriseTrial;
diff --git a/nx-dev/nx-dev/pages/powerpack/trial.tsx b/nx-dev/nx-dev/pages/powerpack/trial.tsx
new file mode 100644
index 0000000000000..6ba6cca6f2d42
--- /dev/null
+++ b/nx-dev/nx-dev/pages/powerpack/trial.tsx
@@ -0,0 +1,45 @@
+import { useRouter } from 'next/router';
+import { NextSeo } from 'next-seo';
+import { Footer, Header } from '@nx/nx-dev/ui-common';
+import { TrialNxPowerpack } from '@nx/nx-dev/ui-powerpack';
+import { type ReactElement } from 'react';
+
+export function PowerpackTrial(): ReactElement {
+ const router = useRouter();
+
+ return (
+ <>
+
+
+
+
+
+
+
+
+ >
+ );
+}
+
+export default PowerpackTrial;
diff --git a/nx-dev/nx-dev/pages/whitepaper-fast-ci.tsx b/nx-dev/nx-dev/pages/whitepaper-fast-ci.tsx
new file mode 100644
index 0000000000000..5e87e6e97d4f1
--- /dev/null
+++ b/nx-dev/nx-dev/pages/whitepaper-fast-ci.tsx
@@ -0,0 +1,159 @@
+import { useRouter } from 'next/router';
+import { NextSeo } from 'next-seo';
+import { Footer, Header } from '@nx/nx-dev/ui-common';
+import { SectionHeading, HubspotForm } from '@nx/nx-dev/ui-common';
+import {
+ CapitalOneIcon,
+ CaterpillarIcon,
+ RoyalBankOfCanadaIcon,
+ ShopifyIcon,
+ SiriusxmAlternateIcon,
+} from '@nx/nx-dev/ui-icons';
+import { type ReactElement } from 'react';
+import { ArrowLongRightIcon } from '@heroicons/react/24/outline';
+
+export function WhitePaperFastCI(): ReactElement {
+ const router = useRouter();
+
+ return (
+ <>
+
+
+
+
+
+
+
+
+ Enterprise CI, Reimagined
+
+
+ Up to 70% Faster Builds for Monorepos
+
+
+
+
+
+ The world’s moving fast, and getting products to market
+ feels like a race that keeps speeding up. Monorepos are
+ transforming development by enhancing collaboration, code
+ reuse, and team velocity. But, CI that is not tailored for
+ monorepos can result in slow builds, operational complexity,
+ increased costs and test bottlenecks.
+
+
+
+
+
+ >
+ );
+}
+
+export default WhitePaperFastCI;
diff --git a/nx-dev/nx-dev/public/assets/enterprise/Fast-CI-Whitepaper.pdf b/nx-dev/nx-dev/public/assets/enterprise/Fast-CI-Whitepaper.pdf
new file mode 100644
index 0000000000000..b2b29647f3296
Binary files /dev/null and b/nx-dev/nx-dev/public/assets/enterprise/Fast-CI-Whitepaper.pdf differ
diff --git a/nx-dev/nx-dev/public/assets/enterprise/Nx-Enterprise-POV.pdf b/nx-dev/nx-dev/public/assets/enterprise/Nx-Enterprise-POV.pdf
new file mode 100644
index 0000000000000..3f7bffe374035
Binary files /dev/null and b/nx-dev/nx-dev/public/assets/enterprise/Nx-Enterprise-POV.pdf differ
diff --git a/nx-dev/nx-dev/public/images/customers/enterprise/amir-toole-caseware-headshot.avif b/nx-dev/nx-dev/public/images/customers/enterprise/amir-toole-caseware-headshot.avif
new file mode 100644
index 0000000000000..394f90e0e995d
Binary files /dev/null and b/nx-dev/nx-dev/public/images/customers/enterprise/amir-toole-caseware-headshot.avif differ
diff --git a/nx-dev/ui-common/src/index.ts b/nx-dev/ui-common/src/index.ts
index 66bdcddcedff6..96bd69079acec 100644
--- a/nx-dev/ui-common/src/index.ts
+++ b/nx-dev/ui-common/src/index.ts
@@ -24,6 +24,7 @@ export * from './lib/testimonials';
export * from './lib/square-dotted-pattern';
export * from './lib/live-stream-notifier';
export * from './lib/webinar-notifier';
+export * from './lib/hubspot-form';
export { resourceMenuItems } from './lib/headers/menu-items';
export { eventItems } from './lib/headers/menu-items';
diff --git a/nx-dev/ui-contact/src/lib/hubspot-form.tsx b/nx-dev/ui-common/src/lib/hubspot-form.tsx
similarity index 99%
rename from nx-dev/ui-contact/src/lib/hubspot-form.tsx
rename to nx-dev/ui-common/src/lib/hubspot-form.tsx
index d35ccc54bc1f1..63096f45ee9eb 100644
--- a/nx-dev/ui-contact/src/lib/hubspot-form.tsx
+++ b/nx-dev/ui-common/src/lib/hubspot-form.tsx
@@ -1,3 +1,4 @@
+'use client';
import { Component } from 'react';
/**
diff --git a/nx-dev/ui-contact/src/index.ts b/nx-dev/ui-contact/src/index.ts
index 4fa1b4bfe5aa5..b78a06ee3405a 100644
--- a/nx-dev/ui-contact/src/index.ts
+++ b/nx-dev/ui-contact/src/index.ts
@@ -1,4 +1,4 @@
export * from './lib/contact-links';
export * from './lib/how-can-we-help';
-export * from './lib/talk-to-our-sales-team';
+export * from './lib/talk-to-our-team';
export * from './lib/talk-to-our-engineering-team';
diff --git a/nx-dev/ui-contact/src/lib/talk-to-our-engineering-team.tsx b/nx-dev/ui-contact/src/lib/talk-to-our-engineering-team.tsx
index d91739a2d5bca..d946d108fb600 100644
--- a/nx-dev/ui-contact/src/lib/talk-to-our-engineering-team.tsx
+++ b/nx-dev/ui-contact/src/lib/talk-to-our-engineering-team.tsx
@@ -1,6 +1,5 @@
-import { SectionHeading } from '@nx/nx-dev/ui-common';
-import { HubspotForm } from './hubspot-form';
-import { ReactElement } from 'react';
+import { SectionHeading, HubspotForm } from '@nx/nx-dev/ui-common';
+import { type ReactElement } from 'react';
import {
CapitalOneIcon,
CaterpillarIcon,
@@ -22,8 +21,8 @@ export function TalkToOurEngineeringTeam(): ReactElement {
Talk to our engineering team
-
-
+
+
Contact our Developer Productivity Engineers for demos,
onboarding, and product questions. Share your requirements and
@@ -119,7 +118,7 @@ export function TalkToOurEngineeringTeam(): ReactElement {
-
+
+
- Talk to our sales team
+ Talk to our team
-
-
+
+
- We’re here to help you find the right plan and pricing for your
- needs and discuss{' '}
-
- how Nx Cloud Enterprise can drive better business outcomes for
- your organization
-
- .
+ Whether you’re scaling your team, optimizing CI pipelines, or
+ exploring the full potential of Nx, we’re here to help. Reach out
+ to:
-
- Fill out the form, and we’ll get back to you to schedule a call or
- start the discussion on a shared Slack.
+
+
+
Learn about our products and solutions.
+
Demo our products firsthand and see the difference.
+
Find the right plan for your unique needs.
+
+
+
+ Let’s Talk!
+
+
+ Fill out the form, an Nx expert with reach out shortly.
-
-
+
diff --git a/nx-dev/ui-enterprise/src/lib/hero.tsx b/nx-dev/ui-enterprise/src/lib/hero.tsx
index 761e2ce7aa046..5c17714eaaf33 100644
--- a/nx-dev/ui-enterprise/src/lib/hero.tsx
+++ b/nx-dev/ui-enterprise/src/lib/hero.tsx
@@ -1,6 +1,5 @@
import { ButtonLink, SectionHeading } from '@nx/nx-dev/ui-common';
-import { ReactElement } from 'react';
-import { ChevronRightIcon } from '@heroicons/react/20/solid';
+import { type ReactElement } from 'react';
import { sendCustomEvent } from '@nx/nx-dev/feature-analytics';
export function Hero(): ReactElement {
@@ -70,9 +69,9 @@ export function Hero(): ReactElement {
Accelerate your organization's journey to tighter collaboration,
better developer experience, and speed…lots of speed.
-
+
Request a free trial
+
+
+ Contact sales
+
diff --git a/nx-dev/ui-enterprise/src/lib/trial-nx-enterprise.tsx b/nx-dev/ui-enterprise/src/lib/trial-nx-enterprise.tsx
new file mode 100644
index 0000000000000..e760fc3759def
--- /dev/null
+++ b/nx-dev/ui-enterprise/src/lib/trial-nx-enterprise.tsx
@@ -0,0 +1,110 @@
+import { SectionHeading, HubspotForm } from '@nx/nx-dev/ui-common';
+import { type ReactElement } from 'react';
+import {
+ CapitalOneIcon,
+ CasewareIcon,
+ CaterpillarIcon,
+ RoyalBankOfCanadaIcon,
+ ShopifyIcon,
+} from '@nx/nx-dev/ui-icons';
+import { ArrowLongRightIcon } from '@heroicons/react/24/outline';
+
+export function TrialNxEnterprise(): ReactElement {
+ return (
+
+
+
+
+ Discover Your
+ Nx Enterprise ROI
+
+
+
+
+
+ {' '}
+ Much more than a simple trial{' '}
+
+
+
+ An Nx Enterprise Proof of Value{' '}
+ is your hands-on opportunity to boost CI & DX, realize Nx’s full
+ value, and quantify your ROI. Let us guide you.
+
+ “They asked me a few years ago, ‘Do you want to trial Nx
+ Enterprise?’ and I said, ‘Sure, why not?’ It was actually
+ pretty easy, and immediately the feedback was, ‘Wow, this is a
+ huge time saver!’ Once it expired, it was an immediate, ‘Oh
+ no, what are we going to do?’”
+
+
+
+
+
+
Amir Toole
+
+ VP of Engineering, Caseware
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Loading...
}
+ />
+
+
+
+
+ );
+}
diff --git a/nx-dev/ui-powerpack/src/index.ts b/nx-dev/ui-powerpack/src/index.ts
index 7dfdd8321a597..62723c665b116 100644
--- a/nx-dev/ui-powerpack/src/index.ts
+++ b/nx-dev/ui-powerpack/src/index.ts
@@ -5,3 +5,4 @@ export * from './lib/powerpack-features';
export * from './lib/get-started';
export * from './lib/powerpack-pricing';
export * from './lib/call-to-action';
+export * from './lib/trial-nx-powerpack';
diff --git a/nx-dev/ui-powerpack/src/lib/hero.tsx b/nx-dev/ui-powerpack/src/lib/hero.tsx
index 4df536edaaef6..1ceceed70adc1 100644
--- a/nx-dev/ui-powerpack/src/lib/hero.tsx
+++ b/nx-dev/ui-powerpack/src/lib/hero.tsx
@@ -46,7 +46,7 @@ export function Hero(): ReactElement {
variant="primary"
size="default"
>
- Get Powerpack
+ Buy Powerpack
+