damus.io

damus.io website
git clone git://jb55.com/damus.io
Log | Files | Refs | README | LICENSE

Recap.tsx (3488B)


      1 import { Onest } from 'next/font/google'
      2 import { FormattedMessage, useIntl } from "react-intl";
      3 import { motion } from "framer-motion";
      4 import { RoundedContainerWithGradientBorder } from "@/components/ui/RoundedContainerWithGradientBorder";
      5 import { cn } from "@/lib/utils";
      6 import { Lock, User, Layers, Bell, FileText, LogOut, Settings2, Gauge, Globe, Sparkles } from "lucide-react";
      7 import { MeshGradient3 } from "@/components/effects/MeshGradient.3";
      8 import { Item, ItemSection } from './ItemSection';
      9 import Link from 'next/link';
     10 import { Button } from '@/components/ui/Button';
     11 
     12 const onest = Onest({ subsets: ['latin'] })
     13 
     14 export function Recap({ className }: { className?: string }) {
     15     const intl = useIntl()
     16 
     17     const items: Item[] = [
     18         {
     19           icon: <Settings2 className="h-12 w-12 text-white opacity-80"/>,
     20           headline: intl.formatMessage({ id: "notedeck.feature.customization.name", defaultMessage: "Customization" }),
     21           description: intl.formatMessage({ id: "notedeck.feature.customization.description", defaultMessage: "Custom feeds, ability to switch between your accounts, follow hashtags in separate columns, the list goes on. Nostr prioritizes user choice and Notedeck takes this to the next level" }),
     22         },
     23         {
     24           icon: <Gauge className="h-12 w-12 text-white opacity-80"/>,
     25           headline: intl.formatMessage({ id: "notedeck.feature.speed.name", defaultMessage: "Speed" }),
     26           description: intl.formatMessage({ id: "notedeck.feature.speed.description", defaultMessage: "The fastest nostr client. Built from the ground up with an ultra-fast database made exclusively for nostr, leveraging several state-of-the-art performance techniques not available on web clients" }),
     27         },
     28         {
     29           icon: <Globe className="h-12 w-12 text-white opacity-80"/>,
     30           headline: intl.formatMessage({ id: "notedeck.feature.availability.name", defaultMessage: "Available Everywhere" }),
     31           description: intl.formatMessage({ id: "notedeck.feature.availability.description", defaultMessage: "We're no longer tied to Apple restrictions... Notedeck will eventually be available on all platforms, for everyone and with the ability to zap without approval. The sky's the limit!" }),
     32         },
     33     ]
     34 
     35     return (<>
     36       <ItemSection
     37         heading={intl.formatMessage({ id: "notedeck.recap.headline", defaultMessage: "Let’s recap" })}
     38         subHeading={intl.formatMessage({ id: "notedeck.recap.description", defaultMessage: "Damus Notedeck is a lightning fast native app that allows you to explore the nostr social network in a completely new way, with several power features. **Try it today** with our [Purple](/purple) subscription" })}
     39         items={items}
     40         customChild={
     41           <div className="flex flex-col md:flex-row gap-x-8 gap-y-4 mx-auto my-32 w-full justify-center">
     42             {(intl.locale != "ja" ||
     43               process.env.FORCE_LOAD_ALL_JA_SECTIONS) && (
     44               <Link
     45                 href="/notedeck/install"
     46                 target="_blank"
     47               >
     48                 <Button variant="accent" className="w-full md:w-auto text-xl">
     49                   <Sparkles className="mr-2" />
     50                   {intl.formatMessage({
     51                     id: "notedeck.recap.try_it_today",
     52                     defaultMessage: "Install now",
     53                   })}
     54                 </Button>
     55               </Link>
     56             )}
     57           </div>
     58         }
     59       />
     60 
     61     </>)
     62 }