import React from "react"; import Head from "next/head"; import cn from "classnames"; import Link from "next/link"; import { motion } from "framer-motion"; import { Clients } from "../../clients/Clients"; import { Marquee } from "../../clients/Marquee"; import { TurboheroBackground } from "./TurboHeroBackground"; import { Turborepo } from "./Turborepo"; import { Turbopack } from "./Turbopack"; import { FadeIn } from "../home-shared/FadeIn"; import { LandingPageGlobalStyles } from "../home-shared/GlobalStyles"; import styles from "./index.module.css"; import PackLogo from "../../logos/PackLogo"; import RepoLogo from "../../logos/RepoLogo"; function Background() { return (
); } export function CardBadge({ children }: { children: React.ReactNode }) { return (
{children}
); } const variants = { hidden: { opacity: 0 }, active: { opacity: 1 }, }; function Card({ alt, href, title, icon: Icon, className, children, }: { href: string; icon: React.ElementType; title: "repo" | "pack"; alt?: string; className?: string; children: React.ReactNode; }) { const [hovering, setHovering] = React.useState(false); return ( setHovering(true)} onMouseLeave={() => setHovering(false)} >
{title == "pack" ? ( ) : ( )} {children}
); } function SiteCards() { return (

High-performance build system for JavaScript and TypeScript codebases.

alpha

Introducing the Rust-powered successor to Webpack.

); } function Teams() { return (

Trusted by teams from
around the world

); } function LandingPage() { return ( <>

Make Ship Happen

Turbo is an incremental bundler and build system optimized for JavaScript and TypeScript, written in Rust.

); } export default LandingPage;