185 lines
8.5 KiB
TypeScript
Raw Normal View History

2023-10-17 11:21:33 -04:00
import Link from "next/link";
2023-10-13 19:02:59 -04:00
import { Button } from "@/components/ui/button";
2023-10-17 11:08:27 -04:00
2023-10-20 08:22:15 -04:00
const stats = [
2023-10-20 09:02:55 -04:00
{ label: "Trusted users on Nostr", value: "111,597" },
{ label: "Satoshis Zapped", value: "1.2 billion" },
{ label: "Active relays", value: "1,915" },
2023-10-17 11:08:27 -04:00
];
2023-10-13 19:02:59 -04:00
export default function LandingPage() {
return (
2023-10-17 11:08:27 -04:00
<main>
<div className="relative isolate">
<svg
className="absolute inset-x-0 top-0 -z-10 h-[64rem] w-full stroke-zinc-200 [mask-image:radial-gradient(32rem_32rem_at_center,white,transparent)]"
aria-hidden="true"
>
<defs>
<pattern
id="1f932ae7-37de-4c0a-a8b0-a6e3b4d44b84"
width={200}
height={200}
x="50%"
y={-1}
patternUnits="userSpaceOnUse"
>
<path d="M.5 200V.5H200" fill="none" />
</pattern>
</defs>
<svg x="50%" y={-1} className="overflow-visible fill-zinc-50">
<path
d="M-200 0h201v201h-201Z M600 0h201v201h-201Z M-400 600h201v201h-201Z M200 800h201v201h-201Z"
strokeWidth={0}
/>
</svg>
<rect
width="100%"
height="100%"
strokeWidth={0}
fill="url(#1f932ae7-37de-4c0a-a8b0-a6e3b4d44b84)"
/>
</svg>
<div
className="absolute left-1/2 right-0 top-0 -z-10 -ml-24 transform-gpu overflow-hidden blur-3xl lg:ml-24 xl:ml-48"
aria-hidden="true"
>
<div
className="aspect-[801/1036] w-[50.0625rem] bg-gradient-to-tr from-primary to-primary opacity-30"
style={{
clipPath:
"polygon(63.1% 29.5%, 100% 17.1%, 76.6% 3%, 48.4% 0%, 44.6% 4.7%, 54.5% 25.3%, 59.8% 49%, 55.2% 57.8%, 44.4% 57.2%, 27.8% 47.9%, 35.1% 81.5%, 0% 97.7%, 39.2% 100%, 35.2% 81.4%, 97.2% 52.8%, 63.1% 29.5%)",
}}
/>
2023-10-13 19:02:59 -04:00
</div>
2023-10-17 11:08:27 -04:00
<div className="overflow-hidden">
<div className="mx-auto max-w-7xl px-6 pb-32 pt-16 sm:pt-40 lg:px-8 lg:pt-16">
<div className="mx-auto max-w-2xl gap-x-14 lg:mx-0 lg:flex lg:max-w-none lg:items-center">
<div className="w-full max-w-xl lg:shrink-0 xl:max-w-2xl">
<h1 className="text-4xl font-bold tracking-tight text-zinc-900 sm:text-6xl">
2023-10-17 11:34:46 -04:00
Own your following. Only on Nostr.
2023-10-17 11:08:27 -04:00
</h1>
<p className="relative mt-6 text-lg leading-8 text-zinc-600 sm:max-w-md lg:max-w-none">
2023-10-17 11:34:46 -04:00
We're bringing the creator economy onto Nostr. The days of
walled gardens are coming to an end. It's time to truly own
2023-10-17 13:16:10 -04:00
your following, no-longer dependent on an external company.
2023-10-13 19:02:59 -04:00
</p>
2023-10-17 11:08:27 -04:00
<div className="mt-10 flex items-center gap-x-6">
2023-10-17 11:21:33 -04:00
<Link href="/app">
2023-10-17 11:34:46 -04:00
<Button size={"lg"} className="rounded-sm">
Start Exploring
</Button>
2023-10-17 11:21:33 -04:00
</Link>
2023-10-17 11:08:27 -04:00
2023-10-17 11:21:33 -04:00
{/* <a
2023-10-17 11:08:27 -04:00
href="#"
className="text-sm font-semibold leading-6 text-zinc-900"
2023-10-13 19:02:59 -04:00
>
2023-10-17 11:08:27 -04:00
Live demo <span aria-hidden="true"></span>
2023-10-17 11:21:33 -04:00
</a> */}
2023-10-17 11:08:27 -04:00
</div>
</div>
<div className="mt-14 flex justify-end gap-8 sm:-mt-44 sm:justify-start sm:pl-20 lg:mt-0 lg:pl-0">
<div className="ml-auto w-44 flex-none space-y-8 pt-32 sm:ml-0 sm:pt-80 lg:order-last lg:pt-36 xl:order-none xl:pt-80">
<div className="relative">
<img
2023-10-17 11:34:46 -04:00
src="https://o-0-o-image-storage.s3.amazonaws.com/Screenshot+2023-10-17+at+11.30.33+AM.png"
2023-10-17 11:08:27 -04:00
alt=""
2023-10-17 11:34:46 -04:00
className="aspect-[5/7] w-full rounded-xl bg-zinc-900/5 object-cover shadow-lg"
2023-10-17 11:08:27 -04:00
/>
<div className="pointer-events-none absolute inset-0 rounded-xl ring-1 ring-inset ring-zinc-900/10" />
2023-10-13 19:02:59 -04:00
</div>
</div>
2023-10-17 11:08:27 -04:00
<div className="mr-auto w-44 flex-none space-y-8 sm:mr-0 sm:pt-52 lg:pt-36">
<div className="relative">
<img
2023-10-17 11:34:46 -04:00
src="https://o-0-o-image-storage.s3.amazonaws.com/Screenshot+2023-10-17+at+11.16.43+AM.png"
2023-10-17 11:08:27 -04:00
alt=""
2023-10-17 11:34:46 -04:00
className="aspect-[5/7] w-full rounded-xl bg-zinc-900/5 object-cover shadow-lg"
2023-10-17 11:08:27 -04:00
/>
<div className="pointer-events-none absolute inset-0 rounded-xl ring-1 ring-inset ring-zinc-900/10" />
</div>
<div className="relative">
<img
2023-10-17 11:34:46 -04:00
src="https://o-0-o-image-storage.s3.amazonaws.com/Screenshot+2023-10-17+at+11.22.52+AM.png"
2023-10-17 11:08:27 -04:00
alt=""
2023-10-17 11:34:46 -04:00
className="aspect-[5/7] w-full rounded-xl bg-zinc-900/5 object-cover shadow-lg"
2023-10-17 11:08:27 -04:00
/>
<div className="pointer-events-none absolute inset-0 rounded-xl ring-1 ring-inset ring-zinc-900/10" />
</div>
</div>
<div className="w-44 flex-none space-y-8 pt-32 sm:pt-0">
<div className="relative">
<img
2023-10-17 11:34:46 -04:00
src="https://o-0-o-image-storage.s3.amazonaws.com/Screenshot+2023-10-17+at+11.16.36+AM.png"
2023-10-17 11:08:27 -04:00
alt=""
2023-10-17 11:34:46 -04:00
className="aspect-[5/7] w-full rounded-xl bg-zinc-900/5 object-cover shadow-lg"
2023-10-17 11:08:27 -04:00
/>
<div className="pointer-events-none absolute inset-0 rounded-xl ring-1 ring-inset ring-zinc-900/10" />
</div>
<div className="relative">
<img
2023-10-17 11:34:46 -04:00
src="https://o-0-o-image-storage.s3.amazonaws.com/Screenshot+2023-10-17+at+11.16.09+AM.png"
2023-10-17 11:08:27 -04:00
alt=""
2023-10-17 11:34:46 -04:00
className="aspect-[5/7] w-full rounded-xl bg-zinc-900/5 object-cover shadow-lg"
2023-10-17 11:08:27 -04:00
/>
<div className="pointer-events-none absolute inset-0 rounded-xl ring-1 ring-inset ring-zinc-900/10" />
2023-10-13 19:02:59 -04:00
</div>
</div>
</div>
</div>
</div>
</div>
2023-10-17 11:08:27 -04:00
</div>
2023-10-20 08:22:15 -04:00
<div className="mx-auto -mt-12 max-w-7xl px-6 sm:mt-0 lg:px-8 xl:-mt-8">
<div className="mx-auto max-w-2xl lg:mx-0 lg:max-w-none">
2023-10-20 09:02:55 -04:00
<h2 className="text-3xl font-bold tracking-tight text-zinc-900 sm:text-4xl">
2023-10-20 08:22:15 -04:00
Why Nostr
</h2>
<div className="mt-6 flex flex-col gap-x-8 gap-y-20 lg:flex-row">
<div className="lg:w-full lg:max-w-2xl lg:flex-auto">
2023-10-20 09:02:55 -04:00
<p className="text-xl leading-8 text-zinc-600">
2023-10-20 09:09:16 -04:00
The internet is changing. We have shifted from the open frontier
2023-10-20 09:02:55 -04:00
of "The Network" to a series of walled gardens hording userdata
to best monatize thier engagment. Nostr breaks down these walls,
2023-10-20 09:09:16 -04:00
you data follows you wherever you decide to go.
2023-10-20 08:22:15 -04:00
</p>
2023-10-20 09:02:55 -04:00
<div className="mt-10 max-w-xl text-base leading-7 text-zinc-700">
2023-10-20 08:22:15 -04:00
<p>
2023-10-20 09:02:55 -04:00
This is often portrayed as a defense against the censorious
Big Tech company. But, it means so much more. It means having
the freedom to move to a different platform for reasons as
simple as preferring the UI, or maybe just exploring a new
feature.
2023-10-20 08:22:15 -04:00
</p>
<p className="mt-10">
2023-10-20 09:02:55 -04:00
Switching from one platform to another is as effortless as
comparing sports scores on different websites. The underlying
data is the same; you just now have the power to decide how it
is presented to you.
2023-10-20 08:22:15 -04:00
</p>
</div>
</div>
<div className="lg:flex lg:flex-auto lg:justify-center">
<dl className="w-64 space-y-8 xl:w-80">
{stats.map((stat) => (
<div
key={stat.label}
className="flex flex-col-reverse gap-y-4"
>
2023-10-20 09:02:55 -04:00
<dt className="text-base leading-7 text-zinc-600">
2023-10-20 08:22:15 -04:00
{stat.label}
</dt>
2023-10-20 09:02:55 -04:00
<dd className="text-5xl font-semibold tracking-tight text-zinc-900">
2023-10-20 08:22:15 -04:00
{stat.value}
</dd>
</div>
))}
</dl>
</div>
</div>
</div>
</div>
2023-10-17 11:08:27 -04:00
</main>
2023-10-13 19:02:59 -04:00
);
}