/* eslint-disable react/no-unescaped-entities */ "use client"; import React from "react"; import Link from "next/link"; import { useRouter } from "next/navigation"; import { Button } from "@/components/ui/button"; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "@/components/ui/card"; import { Badge } from "@/components/ui/badge"; import { Navbar } from "@/components/navbar"; import { GitStarButton } from "@/src/components/eldoraui/gitstarbutton"; import { LiveStatsButton } from "@/src/components/ui/live-stats-button"; import { useTheme } from "next-themes"; import { cn } from "@/lib/utils"; import Image from "next/image"; import { Status, StatusIndicator, StatusLabel, } from "@/src/components/ui/kibo-ui/status"; // import Lenis from "lenis"; import { Announcement, AnnouncementTag, AnnouncementTitle, } from "@/src/components/ui/kibo-ui/announcement"; import { ArrowUpRightIcon } from "lucide-react"; import { useUser } from "@/components/user-provider"; import { Kanban, Zap, Users, Shield, ArrowRight, Check, Star, Crown, TabletSmartphone, GithubIcon, } from "lucide-react"; import { ShineBorder } from "@/src/components/magicui/shine-border"; import TextReveal from "@/src/components/magicui/text-reveal"; import LovedBy from "@/components/customized/avatar/avatar-12"; export default function Home() { const { user, loading, signOut } = useUser(); const router = useRouter(); const { theme, setTheme } = useTheme(); // Variable declaration for features and pricing plans to prevent manual repetition // This allows for easier updates and management of features and pricing plans const [features] = React.useState([ { icon: , title: "Kanban Boards", description: "Visualize your workflow with customizable Kanban boards. Drag and drop tasks between columns.", }, { icon: , title: "Lightning Fast", description: "Built with modern technologies for blazing fast performance and real-time updates.", }, { icon: , title: "Team collaboration", description: "Invite team members, assign tasks, and collaborate seamlessly in real-time.", }, { icon: , title: "Secure & Reliable", description: "Your data is protected with enterprise-grade security and backed up automatically.", }, { icon: , title: "Unlimited Projects", description: "Pro plan includes unlimited projects, advanced features, and priority support.", }, { icon: ( ), title: "Responsive Design", description: "Access your projects from anywhere even on mobile devices, with our fully responsive design.", }, ]); const [pricingPlans] = React.useState([ { title: "Free", isPro: false, description: "Perfect for personal use", price: "$0", priceNote: "/month", features: [ { text: "1 Project", available: true }, { text: "Unlimited Tasks", available: true }, { text: "All Core Features", available: true }, ], button: { text: user ? "Go to Dashboard" : "Get Started", href: user ? "/dashboard" : "/signup", variant: "outline" as "outline", }, }, { title: "Pro", isPro: true, description: "For teams and power users", price: "$4.90", priceNote: "/month", features: [ { text: "Unlimited Projects", available: true }, { text: "Unlimited Tasks", available: true }, { text: "All Core Features", available: true }, { text: "Advanced Features", available: true }, { text: "Team Management", available: true }, { text: "Bookmarks", available: true }, { text: "Integrations (soon)", available: false }, { text: "Notes (soon)", available: false }, { text: "Analytics (soon)", available: false }, { text: "Lists (soon)", available: false }, { text: "AI Planner (soon)", available: false }, { text: "Meetings (soon)", available: false }, ], button: { text: "Upgrade to Pro", href: user ? "/dashboard/billing" : "/signup", variant: "default" as "default", }, }, { title: "Self-Host", isPro: false, description: "Run Kanba on your own server", price: "Free", priceNote: "", features: [ { text: "Full control", available: true }, { text: "All Features Included", available: true }, { text: "Full Access to the Source Code", available: true }, { text: "Complete Customization", available: true }, { text: "Your Data Stays with You", available: true }, { text: "White-label Branding", available: true }, ], button: { text: ( <> View on GitHub ), href: "https://github.com/Uaghazade1/kanba", variant: "outline" as "outline", external: true, }, }, ]); const handleSignOut = async () => { await signOut(); router.push("/"); }; // Initialize Lenis for smooth scrolling // const lenis = new Lenis({ // autoRaf: true, // }); if (loading) { return (
); } // Each section has a unique background color controlled by the theme to provide a consistent/contrast look and feel return (
{/* Hero Section */}

Project Management Reimagined for Builders

An open-source platform to move fast and build what matters. Simple, powerful, and yes, AI-powered.

{user ? ( ) : ( <> )}
Already loved by{" "} +1000 people
hero
{/* Features Section */}

Everything You Need to

Stay Organized and Productive

{features.map((feature, idx) => (
{feature.icon}
{feature.title}
{feature.description}
))}

You are in good company

{/* Badges Container */}
{/* Product Hunt Badge */}
#4 on Product Hunt Kanba - Open-source project management tool for modern teams | Product Hunt
{/* Vercel OSS Badge */}
Supported by Vercel Vercel OSS Program
Kanba is an open-source project management tool for makers and teams. Cut the noise, focus on what matters. Not trying to replace Trello or Jira, just doing project management simple and right.
{/* Pricing Section */}

Simple, Transparent Pricing

Choose the plan that's right for you

{pricingPlans.map((plan, idx) => ( {plan.isPro && (
)}
{plan.title} {plan.description}
{plan.price} {plan.priceNote && ( {plan.priceNote} )}
    {plan.features.map((feature, i) => (
  • {feature.text}
  • ))}
{"external" in plan.button ? ( ) : ( )}
))}

Ready to organize your work better?

{/* Footer */}