Skip to content

Commit 1b21655

Browse files
authored
refactor: rename landing components (#12)
1 parent 57039bc commit 1b21655

11 files changed

Lines changed: 58 additions & 58 deletions

File tree

packages/web/app/globals.css

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@
5454
color: #0a0a0a;
5555
}
5656

57-
@keyframes cursor-fade-up {
57+
@keyframes landing-fade-up {
5858
from {
5959
opacity: 0;
6060
transform: translate3d(0, 14px, 0);
@@ -67,16 +67,16 @@
6767
}
6868
}
6969

70-
.cursor-landing {
71-
--cursor-accent: #ff8a3d;
72-
--cursor-accent-soft: rgba(255, 138, 61, 0.14);
70+
.landing {
71+
--landing-accent: #ff8a3d;
72+
--landing-accent-soft: rgba(255, 138, 61, 0.14);
7373
}
7474

75-
.cursor-fade-up {
76-
animation: cursor-fade-up 700ms cubic-bezier(0.22, 1, 0.36, 1) both;
75+
.landing-fade-up {
76+
animation: landing-fade-up 700ms cubic-bezier(0.22, 1, 0.36, 1) both;
7777
}
7878

79-
@keyframes cursor-shimmer {
79+
@keyframes landing-shimmer {
8080
0% {
8181
background-position: 0% 50%;
8282
}
@@ -86,11 +86,11 @@
8686
}
8787

8888
.animate-shimmer {
89-
animation: cursor-shimmer 1400ms linear infinite;
89+
animation: landing-shimmer 1400ms linear infinite;
9090
}
9191

9292
@media (prefers-reduced-motion: reduce) {
93-
.cursor-fade-up,
93+
.landing-fade-up,
9494
.animate-shimmer {
9595
animation: none;
9696
}
@@ -126,12 +126,12 @@
126126
height: 0;
127127
}
128128

129-
.cursor-terminal-scroll {
129+
.landing-terminal-scroll {
130130
scrollbar-width: none;
131131
-ms-overflow-style: none;
132132
}
133133

134-
.cursor-terminal-scroll::-webkit-scrollbar {
134+
.landing-terminal-scroll::-webkit-scrollbar {
135135
display: none;
136136
width: 0;
137137
height: 0;

packages/web/app/page.tsx

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
1-
import { CursorFrontier } from "../components/landing/cursor-bento"
2-
import { CursorFeatures } from "../components/landing/cursor-features"
3-
import { CursorFooter } from "../components/landing/cursor-footer"
4-
import { CursorHero } from "../components/landing/cursor-hero"
5-
import { CursorNav } from "../components/landing/cursor-nav"
1+
import { LandingFrontier } from "../components/landing/landing-bento"
2+
import { LandingFeatures } from "../components/landing/landing-features"
3+
import { LandingFooter } from "../components/landing/landing-footer"
4+
import { LandingHero } from "../components/landing/landing-hero"
5+
import { LandingNav } from "../components/landing/landing-nav"
66

77
export default function Page() {
88
return (
9-
<main className="cursor-landing relative isolate min-h-screen bg-[#100E0E] text-white selection:bg-white/20 selection:text-white">
9+
<main className="landing relative isolate min-h-screen bg-[#100E0E] text-white selection:bg-white/20 selection:text-white">
1010
<div className="pointer-events-none absolute inset-y-0 left-0 right-0 hidden md:block">
1111
<div className="mx-auto h-full max-w-[1320px] border-x border-x-white/14" />
1212
</div>
1313
<div className="relative z-10">
14-
<CursorNav />
15-
<CursorHero />
16-
<CursorFeatures />
17-
<CursorFrontier />
18-
<CursorFooter />
14+
<LandingNav />
15+
<LandingHero />
16+
<LandingFeatures />
17+
<LandingFrontier />
18+
<LandingFooter />
1919
</div>
2020
</main>
2121
)

packages/web/app/story/page.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type { Metadata } from "next"
2-
import { CursorNav } from "../../components/landing/cursor-nav"
2+
import { LandingNav } from "../../components/landing/landing-nav"
33

44
const intro = [
55
"3am. Phone buzzes. Production alert. Something is wrong, but not with our code - our code is perfect. Passed every test, every lint check, every code review. The problem? The AI provider started rate limiting us and our retry logic had a subtle bug that nobody ever caught. Because in development, the API never fails.",
@@ -77,13 +77,13 @@ export const metadata: Metadata = {
7777

7878
export default function Page() {
7979
return (
80-
<main className="cursor-landing relative isolate min-h-screen bg-[#100E0E] text-white selection:bg-white/20 selection:text-white">
80+
<main className="landing relative isolate min-h-screen bg-[#100E0E] text-white selection:bg-white/20 selection:text-white">
8181
<div className="pointer-events-none absolute inset-y-0 left-0 right-0 hidden md:block">
8282
<div className="mx-auto h-full max-w-[1320px] border-x border-x-white/14" />
8383
</div>
8484

8585
<div className="relative z-10">
86-
<CursorNav />
86+
<LandingNav />
8787

8888
<section className="pt-28 pb-20 md:pt-36 md:pb-28">
8989
<div className="mx-auto max-w-[1320px] px-6">

packages/web/components/landing/cursor-bento.tsx renamed to packages/web/components/landing/landing-bento.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ function mark(index: number) {
8686
)
8787
}
8888

89-
export function CursorFrontier() {
89+
export function LandingFrontier() {
9090
return (
9191
<section>
9292
<div className="mx-auto max-w-[1320px] border-t border-white/5 px-6 py-20 md:py-28">
@@ -134,7 +134,7 @@ export function CursorFrontier() {
134134
<div className="mt-6">
135135
<Link
136136
href={item.href}
137-
className="inline-flex items-center gap-1.5 text-sm font-medium text-(--cursor-accent) hover:opacity-80 transition-opacity"
137+
className="inline-flex items-center gap-1.5 text-sm font-medium text-(--landing-accent) hover:opacity-80 transition-opacity"
138138
>
139139
{item.label} <span aria-hidden="true"></span>
140140
</Link>

packages/web/components/landing/cursor-features.tsx renamed to packages/web/components/landing/landing-features.tsx

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
import Link from "next/link"
44
import type { ReactNode } from "react"
5-
import { CursorMacWindow } from "./cursor-mac-window"
6-
import { CursorStage } from "./cursor-stage"
5+
import { LandingWindow } from "./landing-window"
6+
import { LandingStage } from "./landing-stage"
77

88
type row = {
99
readonly tone: "cmd" | "code" | "dim"
@@ -51,7 +51,7 @@ function LearnMore({ href, label }: { readonly href: string; readonly label: str
5151
return (
5252
<Link
5353
href={href}
54-
className="inline-flex items-center gap-1.5 text-sm font-medium text-(--cursor-accent) hover:opacity-80 transition-opacity"
54+
className="inline-flex items-center gap-1.5 text-sm font-medium text-(--landing-accent) hover:opacity-80 transition-opacity"
5555
>
5656
{label} <span aria-hidden="true"></span>
5757
</Link>
@@ -121,19 +121,19 @@ function Spotlight({
121121
</div>
122122

123123
<div className={flip ? "order-1 md:order-1" : "order-1 md:order-2"}>
124-
<CursorStage tone={tone} square>
124+
<LandingStage tone={tone} square>
125125
<div className="mx-auto w-full max-w-[1160px]">
126-
<CursorMacWindow title="" bar={false}>
126+
<LandingWindow title="" bar={false}>
127127
{window}
128-
</CursorMacWindow>
128+
</LandingWindow>
129129
</div>
130-
</CursorStage>
130+
</LandingStage>
131131
</div>
132132
</div>
133133
)
134134
}
135135

136-
export function CursorFeatures() {
136+
export function LandingFeatures() {
137137
return (
138138
<section>
139139
<div className="mx-auto max-w-[1320px] px-6 pt-20 pb-20 md:pt-28 md:pb-28">

packages/web/components/landing/cursor-footer.tsx renamed to packages/web/components/landing/landing-footer.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import Link from "next/link"
22

3-
export function CursorFooter() {
3+
export function LandingFooter() {
44
return (
55
<footer>
66
<div className="mx-auto max-w-[1320px] border-t border-white/8 px-6 py-14 md:py-18">

packages/web/components/landing/cursor-hero.tsx renamed to packages/web/components/landing/landing-hero.tsx

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,30 @@
11
"use client"
22

33
import Link from "next/link"
4-
import { CursorMacWindow } from "./cursor-mac-window"
5-
import { CursorStage } from "./cursor-stage"
6-
import { CursorTerminal } from "./cursor-terminal"
4+
import { LandingWindow } from "./landing-window"
5+
import { LandingStage } from "./landing-stage"
6+
import { LandingTerminal } from "./landing-terminal"
77

8-
export function CursorHero() {
8+
export function LandingHero() {
99
return (
1010
<section className="relative overflow-hidden pt-32 pb-0 md:pt-44 md:pb-0">
1111
<div className="mx-auto max-w-[1320px] px-6">
1212
<div className="max-w-184">
1313
<h1
14-
className="cursor-fade-up text-5xl font-semibold tracking-tighter text-white sm:text-6xl md:text-7xl leading-[1.03]"
14+
className="landing-fade-up text-5xl font-semibold tracking-tighter text-white sm:text-6xl md:text-7xl leading-[1.03]"
1515
style={{ animationDelay: "30ms" }}
1616
>
1717
Ship resilient AI and APIs.
1818
</h1>
1919
<p
20-
className="cursor-fade-up mt-6 text-lg text-[#A1A1A1] leading-relaxed"
20+
className="landing-fade-up mt-6 text-lg text-[#A1A1A1] leading-relaxed"
2121
style={{ animationDelay: "90ms" }}
2222
>
2323
Inject realistic failures into AI SDK flows and core async APIs before launch.
2424
</p>
2525
</div>
2626

27-
<div className="cursor-fade-up mt-8 flex items-center" style={{ animationDelay: "150ms" }}>
27+
<div className="landing-fade-up mt-8 flex items-center" style={{ animationDelay: "150ms" }}>
2828
<Link
2929
href="/docs"
3030
className="group inline-flex h-14 items-center gap-3 rounded-none border border-white/14 bg-[#151313] px-8 text-base font-medium text-white transition-colors hover:bg-[#1A1818]"
@@ -46,14 +46,14 @@ export function CursorHero() {
4646
</div>
4747

4848
<div className="mx-auto mt-16 max-w-[1320px] px-6 md:mt-20 md:px-0">
49-
<div className="cursor-fade-up" style={{ animationDelay: "240ms" }}>
50-
<CursorStage tone="dune" square>
49+
<div className="landing-fade-up" style={{ animationDelay: "240ms" }}>
50+
<LandingStage tone="dune" square>
5151
<div className="mx-auto w-full max-w-[1160px]">
52-
<CursorMacWindow title="terminal" bar={false}>
53-
<CursorTerminal />
54-
</CursorMacWindow>
52+
<LandingWindow title="terminal" bar={false}>
53+
<LandingTerminal />
54+
</LandingWindow>
5555
</div>
56-
</CursorStage>
56+
</LandingStage>
5757
</div>
5858
</div>
5959
</section>

packages/web/components/landing/cursor-nav.tsx renamed to packages/web/components/landing/landing-nav.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { Github } from "lucide-react"
44
import Link from "next/link"
55
import { useEffect, useState } from "react"
66

7-
export function CursorNav() {
7+
export function LandingNav() {
88
const [scrolled, setScrolled] = useState(false)
99

1010
useEffect(() => {

packages/web/components/landing/cursor-stage.tsx renamed to packages/web/components/landing/landing-stage.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import type { ReactNode } from "react"
22

3-
type CursorStageTone = "dune" | "mist" | "sage"
3+
type LandingStageTone = "dune" | "mist" | "sage"
44

55
const toneStyles: Record<
6-
CursorStageTone,
6+
LandingStageTone,
77
{ backgroundColor: string; backgroundImage: string; shadow: string }
88
> = {
99
dune: {
@@ -29,12 +29,12 @@ const toneStyles: Record<
2929
},
3030
}
3131

32-
export function CursorStage({
32+
export function LandingStage({
3333
tone = "dune",
3434
square = false,
3535
children,
3636
}: {
37-
readonly tone?: CursorStageTone
37+
readonly tone?: LandingStageTone
3838
readonly square?: boolean
3939
readonly children: ReactNode
4040
}) {

packages/web/components/landing/cursor-terminal.tsx renamed to packages/web/components/landing/landing-terminal.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ function style(tone: tone): string {
8181
}
8282
}
8383

84-
export function CursorTerminal() {
84+
export function LandingTerminal() {
8585
const [slot, setslot] = useState(1)
8686
const active = scenes[slot]
8787
const rows = useMemo(() => active.data, [active])
@@ -103,7 +103,7 @@ export function CursorTerminal() {
103103
</div>
104104
</div>
105105

106-
<div className="cursor-terminal-scroll flex-1 overflow-y-auto bg-[#050505] px-4 py-3 font-mono text-[12px] leading-[1.62] tabular-nums">
106+
<div className="landing-terminal-scroll flex-1 overflow-y-auto bg-[#050505] px-4 py-3 font-mono text-[12px] leading-[1.62] tabular-nums">
107107
{rows.map((row, index) => (
108108
<div
109109
key={`${active.name}-${index}`}
@@ -115,7 +115,7 @@ export function CursorTerminal() {
115115
</div>
116116

117117
<div className="border-t border-white/8 bg-black/15 px-2 py-1.5">
118-
<div className="cursor-terminal-scroll flex items-center gap-1 overflow-x-auto font-mono text-[11px] text-white/45">
118+
<div className="landing-terminal-scroll flex items-center gap-1 overflow-x-auto font-mono text-[11px] text-white/45">
119119
{scenes.map((scene, index) => {
120120
const current = index === slot
121121
return (

0 commit comments

Comments
 (0)