diff --git a/nx-dev/nx-dev/pages/company.tsx b/nx-dev/nx-dev/pages/company.tsx new file mode 100644 index 0000000000..663ed96a59 --- /dev/null +++ b/nx-dev/nx-dev/pages/company.tsx @@ -0,0 +1,46 @@ +import { useRouter } from 'next/router'; +import { NextSeo } from 'next-seo'; +import { CoFounders, Hero, TheTeam, Layout } from '@nx/nx-dev/ui-company'; + +export function Company(): JSX.Element { + const router = useRouter(); + + return ( + <> + + + + + + + + + + + + + > + ); +} + +export default Company; diff --git a/nx-dev/nx-dev/pages/customers.tsx b/nx-dev/nx-dev/pages/customers.tsx new file mode 100644 index 0000000000..347924a04e --- /dev/null +++ b/nx-dev/nx-dev/pages/customers.tsx @@ -0,0 +1,52 @@ +import { DefaultLayout } from '@nx/nx-dev/ui-common'; +import { NextSeo } from 'next-seo'; +import { useRouter } from 'next/router'; + +import { + EnterpriseCustomers, + Hero, + OssProjects, +} from '@nx/nx-dev/ui-customers'; + +export function Customers(): JSX.Element { + const router = useRouter(); + + return ( + <> + + + + + + + + + + + + + > + ); +} + +export default Customers; diff --git a/nx-dev/nx-dev/public/images/team/altan-stalker.avif b/nx-dev/nx-dev/public/images/team/altan-stalker.avif new file mode 100644 index 0000000000..e7ba689dde Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/altan-stalker.avif differ diff --git a/nx-dev/nx-dev/public/images/team/austin-fahsl.avif b/nx-dev/nx-dev/public/images/team/austin-fahsl.avif new file mode 100644 index 0000000000..eec81d6681 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/austin-fahsl.avif differ diff --git a/nx-dev/nx-dev/public/images/team/benjamin-cabanes.avif b/nx-dev/nx-dev/public/images/team/benjamin-cabanes.avif new file mode 100644 index 0000000000..595a04f075 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/benjamin-cabanes.avif differ diff --git a/nx-dev/nx-dev/public/images/team/caitlin-cashin.avif b/nx-dev/nx-dev/public/images/team/caitlin-cashin.avif new file mode 100644 index 0000000000..cdc2aa7003 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/caitlin-cashin.avif differ diff --git a/nx-dev/nx-dev/public/images/team/caleb-ukle.avif b/nx-dev/nx-dev/public/images/team/caleb-ukle.avif new file mode 100644 index 0000000000..2a6035d35d Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/caleb-ukle.avif differ diff --git a/nx-dev/nx-dev/public/images/team/chau-tran.avif b/nx-dev/nx-dev/public/images/team/chau-tran.avif new file mode 100644 index 0000000000..25d683d062 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/chau-tran.avif differ diff --git a/nx-dev/nx-dev/public/images/team/chelsea-durso.avif b/nx-dev/nx-dev/public/images/team/chelsea-durso.avif new file mode 100644 index 0000000000..9cb77d7c25 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/chelsea-durso.avif differ diff --git a/nx-dev/nx-dev/public/images/team/colum-ferry.avif b/nx-dev/nx-dev/public/images/team/colum-ferry.avif new file mode 100644 index 0000000000..07430d512c Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/colum-ferry.avif differ diff --git a/nx-dev/nx-dev/public/images/team/cory-henderson.avif b/nx-dev/nx-dev/public/images/team/cory-henderson.avif new file mode 100644 index 0000000000..5258012025 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/cory-henderson.avif differ diff --git a/nx-dev/nx-dev/public/images/team/craigory-coppola.avif b/nx-dev/nx-dev/public/images/team/craigory-coppola.avif new file mode 100644 index 0000000000..1ebd4cd7eb Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/craigory-coppola.avif differ diff --git a/nx-dev/nx-dev/public/images/team/drew-romney.avif b/nx-dev/nx-dev/public/images/team/drew-romney.avif new file mode 100644 index 0000000000..06f12767d0 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/drew-romney.avif differ diff --git a/nx-dev/nx-dev/public/images/team/emily-xiong.avif b/nx-dev/nx-dev/public/images/team/emily-xiong.avif new file mode 100644 index 0000000000..48cf5d126e Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/emily-xiong.avif differ diff --git a/nx-dev/nx-dev/public/images/team/heidi-grutter.avif b/nx-dev/nx-dev/public/images/team/heidi-grutter.avif new file mode 100644 index 0000000000..794578e740 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/heidi-grutter.avif differ diff --git a/nx-dev/nx-dev/public/images/team/isaac-mann.avif b/nx-dev/nx-dev/public/images/team/isaac-mann.avif new file mode 100644 index 0000000000..d14bd0afd4 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/isaac-mann.avif differ diff --git a/nx-dev/nx-dev/public/images/team/jack-butler.avif b/nx-dev/nx-dev/public/images/team/jack-butler.avif new file mode 100644 index 0000000000..61ea63ce97 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/jack-butler.avif differ diff --git a/nx-dev/nx-dev/public/images/team/jack-hsu.avif b/nx-dev/nx-dev/public/images/team/jack-hsu.avif new file mode 100644 index 0000000000..236df50512 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/jack-hsu.avif differ diff --git a/nx-dev/nx-dev/public/images/team/james-henry.avif b/nx-dev/nx-dev/public/images/team/james-henry.avif new file mode 100644 index 0000000000..e063fffa7b Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/james-henry.avif differ diff --git a/nx-dev/nx-dev/public/images/team/jason-jean.avif b/nx-dev/nx-dev/public/images/team/jason-jean.avif new file mode 100644 index 0000000000..03f3e8fcff Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/jason-jean.avif differ diff --git a/nx-dev/nx-dev/public/images/team/jeff-cross.avif b/nx-dev/nx-dev/public/images/team/jeff-cross.avif new file mode 100644 index 0000000000..3e8ed6b6c3 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/jeff-cross.avif differ diff --git a/nx-dev/nx-dev/public/images/team/jimmy-labonte.avif b/nx-dev/nx-dev/public/images/team/jimmy-labonte.avif new file mode 100644 index 0000000000..defd8fdd77 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/jimmy-labonte.avif differ diff --git a/nx-dev/nx-dev/public/images/team/joe-johnson.avif b/nx-dev/nx-dev/public/images/team/joe-johnson.avif new file mode 100644 index 0000000000..1304e67d98 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/joe-johnson.avif differ diff --git a/nx-dev/nx-dev/public/images/team/johanna-pearce.avif b/nx-dev/nx-dev/public/images/team/johanna-pearce.avif new file mode 100644 index 0000000000..433d6a6190 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/johanna-pearce.avif differ diff --git a/nx-dev/nx-dev/public/images/team/jonathan-cammisuli.avif b/nx-dev/nx-dev/public/images/team/jonathan-cammisuli.avif new file mode 100644 index 0000000000..42fa1841b5 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/jonathan-cammisuli.avif differ diff --git a/nx-dev/nx-dev/public/images/team/juri-strumpflohner.avif b/nx-dev/nx-dev/public/images/team/juri-strumpflohner.avif new file mode 100644 index 0000000000..f0ad672443 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/juri-strumpflohner.avif differ diff --git a/nx-dev/nx-dev/public/images/team/katerina-skroumpelou.avif b/nx-dev/nx-dev/public/images/team/katerina-skroumpelou.avif new file mode 100644 index 0000000000..b62a595c99 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/katerina-skroumpelou.avif differ diff --git a/nx-dev/nx-dev/public/images/team/leosvel-perez-espinosa.avif b/nx-dev/nx-dev/public/images/team/leosvel-perez-espinosa.avif new file mode 100644 index 0000000000..48c7bab309 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/leosvel-perez-espinosa.avif differ diff --git a/nx-dev/nx-dev/public/images/team/louie-weng.avif b/nx-dev/nx-dev/public/images/team/louie-weng.avif new file mode 100644 index 0000000000..ab8d97b06c Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/louie-weng.avif differ diff --git a/nx-dev/nx-dev/public/images/team/mark-lindsey.avif b/nx-dev/nx-dev/public/images/team/mark-lindsey.avif new file mode 100644 index 0000000000..9a91994502 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/mark-lindsey.avif differ diff --git a/nx-dev/nx-dev/public/images/team/max-kless.avif b/nx-dev/nx-dev/public/images/team/max-kless.avif new file mode 100644 index 0000000000..07e620baf9 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/max-kless.avif differ diff --git a/nx-dev/nx-dev/public/images/team/miroslav-jonas.avif b/nx-dev/nx-dev/public/images/team/miroslav-jonas.avif new file mode 100644 index 0000000000..2417e8bf43 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/miroslav-jonas.avif differ diff --git a/nx-dev/nx-dev/public/images/team/nicholas-cunningham.avif b/nx-dev/nx-dev/public/images/team/nicholas-cunningham.avif new file mode 100644 index 0000000000..6293438fa4 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/nicholas-cunningham.avif differ diff --git a/nx-dev/nx-dev/public/images/team/nicole-oliver.avif b/nx-dev/nx-dev/public/images/team/nicole-oliver.avif new file mode 100644 index 0000000000..f87490b8ec Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/nicole-oliver.avif differ diff --git a/nx-dev/nx-dev/public/images/team/patrick-mariglia.avif b/nx-dev/nx-dev/public/images/team/patrick-mariglia.avif new file mode 100644 index 0000000000..df72f48435 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/patrick-mariglia.avif differ diff --git a/nx-dev/nx-dev/public/images/team/philip-fulcher.avif b/nx-dev/nx-dev/public/images/team/philip-fulcher.avif new file mode 100644 index 0000000000..1b4bc3a893 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/philip-fulcher.avif differ diff --git a/nx-dev/nx-dev/public/images/team/rares-matei.avif b/nx-dev/nx-dev/public/images/team/rares-matei.avif new file mode 100644 index 0000000000..f5874ff9c6 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/rares-matei.avif differ diff --git a/nx-dev/nx-dev/public/images/team/ryan-stott.avif b/nx-dev/nx-dev/public/images/team/ryan-stott.avif new file mode 100644 index 0000000000..32b6a00398 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/ryan-stott.avif differ diff --git a/nx-dev/nx-dev/public/images/team/steve-pentland.avif b/nx-dev/nx-dev/public/images/team/steve-pentland.avif new file mode 100644 index 0000000000..733acc0247 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/steve-pentland.avif differ diff --git a/nx-dev/nx-dev/public/images/team/victor-savkin.avif b/nx-dev/nx-dev/public/images/team/victor-savkin.avif new file mode 100644 index 0000000000..51b14a5ce7 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/victor-savkin.avif differ diff --git a/nx-dev/nx-dev/public/images/team/whitney-loy.avif b/nx-dev/nx-dev/public/images/team/whitney-loy.avif new file mode 100644 index 0000000000..5f2b078236 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/whitney-loy.avif differ diff --git a/nx-dev/nx-dev/public/images/team/zack-derose.avif b/nx-dev/nx-dev/public/images/team/zack-derose.avif new file mode 100644 index 0000000000..715bb5fd71 Binary files /dev/null and b/nx-dev/nx-dev/public/images/team/zack-derose.avif differ diff --git a/nx-dev/ui-blog/src/lib/author-detail.tsx b/nx-dev/ui-blog/src/lib/author-detail.tsx index bf499d60bd..ce14facc51 100644 --- a/nx-dev/ui-blog/src/lib/author-detail.tsx +++ b/nx-dev/ui-blog/src/lib/author-detail.tsx @@ -1,5 +1,5 @@ import type { BlogAuthor } from '@nx/nx-dev/data-access-documents/node-only'; -import { GithubIcon, TwitterIcon } from '@nx/nx-dev/ui-common'; +import { GithubIcon, XIcon } from '@nx/nx-dev/ui-common'; import Image from 'next/image'; interface AuthorDetailProps { @@ -27,7 +27,7 @@ export default function AuthorDetail({ author }: AuthorDetailProps) { target="_blank" aria-label={`Follow ${author.name} on X`} > - + ))} + {companyItems.map((item) => ( + + ))} > )} diff --git a/nx-dev/ui-common/src/lib/headers/menu-items.ts b/nx-dev/ui-common/src/lib/headers/menu-items.ts index 355e5898a5..2358e73d05 100644 --- a/nx-dev/ui-common/src/lib/headers/menu-items.ts +++ b/nx-dev/ui-common/src/lib/headers/menu-items.ts @@ -1,6 +1,5 @@ import { AcademicCapIcon, - ArrowPathIcon, BoltIcon, CircleStackIcon, CodeBracketIcon, @@ -9,14 +8,17 @@ import { PlayCircleIcon, ShareIcon, Squares2X2Icon, - RectangleGroupIcon, ChatBubbleBottomCenterTextIcon, ArrowUpCircleIcon, + UserGroupIcon, + ComputerDesktopIcon, + GlobeAltIcon, } from '@heroicons/react/24/outline'; import { FC, SVGProps } from 'react'; import { NxAgentsIcon } from '../nx-agents-icon'; import { NxReplayIcon } from '../nx-replay-icon'; import { DiscordIcon } from '../discord-icon'; +import { BuildingOfficeIcon } from '@heroicons/react/24/solid'; export interface MenuItem { name: string; @@ -207,19 +209,36 @@ export const learnItems: MenuItem[] = [ export const eventItems: MenuItem[] = [ { name: 'Monorepo World', - description: - 'In person & virtual conference about the latest monorepo advancements.', + description: null, href: 'https://monorepo.world', - icon: null, + icon: GlobeAltIcon, isNew: false, isHighlight: false, }, { name: 'Webinars', - description: - 'Virtual courses to get a deeper understanding on monorepos animated by the Nx team.', + description: null, href: 'https://go.nx.dev/webinar', - icon: null, + icon: ComputerDesktopIcon, + isNew: false, + isHighlight: false, + }, +]; + +export const companyItems: MenuItem[] = [ + { + name: 'About Us', + description: null, + href: '/company', + icon: UserGroupIcon, + isNew: false, + isHighlight: false, + }, + { + name: 'Customers', + description: null, + icon: BuildingOfficeIcon, + href: '/customers', isNew: false, isHighlight: false, }, @@ -231,4 +250,5 @@ export const solutionsMenuItems = { export const resourceMenuItems = { Learn: learnItems, Events: eventItems, + Company: companyItems, }; diff --git a/nx-dev/ui-enterprise/src/lib/logos/7eleven.tsx b/nx-dev/ui-common/src/lib/logos/7eleven.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/7eleven.tsx rename to nx-dev/ui-common/src/lib/logos/7eleven.tsx diff --git a/nx-dev/ui-common/src/lib/logos/addidas.tsx b/nx-dev/ui-common/src/lib/logos/addidas.tsx new file mode 100644 index 0000000000..08fefe9f8f --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/addidas.tsx @@ -0,0 +1,14 @@ +import { FC, SVGProps } from 'react'; + +export const AddidasIcon: FC> = (props) => ( + + Adidas + + +); diff --git a/nx-dev/ui-common/src/lib/logos/adobe.tsx b/nx-dev/ui-common/src/lib/logos/adobe.tsx new file mode 100644 index 0000000000..ecccc4cc60 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/adobe.tsx @@ -0,0 +1,14 @@ +import { FC, SVGProps } from 'react'; + +export const AdobeIcon: FC> = (props) => ( + + Adobe + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/american-airlines.tsx b/nx-dev/ui-common/src/lib/logos/american-airlines.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/american-airlines.tsx rename to nx-dev/ui-common/src/lib/logos/american-airlines.tsx diff --git a/nx-dev/ui-common/src/lib/logos/angular.tsx b/nx-dev/ui-common/src/lib/logos/angular.tsx new file mode 100644 index 0000000000..f96a6f869b --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/angular.tsx @@ -0,0 +1,14 @@ +import { FC, SVGProps } from 'react'; + +export const AngularIcon: FC> = (props) => ( + + Angular + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/aws-amplify.tsx b/nx-dev/ui-common/src/lib/logos/aws-amplify.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/aws-amplify.tsx rename to nx-dev/ui-common/src/lib/logos/aws-amplify.tsx diff --git a/nx-dev/ui-enterprise/src/lib/logos/bill.tsx b/nx-dev/ui-common/src/lib/logos/bill.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/bill.tsx rename to nx-dev/ui-common/src/lib/logos/bill.tsx diff --git a/nx-dev/ui-common/src/lib/logos/bloomberg.tsx b/nx-dev/ui-common/src/lib/logos/bloomberg.tsx new file mode 100644 index 0000000000..664389358d --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/bloomberg.tsx @@ -0,0 +1,13 @@ +import { FC, SVGProps } from 'react'; + +export const BloombergIcon: FC> = (props) => ( + // Color: #000000 + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/cais-group.tsx b/nx-dev/ui-common/src/lib/logos/cais-group.tsx new file mode 100644 index 0000000000..27aa761281 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/cais-group.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const CaisGroupIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/capital-one.tsx b/nx-dev/ui-common/src/lib/logos/capital-one.tsx similarity index 72% rename from nx-dev/ui-enterprise/src/lib/logos/capital-one.tsx rename to nx-dev/ui-common/src/lib/logos/capital-one.tsx index a8dea3a475..f25942de87 100644 --- a/nx-dev/ui-enterprise/src/lib/logos/capital-one.tsx +++ b/nx-dev/ui-common/src/lib/logos/capital-one.tsx @@ -12,27 +12,3 @@ export const CapitalOneIcon: FC> = (props) => ( ); - -export const CapitalOneColoredIcon: FC> = (props) => ( - - 7eleven - - - - -); diff --git a/nx-dev/ui-common/src/lib/logos/caseware.tsx b/nx-dev/ui-common/src/lib/logos/caseware.tsx new file mode 100644 index 0000000000..57b0bb493b --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/caseware.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const CasewareIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/caterpillar.tsx b/nx-dev/ui-common/src/lib/logos/caterpillar.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/caterpillar.tsx rename to nx-dev/ui-common/src/lib/logos/caterpillar.tsx diff --git a/nx-dev/ui-enterprise/src/lib/logos/cisco.tsx b/nx-dev/ui-common/src/lib/logos/cisco.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/cisco.tsx rename to nx-dev/ui-common/src/lib/logos/cisco.tsx diff --git a/nx-dev/ui-common/src/lib/logos/click-up.tsx b/nx-dev/ui-common/src/lib/logos/click-up.tsx new file mode 100644 index 0000000000..49ea7b3954 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/click-up.tsx @@ -0,0 +1,15 @@ +import { FC, SVGProps } from 'react'; + +export const ClickUpIcon: FC> = (props) => ( + //Color: #7B68EE + + ClickUp + + +); diff --git a/nx-dev/ui-common/src/lib/logos/deloitte.tsx b/nx-dev/ui-common/src/lib/logos/deloitte.tsx new file mode 100644 index 0000000000..66d156c66e --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/deloitte.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const DeloitteIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/dicks-sporting-goods.tsx b/nx-dev/ui-common/src/lib/logos/dicks-sporting-goods.tsx new file mode 100644 index 0000000000..fc3c9a7a7f --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/dicks-sporting-goods.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const DicksSportingGoodsIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/dnb.tsx b/nx-dev/ui-common/src/lib/logos/dnb.tsx new file mode 100644 index 0000000000..b8c2e356f0 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/dnb.tsx @@ -0,0 +1,13 @@ +import { FC, SVGProps } from 'react'; + +export const DnbIcon: FC> = (props) => ( + // Color: #007272 + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/entain.tsx b/nx-dev/ui-common/src/lib/logos/entain.tsx new file mode 100644 index 0000000000..1ab3d72e22 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/entain.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const EntainIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/epic-web.tsx b/nx-dev/ui-common/src/lib/logos/epic-web.tsx new file mode 100644 index 0000000000..85f41a710f --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/epic-web.tsx @@ -0,0 +1,14 @@ +import { FC, SVGProps } from 'react'; + +export const EpicWebIcon: FC> = (props) => ( + + EpicWeb + + +); diff --git a/nx-dev/ui-common/src/lib/logos/fedex.tsx b/nx-dev/ui-common/src/lib/logos/fedex.tsx new file mode 100644 index 0000000000..7bb9fc60ed --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/fedex.tsx @@ -0,0 +1,14 @@ +import { FC, SVGProps } from 'react'; + +export const FedExIcon: FC> = (props) => ( + + FedEx + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/fico.tsx b/nx-dev/ui-common/src/lib/logos/fico.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/fico.tsx rename to nx-dev/ui-common/src/lib/logos/fico.tsx diff --git a/nx-dev/ui-common/src/lib/logos/ghost.tsx b/nx-dev/ui-common/src/lib/logos/ghost.tsx new file mode 100644 index 0000000000..a3350978fd --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/ghost.tsx @@ -0,0 +1,13 @@ +import { FC, SVGProps } from 'react'; + +export const GhostIcon: FC> = (props) => ( + // Color: #15171A + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/hasura.tsx b/nx-dev/ui-common/src/lib/logos/hasura.tsx new file mode 100644 index 0000000000..f4d648ef27 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/hasura.tsx @@ -0,0 +1,13 @@ +import { FC, SVGProps } from 'react'; + +export const HasuraIcon: FC> = (props) => ( + // Color: #1EB4D4 + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/hetzner-cloud.tsx b/nx-dev/ui-common/src/lib/logos/hetzner-cloud.tsx new file mode 100644 index 0000000000..8f1eea7d86 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/hetzner-cloud.tsx @@ -0,0 +1,15 @@ +import { FC, SVGProps } from 'react'; + +export const HetznerCloudIcon: FC> = (props) => ( + //Color: #D50C2D + + Hetzner Cloud + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/hilton.tsx b/nx-dev/ui-common/src/lib/logos/hilton.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/hilton.tsx rename to nx-dev/ui-common/src/lib/logos/hilton.tsx diff --git a/nx-dev/ui-common/src/lib/logos/ikea.tsx b/nx-dev/ui-common/src/lib/logos/ikea.tsx new file mode 100644 index 0000000000..8abe7ba280 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/ikea.tsx @@ -0,0 +1,14 @@ +import { FC, SVGProps } from 'react'; + +export const IkeaIcon: FC> = (props) => ( + + IKEA + + +); diff --git a/nx-dev/ui-common/src/lib/logos/index.ts b/nx-dev/ui-common/src/lib/logos/index.ts new file mode 100644 index 0000000000..4600c64101 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/index.ts @@ -0,0 +1,57 @@ +export * from './tanstack'; +export * from './lerna'; +export * from './angular'; +export * from './epic-web'; +export * from './7eleven'; +export * from './american-airlines'; +export * from './aws-amplify'; +export * from './bill'; +export * from './capital-one'; +export * from './caterpillar'; +export * from './cisco'; +export * from './fico'; +export * from './hilton'; +export * from './man'; +export * from './react-query'; +export * from './redwood-js'; +export * from './royal-bank-of-canada'; +export * from './shopify'; +export * from './storybook'; +export * from './vmware'; +export * from './wallmart'; +export * from './fedex'; +export * from './rxjs'; +export * from './sentry'; +export * from './mui'; +export * from './tide'; +export * from './adobe'; +export * from './intel'; +export * from './addidas'; +export * from './ikea'; +export * from './paramount'; +export * from './deloitte'; +export * from './vodafone'; +export * from './t-mobile'; +export * from './mail-chimp'; +export * from './moderna'; +export * from './click-up'; +export * from './sharp'; +export * from './red-bull'; +export * from './lego'; +export * from './philips'; +export * from './bloomberg'; +export * from './sainsburys'; +export * from './ukg'; +export * from './splice'; +export * from './dnb'; +export * from './hetzner-cloud'; +export * from './ghost'; +export * from './hasura'; +export * from './paylocity'; +export * from './varian'; +export * from './payfit'; +export * from './caseware'; +export * from './three-kit'; +export * from './cais-group'; +export * from './milliennium'; +export * from './entain'; diff --git a/nx-dev/ui-common/src/lib/logos/intel.tsx b/nx-dev/ui-common/src/lib/logos/intel.tsx new file mode 100644 index 0000000000..7efeac1f0e --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/intel.tsx @@ -0,0 +1,14 @@ +import { FC, SVGProps } from 'react'; + +export const IntelIcon: FC> = (props) => ( + + Intel + + +); diff --git a/nx-dev/ui-common/src/lib/logos/lego.tsx b/nx-dev/ui-common/src/lib/logos/lego.tsx new file mode 100644 index 0000000000..e4565812de --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/lego.tsx @@ -0,0 +1,15 @@ +import { FC, SVGProps } from 'react'; + +export const LegoIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/lerna.tsx b/nx-dev/ui-common/src/lib/logos/lerna.tsx new file mode 100644 index 0000000000..527e13af5a --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/lerna.tsx @@ -0,0 +1,14 @@ +import { FC, SVGProps } from 'react'; + +export const LernaIcon: FC> = (props) => ( + + Lerna + + +); diff --git a/nx-dev/ui-common/src/lib/logos/mail-chimp.tsx b/nx-dev/ui-common/src/lib/logos/mail-chimp.tsx new file mode 100644 index 0000000000..5988d561d2 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/mail-chimp.tsx @@ -0,0 +1,15 @@ +import { FC, SVGProps } from 'react'; + +export const MailChimpIcon: FC> = (props) => ( + // Color: #FFE01B + + MailChimp + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/man.tsx b/nx-dev/ui-common/src/lib/logos/man.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/man.tsx rename to nx-dev/ui-common/src/lib/logos/man.tsx diff --git a/nx-dev/ui-common/src/lib/logos/milliennium.tsx b/nx-dev/ui-common/src/lib/logos/milliennium.tsx new file mode 100644 index 0000000000..0404e916ec --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/milliennium.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const MillienniumIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/moderna.tsx b/nx-dev/ui-common/src/lib/logos/moderna.tsx new file mode 100644 index 0000000000..937bba048a --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/moderna.tsx @@ -0,0 +1,100 @@ +import { FC, SVGProps } from 'react'; + +export const ModernaIcon: FC> = (props) => ( + + + +); + +export const ModernaColorIcon: FC> = (props) => ( + + + + + + + + + + + + + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/mui.tsx b/nx-dev/ui-common/src/lib/logos/mui.tsx new file mode 100644 index 0000000000..f970d95f7d --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/mui.tsx @@ -0,0 +1,13 @@ +import { FC, SVGProps } from 'react'; + +export const MuiIcon: FC> = (props) => ( + + Material Ui + + +); diff --git a/nx-dev/ui-common/src/lib/logos/paramount.tsx b/nx-dev/ui-common/src/lib/logos/paramount.tsx new file mode 100644 index 0000000000..669131f608 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/paramount.tsx @@ -0,0 +1,14 @@ +import { FC, SVGProps } from 'react'; + +export const ParamountIcon: FC> = (props) => ( + + Paramount+ + + +); diff --git a/nx-dev/ui-common/src/lib/logos/payfit.tsx b/nx-dev/ui-common/src/lib/logos/payfit.tsx new file mode 100644 index 0000000000..f791957866 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/payfit.tsx @@ -0,0 +1,13 @@ +import { FC, SVGProps } from 'react'; + +export const PayfitIcon: FC> = (props) => ( + // Color: #0F6FDE + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/paylocity.tsx b/nx-dev/ui-common/src/lib/logos/paylocity.tsx new file mode 100644 index 0000000000..84ddb78c52 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/paylocity.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const PaylocityIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/philips.tsx b/nx-dev/ui-common/src/lib/logos/philips.tsx new file mode 100644 index 0000000000..713d286aa2 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/philips.tsx @@ -0,0 +1,13 @@ +import { FC, SVGProps } from 'react'; + +export const PhilipsIcon: FC> = (props) => ( + // Color: #0081C4 + + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/react-query.tsx b/nx-dev/ui-common/src/lib/logos/react-query.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/react-query.tsx rename to nx-dev/ui-common/src/lib/logos/react-query.tsx diff --git a/nx-dev/ui-common/src/lib/logos/red-bull.tsx b/nx-dev/ui-common/src/lib/logos/red-bull.tsx new file mode 100644 index 0000000000..7288254723 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/red-bull.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const RedBullIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/redwood-js.tsx b/nx-dev/ui-common/src/lib/logos/redwood-js.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/redwood-js.tsx rename to nx-dev/ui-common/src/lib/logos/redwood-js.tsx diff --git a/nx-dev/ui-enterprise/src/lib/logos/royal-bank-of-canada.tsx b/nx-dev/ui-common/src/lib/logos/royal-bank-of-canada.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/royal-bank-of-canada.tsx rename to nx-dev/ui-common/src/lib/logos/royal-bank-of-canada.tsx diff --git a/nx-dev/ui-common/src/lib/logos/rxjs.tsx b/nx-dev/ui-common/src/lib/logos/rxjs.tsx new file mode 100644 index 0000000000..c9d58e0973 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/rxjs.tsx @@ -0,0 +1,14 @@ +import { FC, SVGProps } from 'react'; + +export const RxJSIcon: FC> = (props) => ( + + RxJS + + +); diff --git a/nx-dev/ui-common/src/lib/logos/sainsburys.tsx b/nx-dev/ui-common/src/lib/logos/sainsburys.tsx new file mode 100644 index 0000000000..82e909cada --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/sainsburys.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const SainsburysIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/sentry.tsx b/nx-dev/ui-common/src/lib/logos/sentry.tsx new file mode 100644 index 0000000000..93e250ddce --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/sentry.tsx @@ -0,0 +1,13 @@ +import { FC, SVGProps } from 'react'; + +export const SentryIcon: FC> = (props) => ( + + Sentry + + +); diff --git a/nx-dev/ui-common/src/lib/logos/sharp.tsx b/nx-dev/ui-common/src/lib/logos/sharp.tsx new file mode 100644 index 0000000000..a6072f90cb --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/sharp.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const SharpIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/shopify.tsx b/nx-dev/ui-common/src/lib/logos/shopify.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/shopify.tsx rename to nx-dev/ui-common/src/lib/logos/shopify.tsx diff --git a/nx-dev/ui-common/src/lib/logos/splice.tsx b/nx-dev/ui-common/src/lib/logos/splice.tsx new file mode 100644 index 0000000000..148f26eb52 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/splice.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const SpliceIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/storybook.tsx b/nx-dev/ui-common/src/lib/logos/storybook.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/storybook.tsx rename to nx-dev/ui-common/src/lib/logos/storybook.tsx diff --git a/nx-dev/ui-common/src/lib/logos/t-mobile.tsx b/nx-dev/ui-common/src/lib/logos/t-mobile.tsx new file mode 100644 index 0000000000..a0f91dbd5d --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/t-mobile.tsx @@ -0,0 +1,14 @@ +import { FC, SVGProps } from 'react'; + +export const TMobileIcon: FC> = (props) => ( + + T-Mobile + + +); diff --git a/nx-dev/ui-common/src/lib/logos/tanstack.tsx b/nx-dev/ui-common/src/lib/logos/tanstack.tsx new file mode 100644 index 0000000000..df76c84104 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/tanstack.tsx @@ -0,0 +1,14 @@ +import { FC, SVGProps } from 'react'; + +export const TanstackIcon: FC> = (props) => ( + + Tanstack + + +); diff --git a/nx-dev/ui-common/src/lib/logos/three-kit.tsx b/nx-dev/ui-common/src/lib/logos/three-kit.tsx new file mode 100644 index 0000000000..16073eed12 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/three-kit.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const ThreeKitIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/tide.tsx b/nx-dev/ui-common/src/lib/logos/tide.tsx new file mode 100644 index 0000000000..270dce83da --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/tide.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const TideIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/ukg.tsx b/nx-dev/ui-common/src/lib/logos/ukg.tsx new file mode 100644 index 0000000000..257f7983b7 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/ukg.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const UkgIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-common/src/lib/logos/varian.tsx b/nx-dev/ui-common/src/lib/logos/varian.tsx new file mode 100644 index 0000000000..4551c7ef18 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/varian.tsx @@ -0,0 +1,12 @@ +import { FC, SVGProps } from 'react'; + +export const VarianIcon: FC> = (props) => ( + + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/vmware.tsx b/nx-dev/ui-common/src/lib/logos/vmware.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/vmware.tsx rename to nx-dev/ui-common/src/lib/logos/vmware.tsx diff --git a/nx-dev/ui-common/src/lib/logos/vodafone.tsx b/nx-dev/ui-common/src/lib/logos/vodafone.tsx new file mode 100644 index 0000000000..191466d9d8 --- /dev/null +++ b/nx-dev/ui-common/src/lib/logos/vodafone.tsx @@ -0,0 +1,15 @@ +import { FC, SVGAttributes } from 'react'; + +export const VodafoneIcon: FC> = (props) => ( + // color: #E60000 + + Vodafone + + +); diff --git a/nx-dev/ui-enterprise/src/lib/logos/wallmart.tsx b/nx-dev/ui-common/src/lib/logos/wallmart.tsx similarity index 100% rename from nx-dev/ui-enterprise/src/lib/logos/wallmart.tsx rename to nx-dev/ui-common/src/lib/logos/wallmart.tsx diff --git a/nx-dev/ui-common/src/lib/section-tags.tsx b/nx-dev/ui-common/src/lib/section-tags.tsx new file mode 100644 index 0000000000..a66160563b --- /dev/null +++ b/nx-dev/ui-common/src/lib/section-tags.tsx @@ -0,0 +1,61 @@ +import { cx } from '@nx/nx-dev/ui-primitives'; +import { ElementType, ReactNode } from 'react'; + +type AllowedVariants = 'title' | 'display' | 'subtitle'; + +type Headings = { + as: ElementType; + className?: string; + children: ReactNode | ReactNode[]; + id?: string; + variant: AllowedVariants; +}; + +type Description = { + as: ElementType; + className?: string; + children: ReactNode | ReactNode[]; + id?: string; +}; + +const variants: Record = { + title: + 'text-3xl font-medium tracking-tight text-slate-950 dark:text-white sm:text-5xl', + display: + 'text-4xl font-medium tracking-tight text-slate-950 dark:text-white sm:text-7xl', + subtitle: 'text-lg leading-8 text-slate-700 dark:text-slate-300 sm:text-2xl', +}; + +// TODO(nicholas): Replace `typography.tsx` with this file after ensuring all components are using the new `SectionHeading` and `SectionDescription` components. +// Also remove the entry from tsconfig.base.json for this file. +export function SectionHeading({ + as = 'div', + children, + className, + variant, + ...rest +}: Headings): JSX.Element { + const Tag = as; + return ( + + {children} + + ); +} + +export function SectionDescription({ + as = 'div', + children, + className, + ...rest +}: Description): JSX.Element { + const Tag = as; + return ( + + {children} + + ); +} diff --git a/nx-dev/ui-common/src/lib/twitter-icon.tsx b/nx-dev/ui-common/src/lib/x-icon.tsx similarity index 84% rename from nx-dev/ui-common/src/lib/twitter-icon.tsx rename to nx-dev/ui-common/src/lib/x-icon.tsx index 6f031b87e5..7d0563a229 100644 --- a/nx-dev/ui-common/src/lib/twitter-icon.tsx +++ b/nx-dev/ui-common/src/lib/x-icon.tsx @@ -1,6 +1,6 @@ import { FC, SVGProps } from 'react'; -export const TwitterIcon: FC> = (props) => ( +export const XIcon: FC> = (props) => ( + + + + + + Meet Our Co-Founders + + + + + {coFounders.map((coFounder, _) => ( + + + + + + + + + + {coFounder.name} + + + {coFounder.title} + + + + + + X + + + + + + + + + ))} + + + + + + + ); +} diff --git a/nx-dev/ui-company/src/lib/hero.tsx b/nx-dev/ui-company/src/lib/hero.tsx new file mode 100644 index 0000000000..048101b570 --- /dev/null +++ b/nx-dev/ui-company/src/lib/hero.tsx @@ -0,0 +1,65 @@ +import { SectionHeading } from '@nx/nx-dev/ui-common/src/lib/section-tags'; +import { + GlobeAltIcon, + TrophyIcon, + UserGroupIcon, +} from '@heroicons/react/24/outline'; + +const statements = [ + { + title: 'Globally Distributed', + icon: GlobeAltIcon, + description: 'We are spread across the USA, Canada, UK, and Europe.', + }, + { + title: 'Leaders', + icon: TrophyIcon, + description: + "Nx was founded by former Googlers, Jeff Cross and Victor Savkin. Today we're a growing team of experts creating build tools used by millions of people.", + }, + { + title: 'Experts', + icon: UserGroupIcon, + description: + "Since 2016 we've been helping global enterprises use build tools to optimize their development processes, speed up their CI and create better software.", + }, +]; +export function Hero(): JSX.Element { + return ( + + + + + About us + + + We make developers + 10x + Nx more productive + + + + {statements.map((statement, _) => { + return ( + + + + + {statement.title} + + + + {statement.description} + + + ); + })} + + + + ); +} diff --git a/nx-dev/ui-company/src/lib/layout.tsx b/nx-dev/ui-company/src/lib/layout.tsx new file mode 100644 index 0000000000..883d8a7bf5 --- /dev/null +++ b/nx-dev/ui-company/src/lib/layout.tsx @@ -0,0 +1,29 @@ +import { Header, Footer } from '@nx/nx-dev/ui-common'; + +export function Layout({ + children, +}: { + children: React.ReactNode; +}): JSX.Element { + return ( + + + + + + + {children} + + + + ); +} diff --git a/nx-dev/ui-company/src/lib/the-team.tsx b/nx-dev/ui-company/src/lib/the-team.tsx new file mode 100644 index 0000000000..8b58035183 --- /dev/null +++ b/nx-dev/ui-company/src/lib/the-team.tsx @@ -0,0 +1,223 @@ +import { SectionHeading } from '@nx/nx-dev/ui-common/src/lib/section-tags'; + +const teamMembers = [ + { + name: 'Altan stalker', + title: 'Senior Engineer', + imageUrl: 'altan-stalker.avif', + }, + { + name: 'Austin Fahsl', + title: 'Senior Engineer', + imageUrl: 'austin-fahsl.avif', + }, + { + name: 'Benjamin Cabanes', + title: 'Architect', + imageUrl: 'benjamin-cabanes.avif', + }, + { + name: 'Caitlin Cashin', + title: 'Developer Marketing Manager', + imageUrl: 'caitlin-cashin.avif', + }, + { + name: 'Caleb Ukle', + title: 'Senior Engineer', + imageUrl: 'caleb-ukle.avif', + }, + { + name: 'Chau Tran', + title: 'Senior Engineer', + imageUrl: 'chau-tran.avif', + }, + { + name: 'Colum Ferry', + title: 'Senior Engineer', + imageUrl: 'colum-ferry.avif', + }, + { + name: 'Cory Henderson', + title: 'Director of Revenue Operations', + imageUrl: 'cory-henderson.avif', + }, + { + name: 'Craigory Coppola', + title: 'Senior Engineer', + imageUrl: 'craigory-coppola.avif', + }, + { + name: 'Emily Xiong', + title: 'Senior Engineer', + imageUrl: 'emily-xiong.avif', + }, + { + name: 'Drew Romney', + title: 'VP of Finance', + imageUrl: 'drew-romney.avif', + }, + { + name: 'Heidi Grütter', + title: 'Director of Product Marketing', + imageUrl: 'heidi-grutter.avif', + }, + { + name: 'Isaac Mann', + title: 'Architect', + imageUrl: 'isaac-mann.avif', + }, + { + name: 'Jack Butler', + title: 'Account Exec', + imageUrl: 'jack-butler.avif', + }, + { + name: 'Jack Hsu', + title: 'Architect', + imageUrl: 'jack-hsu.avif', + }, + { + name: 'James Henry', + title: 'Director of Engineering', + imageUrl: 'james-henry.avif', + }, + { + name: 'Jason Jean', + title: 'Architect', + imageUrl: 'jason-jean.avif', + }, + { + name: 'Jimmy LaBonte', + title: 'Account Executive', + imageUrl: 'jimmy-labonte.avif', + }, + { + name: 'Joe Johnson', + title: 'Director of Professional Services', + imageUrl: 'joe-johnson.avif', + }, + { + name: 'Johanna Pearce', + title: 'Architect', + imageUrl: 'johanna-pearce.avif', + }, + { + name: 'Jonathan Cammisuli', + title: 'Architect', + imageUrl: 'jonathan-cammisuli.avif', + }, + { + name: 'Juri Strumpflohner', + title: 'Director of Developer Experience', + imageUrl: 'juri-strumpflohner.avif', + }, + { + name: 'Katerina Skroumpelou', + title: 'Senior Engineer', + imageUrl: 'katerina-skroumpelou.avif', + }, + { + name: 'Leosvel Perez Espinosa', + title: 'Senior Engineer', + imageUrl: 'leosvel-perez-espinosa.avif', + }, + { + name: 'Louie Weng', + title: 'Software Engineer', + imageUrl: 'louie-weng.avif', + }, + { + name: 'Max Kless', + title: 'Senior Engineer', + imageUrl: 'max-kless.avif', + }, + { + name: 'Mark Lindsey', + title: 'Senior Engineer', + imageUrl: 'mark-lindsey.avif', + }, + { + name: 'Miroslav Jonas', + title: 'Senior Engineer', + imageUrl: 'miroslav-jonas.avif', + }, + { + name: 'Nicholas Cunningham', + title: 'Senior Engineer', + imageUrl: 'nicholas-cunningham.avif', + }, + { + name: 'Nicole Oliver', + title: 'Senior Engineer', + imageUrl: 'nicole-oliver.avif', + }, + { + name: 'Patrick Mariglia', + title: 'Software Engineer', + imageUrl: 'patrick-mariglia.avif', + }, + { + name: 'Philip Fulcher', + title: 'Senior Engineer', + imageUrl: 'philip-fulcher.avif', + }, + { + name: 'Rares Matei', + title: 'Architect', + imageUrl: 'rares-matei.avif', + }, + { + name: 'Steve Pentland', + title: 'Senior Engineer', + imageUrl: 'steve-pentland.avif', + }, + { + name: 'Whitney Loy', + title: 'Operations Manager', + imageUrl: 'whitney-loy.avif', + }, + { + name: 'Zack DeRose', + title: 'Senior Engineer', + imageUrl: 'zack-derose.avif', + }, +]; +export function TheTeam(): JSX.Element { + return ( + + + + + + The Team + + + + {teamMembers.map((teamMember, _) => { + return ( + + + + + + {teamMember.name} + + {teamMember.title} + + + + + + ); + })} + + + + + ); +} diff --git a/nx-dev/ui-company/tsconfig.json b/nx-dev/ui-company/tsconfig.json new file mode 100644 index 0000000000..95cfeb243d --- /dev/null +++ b/nx-dev/ui-company/tsconfig.json @@ -0,0 +1,17 @@ +{ + "compilerOptions": { + "jsx": "react-jsx", + "allowJs": false, + "esModuleInterop": false, + "allowSyntheticDefaultImports": true, + "strict": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + } + ], + "extends": "../../tsconfig.base.json" +} diff --git a/nx-dev/ui-company/tsconfig.lib.json b/nx-dev/ui-company/tsconfig.lib.json new file mode 100644 index 0000000000..9d7af8910e --- /dev/null +++ b/nx-dev/ui-company/tsconfig.lib.json @@ -0,0 +1,24 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "lib": ["dom"], + "types": [ + "node", + "@nx/react/typings/cssmodule.d.ts", + "@nx/react/typings/image.d.ts" + ] + }, + "exclude": [ + "jest.config.ts", + "**/*.spec.ts", + "**/*.test.ts", + "**/*.spec.tsx", + "**/*.test.tsx", + "**/*.spec.js", + "**/*.test.js", + "**/*.spec.jsx", + "**/*.test.jsx" + ], + "include": ["**/*.js", "**/*.jsx", "**/*.ts", "**/*.tsx"] +} diff --git a/nx-dev/ui-customers/.babelrc b/nx-dev/ui-customers/.babelrc new file mode 100644 index 0000000000..1ea870ead4 --- /dev/null +++ b/nx-dev/ui-customers/.babelrc @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "@nx/react/babel", + { + "runtime": "automatic", + "useBuiltIns": "usage" + } + ] + ], + "plugins": [] +} diff --git a/nx-dev/ui-customers/.eslintrc.json b/nx-dev/ui-customers/.eslintrc.json new file mode 100644 index 0000000000..a39ac5d057 --- /dev/null +++ b/nx-dev/ui-customers/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["plugin:@nx/react", "../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/nx-dev/ui-customers/README.md b/nx-dev/ui-customers/README.md new file mode 100644 index 0000000000..beca2421be --- /dev/null +++ b/nx-dev/ui-customers/README.md @@ -0,0 +1,7 @@ +# ui-customers + +This library was generated with [Nx](https://nx.dev). + +## Running unit tests + +Run `nx test ui-customers` to execute the unit tests via [Jest](https://jestjs.io). diff --git a/nx-dev/ui-customers/project.json b/nx-dev/ui-customers/project.json new file mode 100644 index 0000000000..5727493406 --- /dev/null +++ b/nx-dev/ui-customers/project.json @@ -0,0 +1,9 @@ +{ + "name": "ui-customers", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "nx-dev/ui-customers/src", + "projectType": "library", + "tags": [], + "// targets": "to see all targets run: nx show project ui-customers --web", + "targets": {} +} diff --git a/nx-dev/ui-customers/src/index.ts b/nx-dev/ui-customers/src/index.ts new file mode 100644 index 0000000000..3d5ecf72a4 --- /dev/null +++ b/nx-dev/ui-customers/src/index.ts @@ -0,0 +1,3 @@ +export * from './lib/hero'; +export * from './lib/enterprise-customers'; +export * from './lib/oss-projects'; diff --git a/nx-dev/ui-customers/src/lib/enterprise-customers.tsx b/nx-dev/ui-customers/src/lib/enterprise-customers.tsx new file mode 100644 index 0000000000..972aeb5b9f --- /dev/null +++ b/nx-dev/ui-customers/src/lib/enterprise-customers.tsx @@ -0,0 +1,411 @@ +import { + ManIcon, + VmwareIcon, + SevenElevenIcon, + AwsAmplifyIcon, + CapitalOneIcon, + ShopifyIcon, + AmericanAirlinesIcon, + CiscoIcon, + CaterpillarIcon, + FicoIcon, + HiltonIcon, + FedExIcon, + ParamountIcon, + AdobeIcon, + AddidasIcon, + IntelIcon, + IkeaIcon, + DeloitteIcon, + VodafoneIcon, + TMobileIcon, + MailChimpIcon, + ModernaIcon, + ClickUpIcon, + SharpIcon, + RedBullIcon, + LegoIcon, + PhilipsIcon, + BloombergIcon, + SainsburysIcon, + TideIcon, + UkgIcon, + SpliceIcon, + DnbIcon, + HetznerCloudIcon, + GhostIcon, + HasuraIcon, + PaylocityIcon, + VarianIcon, + PayfitIcon, + CasewareIcon, + ThreeKitIcon, + CaisGroupIcon, + MillienniumIcon, + EntainIcon, +} from '@nx/nx-dev/ui-common'; + +export function EnterpriseCustomers(): JSX.Element { + return ( + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ); +} diff --git a/nx-dev/ui-customers/src/lib/hero.tsx b/nx-dev/ui-customers/src/lib/hero.tsx new file mode 100644 index 0000000000..0e10759394 --- /dev/null +++ b/nx-dev/ui-customers/src/lib/hero.tsx @@ -0,0 +1,47 @@ +import { SectionHeading } from '@nx/nx-dev/ui-common/src/lib/section-tags'; +import { ButtonLink } from '@nx/nx-dev/ui-common'; + +export function Hero(): JSX.Element { + return ( + + + + + We empower our clients to + + + Build Smarter & Ship Faster + + + + Reach out + + + + Live demo{' '} + + → + + + + + + + ); +} diff --git a/nx-dev/ui-customers/src/lib/oss-projects.tsx b/nx-dev/ui-customers/src/lib/oss-projects.tsx new file mode 100644 index 0000000000..7c4a3c57d3 --- /dev/null +++ b/nx-dev/ui-customers/src/lib/oss-projects.tsx @@ -0,0 +1,93 @@ +import { SectionHeading } from '@nx/nx-dev/ui-common/src/lib/section-tags'; +import { + TanstackIcon, + LernaIcon, + EpicWebIcon, + RedwoodJsIcon, + StorybookIcon, + RxJSIcon, + SentryIcon, + MuiIcon, +} from '@nx/nx-dev/ui-common'; + +export function OssProjects(): JSX.Element { + return ( + + + + Popular OSS projects using Nx + + + + + + + + + + + + + + + + + + + + + {' '} + + + + + + + + + + + + + ); +} diff --git a/nx-dev/ui-customers/tsconfig.json b/nx-dev/ui-customers/tsconfig.json new file mode 100644 index 0000000000..95cfeb243d --- /dev/null +++ b/nx-dev/ui-customers/tsconfig.json @@ -0,0 +1,17 @@ +{ + "compilerOptions": { + "jsx": "react-jsx", + "allowJs": false, + "esModuleInterop": false, + "allowSyntheticDefaultImports": true, + "strict": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + } + ], + "extends": "../../tsconfig.base.json" +} diff --git a/nx-dev/ui-customers/tsconfig.lib.json b/nx-dev/ui-customers/tsconfig.lib.json new file mode 100644 index 0000000000..46a40b7ad3 --- /dev/null +++ b/nx-dev/ui-customers/tsconfig.lib.json @@ -0,0 +1,29 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "types": [ + "node", + "@nx/react/typings/cssmodule.d.ts", + "@nx/react/typings/image.d.ts" + ] + }, + "exclude": [ + "jest.config.ts", + "src/**/*.spec.ts", + "src/**/*.test.ts", + "src/**/*.spec.tsx", + "src/**/*.test.tsx", + "src/**/*.spec.js", + "src/**/*.test.js", + "src/**/*.spec.jsx", + "src/**/*.test.jsx" + ], + "include": [ + "src/**/*.js", + "src/**/*.jsx", + "src/**/*.ts", + "src/**/*.tsx", + "../ui-company/src/lib/layout.tsx" + ] +} diff --git a/nx-dev/ui-enterprise/src/lib/metrics-and-customers.tsx b/nx-dev/ui-enterprise/src/lib/metrics-and-customers.tsx index 46d14e03f6..295aa9fe41 100644 --- a/nx-dev/ui-enterprise/src/lib/metrics-and-customers.tsx +++ b/nx-dev/ui-enterprise/src/lib/metrics-and-customers.tsx @@ -1,17 +1,19 @@ import { motion, Variants } from 'framer-motion'; import { DownloadCaseStudy } from './download-case-study'; -import { RoyalBankOfCanadaColoredIcon } from './logos/royal-bank-of-canada'; -import { ManIcon } from './logos/man'; -import { ShopifyIcon } from './logos/shopify'; -import { CapitalOneIcon } from './logos/capital-one'; -import { VmwareIcon } from './logos/vmware'; -import { StorybookIcon } from './logos/storybook'; -import { CaterpillarIcon } from './logos/caterpillar'; -import { SevenElevenColoredIcon } from './logos/7eleven'; -import { BillColoredIcon } from './logos/bill'; -import { FicoIcon } from './logos/fico'; -import { HiltonIcon } from './logos/hilton'; -import { CiscoIcon } from './logos/cisco'; +import { + BillColoredIcon, + CapitalOneIcon, + CaterpillarIcon, + CiscoIcon, + FicoIcon, + HiltonIcon, + ManIcon, + RoyalBankOfCanadaColoredIcon, + SevenElevenColoredIcon, + ShopifyIcon, + StorybookIcon, + VmwareIcon, +} from '@nx/nx-dev/ui-common'; export function MetricsAndCustomers(): JSX.Element { const downloadElement: Variants = { diff --git a/nx-dev/ui-enterprise/src/lib/trusted-by.tsx b/nx-dev/ui-enterprise/src/lib/trusted-by.tsx index da51aabca1..5a8e2f3a92 100644 --- a/nx-dev/ui-enterprise/src/lib/trusted-by.tsx +++ b/nx-dev/ui-enterprise/src/lib/trusted-by.tsx @@ -1,21 +1,21 @@ -import { AwsAmplifyIcon } from './logos/aws-amplify'; -import { RoyalBankOfCanadaColoredIcon } from './logos/royal-bank-of-canada'; -import { CiscoIcon } from './logos/cisco'; -import { ManIcon } from './logos/man'; -import { CapitalOneIcon } from './logos/capital-one'; -import { ShopifyIcon } from './logos/shopify'; -import { VmwareIcon } from './logos/vmware'; -import { StorybookIcon } from './logos/storybook'; -import { FicoIcon } from './logos/fico'; -import { CaterpillarIcon } from './logos/caterpillar'; -import { SectionHeading } from './temp/typography'; +import { + AwsAmplifyIcon, + BillColoredIcon, + CapitalOneIcon, + CaterpillarIcon, + CiscoIcon, + FicoIcon, + HiltonIcon, + ManIcon, + ReactQueryIcon, + RedwoodJsIcon, + RoyalBankOfCanadaColoredIcon, + SevenElevenColoredIcon, + ShopifyIcon, + StorybookIcon, + VmwareIcon, +} from '@nx/nx-dev/ui-common'; import { motion } from 'framer-motion'; -import { AmericanAirlinesIcon } from './logos/american-airlines'; -import { BillColoredIcon } from './logos/bill'; -import { SevenElevenColoredIcon } from './logos/7eleven'; -import { HiltonIcon } from './logos/hilton'; -import { RedwoodJsIcon } from './logos/redwood-js'; -import { ReactQueryIcon } from './logos/react-query'; export function TrustedBy(): JSX.Element { const variants = { diff --git a/tsconfig.base.json b/tsconfig.base.json index 6d9c65e88a..a291c1a358 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -89,9 +89,12 @@ "@nx/nx-dev/ui-blog": ["nx-dev/ui-blog/src/index.ts"], "@nx/nx-dev/ui-commands": ["nx-dev/ui-commands/src/index.ts"], "@nx/nx-dev/ui-common": ["nx-dev/ui-common/src/index.ts"], + "@nx/nx-dev/ui-common/*": ["nx-dev/ui-common/*"], "@nx/nx-dev/ui-community": ["nx-dev/ui-community/src/index.ts"], + "@nx/nx-dev/ui-company": ["nx-dev/ui-company/src/index.ts"], "@nx/nx-dev/ui-conference": ["nx-dev/ui-conference/src/index.ts"], "@nx/nx-dev/ui-contact": ["nx-dev/ui-contact/src/index.ts"], + "@nx/nx-dev/ui-customers": ["nx-dev/ui-customers/src/index.ts"], "@nx/nx-dev/ui-enterprise": ["nx-dev/ui-enterprise/src/index.ts"], "@nx/nx-dev/ui-fence": ["nx-dev/ui-fence/src/index.ts"], "@nx/nx-dev/ui-home": ["nx-dev/ui-home/src/index.ts"],
+ {coFounder.title} +
+ {statement.title} +
{statement.description}
+ {teamMember.title} +
+ We empower our clients to +