2024-02-09 15:24:13 +00:00

342 lines
15 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { ButtonLink, SectionHeading } from '@nx/nx-dev/ui-common';
export function LaunchWeekAnnouncements(): JSX.Element {
return (
<div className="border-y border-slate-200 dark:border-slate-700">
<section className="w-full divide-y divide-slate-200 dark:divide-slate-700">
<article className="mx-auto max-w-screen-lg xl:max-w-screen-xl">
<div className="px-5 py-12 md:pr-12">
<p>
Well be sharing new features and content daily during launch
week, so be sure to keep an eye on this space for all the latest
info!
</p>
</div>
</article>
{/* MONDAY */}
<div>
<article className="relative overflow-hidden pt-4 mx-auto max-w-screen-lg xl:max-w-screen-xl">
<div className="px-5 py-12 grid md:grid-cols-2 sm:gap-8 lg:py-16">
<div>
<header>
<SectionHeading as="h2" variant="title" id="monday">
Monday
</SectionHeading>
<SectionHeading as="p" variant="display" className="mt-4">
Announcing Project Crystal
</SectionHeading>
</header>
<div className="mt-8 flex gap-16 font-normal">
<p className="max-w-xl text-lg text-slate-700 dark:text-slate-400">
When working on the next iteration of Nx, one idea
consistently emerged: Nx Plugins are powerful and have
proven to help large enterprises adopt monorepos,
successfully maintaining and scaling them. However, there's
definitely a barrier to entry. So, what if Nx Plugins
functioned more like VSCode extensions? You simply add them,
and they instantly enhance the experience of working with a
given tool or technology.
<br />
This is what Nx Project Crystal is all about.
</p>
</div>
<div className="pt-4 action flex flex-col space-y-2 sm:flex-row sm:space-y-0 sm:space-x-2">
<ButtonLink
variant="primary"
size="default"
href="https://blog.nrwl.io/what-if-nx-plugins-were-more-like-vscode-extensions-dcdad140ae09?source=friends_link&sk=ade76fe8d50d44aafb4d4d89ab882e24"
title="Unveiling Project Crystal"
>
Read the blog post
</ButtonLink>
<ButtonLink
variant="primary"
size="default"
href="https://youtu.be/wADNsVItnsM"
title="Nx - Project Crystal - Youtube Video"
>
Watch the video
</ButtonLink>
<ButtonLink
variant="primary"
size="default"
href="https://www.producthunt.com/posts/nx-crystal"
title="Nx Project Crystal on ProductHunt"
>
Vote on ProductHunt
</ButtonLink>
</div>
</div>
<div
aria-hidden="true"
className="order-first md:order-last pb-8 relative flex flex-col items-center"
>
<img
className="rounded-lg"
src="/images/launch-nx/proj-crystal-launch.jpg"
alt="Nx Project Crystal"
/>
</div>
</div>
</article>
</div>
{/* TUESDAY */}
<div>
<article className="relative overflow-hidden pt-4 mx-auto max-w-screen-lg xl:max-w-screen-xl">
<div className="px-5 py-12 grid md:grid-cols-2 sm:gap-8 lg:py-16">
<div>
<header>
<SectionHeading as="h2" variant="title" id="tuesday">
Tuesday
</SectionHeading>
<SectionHeading as="p" variant="display" className="mt-4">
NEW PLUGIN: <a href="nx-api/nuxt">@nx/nuxt</a>
</SectionHeading>
</header>
<div className="mt-8 flex gap-16 font-normal">
<p className="max-w-xl text-lg text-slate-700 dark:text-slate-400">
Checkout the newest Nx Plugin: @nx/nuxt. We're excited to
collaborate closer with the Vue community, and have been
looking forward to launching this plugin since we first
announced Vue support last year!
<br />
<br />
This is the first plugin to be created with Project Crystal
from day 1! Using this plugin - you can expect enhanced
support for the Nuxt framework in Nx. It's a game changer
for Nuxt developers who want to take advantage of Nx's
powerful monorepo capabilities.
</p>
</div>
<div className="pt-4 action flex flex-col space-y-2 sm:flex-row sm:space-y-0 sm:space-x-2">
<ButtonLink
variant="primary"
size="default"
href="https://blog.nrwl.io/introducing-nx-nuxt-enhanced-nuxt-js-support-in-nx-01eac78034fc?source=friends_link&sk=91582cdbd0719dc23375338ad92afa9b"
title="Introducing @nx/nuxt: Enhanced Nuxt.js Support in Nx"
>
Read the blog post
</ButtonLink>
<ButtonLink
variant="primary"
size="default"
href="https://www.youtube.com/watch?v=1L-bDvEemoc&ab_channel=Nx-SmartMonorepos-FastCI"
title="NEW Nx Plugin: @nx/nuxt - Youtube Video"
>
Watch the video
</ButtonLink>
<ButtonLink
variant="primary"
size="default"
href="https://www.youtube.com/watch?v=uHwUxFYX2DY&ab_channel=Nx-SmartMonorepos-FastCI"
title="Nx Live: @nx/nuxt w/ Nuxt Maintainer: Daniel Roe - Youtube Livestream"
>
Catch the Livestream
</ButtonLink>
</div>
</div>
<div
aria-hidden="true"
className="order-first md:order-last pb-8 relative flex flex-col items-center"
>
<img
className="rounded-lg"
src="/images/launch-nx/new-plugin-nx-nuxt.jpg"
alt="Nx Project Crystal"
/>
</div>
</div>
</article>
</div>
{/* WEDNESDAY */}
<div>
<article className="relative overflow-hidden pt-4 mx-auto max-w-screen-lg xl:max-w-screen-xl">
<div className="px-5 py-12 grid md:grid-cols-2 sm:gap-8 lg:py-16">
<div>
<header>
<SectionHeading as="h2" variant="title" id="wednesday">
Wednesday
</SectionHeading>
<SectionHeading as="p" variant="display" className="mt-4">
Nx Agents
</SectionHeading>
</header>
<div className="mt-8 flex gap-16 font-normal">
<p className="max-w-xl text-lg text-slate-700 dark:text-slate-400">
Continuous Integration is broken, so we built Nx Agents to
fix it. Nx Agents is a new way to run your CI/CD pipelines.
It's a distributed and scalable solution built to handle
everything from the largest enterprise monorepo, down to
your weekend hackathon project. It's a game changer for all
developers that want to focus on shipping features, not
maintaining CI/CD infrastructure.
</p>
</div>
<div className="pt-4 action flex flex-col space-y-2 sm:flex-row sm:space-y-0 sm:space-x-2">
<ButtonLink
variant="primary"
size="default"
href="https://blog.nrwl.io/fast-effortless-ci-67812514ffb4?source=friends_link&sk=89e1b5c0388dda077e64a2eab5495d95"
title="Fast, Effortless CI"
>
Read the blog post
</ButtonLink>
<ButtonLink
variant="primary"
size="default"
href="https://youtu.be/_FSHQIwITic"
title="Continuous Integration is BROKEN. So We Fixed It! - Youtube Video"
>
Watch the video
</ButtonLink>
<ButtonLink
variant="primary"
size="default"
href="https://www.producthunt.com/posts/nx-agents"
title="Nx Agents on ProductHunt"
>
Vote on ProductHunt
</ButtonLink>
</div>
</div>
<div
aria-hidden="true"
className="order-first md:order-last pb-8 relative flex flex-col items-center"
>
<img
className="rounded-lg"
src="/images/launch-nx/nx-agents.jpg"
alt="Nx Agents"
/>
</div>
</div>
</article>
</div>
{/* Thursday */}
<div>
<article className="relative overflow-hidden pt-4 mx-auto max-w-screen-lg xl:max-w-screen-xl">
<div className="px-5 py-12 grid md:grid-cols-2 sm:gap-8 lg:py-16">
<div>
<header>
<SectionHeading as="h2" variant="title" id="thursday">
Thursday
</SectionHeading>
<SectionHeading as="p" variant="display" className="mt-4">
Tusky
</SectionHeading>
</header>
<div className="mt-8 flex gap-16 font-normal">
<p className="max-w-xl text-lg text-slate-700 dark:text-slate-400">
Announcing Tusky: A powerful Artificial Intelligence
equipped with context of your workspace, commit history, and
historical build timing data. Tusky can uniquely understand
and optimize your codebase and pipelines.
</p>
</div>
<div className="pt-4 action flex flex-col space-y-2 sm:flex-row sm:space-y-0 sm:space-x-2">
<ButtonLink
variant="primary"
size="default"
href="https://youtu.be/Xfvv09wSoM8"
title="Tusky - Youtube Video"
>
Watch the video
</ButtonLink>
<ButtonLink
variant="primary"
size="default"
href="https://nx.app"
title="Nx Cloud"
>
See on Nx Cloud
</ButtonLink>
</div>
</div>
<div
aria-hidden="true"
className="order-first md:order-last pb-8 relative flex flex-col items-center"
>
<img
className="rounded-lg"
src="/images/launch-nx/tusky.jpg"
alt="Tusky"
/>
</div>
</div>
</article>
</div>
{/* Friday */}
<div>
<article className="relative overflow-hidden pt-4 mx-auto max-w-screen-lg xl:max-w-screen-xl">
<div className="px-5 py-12 grid md:grid-cols-2 sm:gap-8 lg:py-16">
<div>
<header>
<SectionHeading as="h2" variant="title" id="thursday">
Friday
</SectionHeading>
<SectionHeading as="p" variant="display" className="mt-4">
Nx Release & Launch Week Recap Stream
</SectionHeading>
</header>
<div className="mt-8 flex gap-16 font-normal">
<p className="max-w-xl text-lg text-slate-700 dark:text-slate-400">
Last day of launch week! Releasing packages in a monorepo
can be tricky and many of today's tools are either outdated
or need further tweaking when used in a monorepo. We decided
to chime in and leverage our experience of maintaining Lerna
and having hand-coded many release scripts in the past to
solve this once and for all. <br /> <br />
Check out the blog post and video below and make sure to
chime in for our live-stream!
</p>
</div>
<div className="pt-4 action flex flex-col space-y-2 sm:flex-row sm:space-y-0 sm:space-x-2">
<ButtonLink
variant="primary"
size="default"
href="https://blog.nrwl.io/versioning-and-releasing-packages-in-a-monorepo-45ee194378d1?source=friends_link&sk=934e4c5321774c8a9f88433e0dea578b"
title="Blog post - Versioning and Releasing Packages in a Monorepo"
>
Read the blog post
</ButtonLink>
<ButtonLink
variant="primary"
size="default"
href="https://www.youtube.com/watch?v=KjZKFGu3_9I"
title="Releasing Nx Release"
>
Watch the talk
</ButtonLink>
<ButtonLink
variant="primary"
size="default"
href="https://www.youtube.com/live/xjLrFvEcxZw?si=L8Cfk41yKvYb1rud"
title="Nx Live Stream - Launch Week Wrap Up and Q&A"
>
Live Stream
</ButtonLink>
</div>
</div>
<div
aria-hidden="true"
className="order-first md:order-last pb-8 relative flex flex-col items-center"
>
<img
className="rounded-lg"
src="/images/launch-nx/nx-release.jpg"
alt="Tusky"
/>
</div>
</div>
</article>
</div>
</section>
</div>
);
}