import { buttonVariants } from "@/components/ui/button"; import { cn } from "@/lib/utils"; import { Check, ExternalLink } from "lucide-react"; import { CLOUD_SIGNUP_LINK, DOCS_LINK, GITHUB_LINK } from "./constants"; import NavBar from "./Navbar"; const CONTACT_EMAIL = "mailto:support@karakeep.app"; const pricingTiers = [ { name: "Free", price: "$0", period: "", description: "Trying Karakeep out", features: [ "10 bookmarks", "20MB storage", "Mobile & web apps", "Browser extensions", ], buttonText: "Get Started", buttonVariant: "outline" as const, popular: false, }, { name: "Pro", price: "$4", period: "per month", description: "For serious bookmark collectors", features: [ "50,000 bookmarks", "50GB storage", "AI-powered tagging", "Full-text search", "Mobile & web apps", "Browser extensions", ], buttonText: "Get Started", buttonVariant: "default" as const, popular: true, }, { name: "Self-Hosted", price: "Free", period: "forever", description: "Complete control and privacy", features: [ "Unlimited bookmarks", "Unlimited storage", "Complete data control", "Mobile & web apps", "Browser extensions", "Community support", ], buttonText: "View on GitHub", buttonVariant: "outline" as const, popular: false, isGitHub: true, }, { name: "Corporate", price: "Custom", period: "per seat", description: "For teams and organizations", features: [ "Everything in Pro", "Custom deployment & domain", "Single Sign-On (SSO)", "User management", "Priority support", ], buttonText: "Contact Us", buttonVariant: "outline" as const, popular: false, isContact: true, }, ]; function PricingHeader() { return (
Choose the plan that works best for you
{tier.description}
{faq.answer}