From 6415d4fd5736f28deb16edbf86b4579938988457 Mon Sep 17 00:00:00 2001 From: "DESKTOP-RTLN3BA\\$punk" Date: Thu, 2 Oct 2025 18:10:07 -0700 Subject: [PATCH 1/2] feat: updated homepage and pricing --- surfsense_web/app/(home)/contact/page.tsx | 12 + surfsense_web/app/(home)/layout.tsx | 14 + .../{ => (home)}/login/AmbientBackground.tsx | 0 .../{ => (home)}/login/GoogleLoginButton.tsx | 0 .../app/{ => (home)}/login/LocalLoginForm.tsx | 0 surfsense_web/app/{ => (home)}/login/page.tsx | 2 +- surfsense_web/app/{ => (home)}/page.tsx | 14 +- surfsense_web/app/(home)/pricing/page.tsx | 12 + .../app/{ => (home)}/privacy/page.tsx | 0 .../app/{ => (home)}/register/page.tsx | 0 surfsense_web/app/{ => (home)}/terms/page.tsx | 0 surfsense_web/app/contact/page.tsx | 12 - surfsense_web/app/pricing/page.tsx | 12 - surfsense_web/components/Navbar.tsx | 305 ---------- .../homepage/ModernHeroWithGradients.tsx | 549 ------------------ surfsense_web/components/homepage/cta.tsx | 2 +- .../components/homepage/features-card.tsx | 58 +- .../{Footer.tsx => homepage/footer.tsx} | 2 +- .../components/homepage/hero-section.tsx | 318 ++++++++++ .../components/homepage/integrations.tsx | 185 ++++++ surfsense_web/components/homepage/navbar.tsx | 177 ++++++ surfsense_web/components/pricing.tsx | 97 ++-- .../components/pricing/pricing-section.tsx | 71 +-- surfsense_web/package.json | 1 + surfsense_web/pnpm-lock.yaml | 12 + .../public/homepage/temp_hero_dark.png | Bin 0 -> 58151 bytes .../public/homepage/temp_hero_light.png | Bin 0 -> 59611 bytes 27 files changed, 857 insertions(+), 998 deletions(-) create mode 100644 surfsense_web/app/(home)/contact/page.tsx create mode 100644 surfsense_web/app/(home)/layout.tsx rename surfsense_web/app/{ => (home)}/login/AmbientBackground.tsx (100%) rename surfsense_web/app/{ => (home)}/login/GoogleLoginButton.tsx (100%) rename surfsense_web/app/{ => (home)}/login/LocalLoginForm.tsx (100%) rename surfsense_web/app/{ => (home)}/login/page.tsx (100%) rename surfsense_web/app/{ => (home)}/page.tsx (50%) create mode 100644 surfsense_web/app/(home)/pricing/page.tsx rename surfsense_web/app/{ => (home)}/privacy/page.tsx (100%) rename surfsense_web/app/{ => (home)}/register/page.tsx (100%) rename surfsense_web/app/{ => (home)}/terms/page.tsx (100%) delete mode 100644 surfsense_web/app/contact/page.tsx delete mode 100644 surfsense_web/app/pricing/page.tsx delete mode 100644 surfsense_web/components/Navbar.tsx delete mode 100644 surfsense_web/components/homepage/ModernHeroWithGradients.tsx rename surfsense_web/components/{Footer.tsx => homepage/footer.tsx} (97%) create mode 100644 surfsense_web/components/homepage/hero-section.tsx create mode 100644 surfsense_web/components/homepage/integrations.tsx create mode 100644 surfsense_web/components/homepage/navbar.tsx create mode 100644 surfsense_web/public/homepage/temp_hero_dark.png create mode 100644 surfsense_web/public/homepage/temp_hero_light.png diff --git a/surfsense_web/app/(home)/contact/page.tsx b/surfsense_web/app/(home)/contact/page.tsx new file mode 100644 index 000000000..44a6e6d74 --- /dev/null +++ b/surfsense_web/app/(home)/contact/page.tsx @@ -0,0 +1,12 @@ +import React from "react"; +import { ContactFormGridWithDetails } from "@/components/contact/contact-form"; + +const page = () => { + return ( +
+ +
+ ); +}; + +export default page; diff --git a/surfsense_web/app/(home)/layout.tsx b/surfsense_web/app/(home)/layout.tsx new file mode 100644 index 000000000..06832cfc4 --- /dev/null +++ b/surfsense_web/app/(home)/layout.tsx @@ -0,0 +1,14 @@ +"use client"; + +import { Footer } from "@/components/homepage/footer"; +import { Navbar } from "@/components/homepage/navbar"; + +export default function HomePageLayout({ children }: { children: React.ReactNode }) { + return ( +
+ + {children} +
+
+ ); +} diff --git a/surfsense_web/app/login/AmbientBackground.tsx b/surfsense_web/app/(home)/login/AmbientBackground.tsx similarity index 100% rename from surfsense_web/app/login/AmbientBackground.tsx rename to surfsense_web/app/(home)/login/AmbientBackground.tsx diff --git a/surfsense_web/app/login/GoogleLoginButton.tsx b/surfsense_web/app/(home)/login/GoogleLoginButton.tsx similarity index 100% rename from surfsense_web/app/login/GoogleLoginButton.tsx rename to surfsense_web/app/(home)/login/GoogleLoginButton.tsx diff --git a/surfsense_web/app/login/LocalLoginForm.tsx b/surfsense_web/app/(home)/login/LocalLoginForm.tsx similarity index 100% rename from surfsense_web/app/login/LocalLoginForm.tsx rename to surfsense_web/app/(home)/login/LocalLoginForm.tsx diff --git a/surfsense_web/app/login/page.tsx b/surfsense_web/app/(home)/login/page.tsx similarity index 100% rename from surfsense_web/app/login/page.tsx rename to surfsense_web/app/(home)/login/page.tsx index 59ff16ee3..c3f5501a6 100644 --- a/surfsense_web/app/login/page.tsx +++ b/surfsense_web/app/(home)/login/page.tsx @@ -1,7 +1,7 @@ "use client"; -import { AnimatePresence, motion } from "motion/react"; import { Loader2 } from "lucide-react"; +import { AnimatePresence, motion } from "motion/react"; import { useSearchParams } from "next/navigation"; import { Suspense, useEffect, useState } from "react"; import { toast } from "sonner"; diff --git a/surfsense_web/app/page.tsx b/surfsense_web/app/(home)/page.tsx similarity index 50% rename from surfsense_web/app/page.tsx rename to surfsense_web/app/(home)/page.tsx index dfa0e7587..8f85774ac 100644 --- a/surfsense_web/app/page.tsx +++ b/surfsense_web/app/(home)/page.tsx @@ -1,19 +1,21 @@ "use client"; -import { Footer } from "@/components/Footer"; import { CTAHomepage } from "@/components/homepage/cta"; import { FeaturesBentoGrid } from "@/components/homepage/features-bento-grid"; -import { ModernHeroWithGradients } from "@/components/homepage/ModernHeroWithGradients"; -import { Navbar } from "@/components/Navbar"; +import { FeaturesCards } from "@/components/homepage/features-card"; +import { Footer } from "@/components/homepage/footer"; +import { HeroSection } from "@/components/homepage/hero-section"; +import ExternalIntegrations from "@/components/homepage/integrations"; +import { Navbar } from "@/components/homepage/navbar"; export default function HomePage() { return (
- - + + + -
); } diff --git a/surfsense_web/app/(home)/pricing/page.tsx b/surfsense_web/app/(home)/pricing/page.tsx new file mode 100644 index 000000000..04837a578 --- /dev/null +++ b/surfsense_web/app/(home)/pricing/page.tsx @@ -0,0 +1,12 @@ +import React from "react"; +import PricingBasic from "@/components/pricing/pricing-section"; + +const page = () => { + return ( +
+ +
+ ); +}; + +export default page; diff --git a/surfsense_web/app/privacy/page.tsx b/surfsense_web/app/(home)/privacy/page.tsx similarity index 100% rename from surfsense_web/app/privacy/page.tsx rename to surfsense_web/app/(home)/privacy/page.tsx diff --git a/surfsense_web/app/register/page.tsx b/surfsense_web/app/(home)/register/page.tsx similarity index 100% rename from surfsense_web/app/register/page.tsx rename to surfsense_web/app/(home)/register/page.tsx diff --git a/surfsense_web/app/terms/page.tsx b/surfsense_web/app/(home)/terms/page.tsx similarity index 100% rename from surfsense_web/app/terms/page.tsx rename to surfsense_web/app/(home)/terms/page.tsx diff --git a/surfsense_web/app/contact/page.tsx b/surfsense_web/app/contact/page.tsx deleted file mode 100644 index cb722ff77..000000000 --- a/surfsense_web/app/contact/page.tsx +++ /dev/null @@ -1,12 +0,0 @@ -import React from 'react' -import { ContactFormGridWithDetails } from '@/components/contact/contact-form' - -const page = () => { - return ( -
- -
- ) -} - -export default page \ No newline at end of file diff --git a/surfsense_web/app/pricing/page.tsx b/surfsense_web/app/pricing/page.tsx deleted file mode 100644 index 6d71d6ff4..000000000 --- a/surfsense_web/app/pricing/page.tsx +++ /dev/null @@ -1,12 +0,0 @@ -import React from 'react' -import PricingBasic from '@/components/pricing/pricing-section' - -const page = () => { - return ( -
- -
- ) -} - -export default page \ No newline at end of file diff --git a/surfsense_web/components/Navbar.tsx b/surfsense_web/components/Navbar.tsx deleted file mode 100644 index eb67831c5..000000000 --- a/surfsense_web/components/Navbar.tsx +++ /dev/null @@ -1,305 +0,0 @@ -"use client"; -import { IconMail, IconMenu2, IconUser, IconUserPlus, IconX } from "@tabler/icons-react"; -import { AnimatePresence, motion, useMotionValueEvent, useScroll } from "motion/react"; -import Link from "next/link"; -import { useRef, useState } from "react"; -import { cn } from "@/lib/utils"; -import { Logo } from "./Logo"; -import { ThemeTogglerComponent } from "./theme/theme-toggle"; -import { Button } from "./ui/button"; - -interface NavbarProps { - navItems: { - name: string; - link: string; - }[]; - visible: boolean; -} - -export const Navbar = () => { - const navItems = [ - { - name: "Docs", - link: "/docs", - }, - // { - // name: "Product", - // link: "/#product", - // }, - // { - // name: "Pricing", - // link: "/#pricing", - // }, - ]; - - const ref = useRef(null); - const { scrollY } = useScroll({ - target: ref, - offset: ["start start", "end start"], - }); - const [visible, setVisible] = useState(false); - - useMotionValueEvent(scrollY, "change", (latest) => { - if (latest > 100) { - setVisible(true); - } else { - setVisible(false); - } - }); - - return ( - - - - - ); -}; - -const DesktopNav = ({ navItems, visible }: NavbarProps) => { - const [hoveredIndex, setHoveredIndex] = useState(null); - - const handleGoogleLogin = () => { - // Redirect to the login page - window.location.href = "/login"; - }; - - return ( - setHoveredIndex(null)} - animate={{ - backdropFilter: "blur(16px)", - background: visible - ? "rgba(var(--background-rgb), 0.8)" - : "rgba(var(--background-rgb), 0.6)", - width: visible ? "38%" : "80%", - height: visible ? "48px" : "64px", - y: visible ? 8 : 0, - }} - initial={{ - width: "80%", - height: "64px", - background: "rgba(var(--background-rgb), 0.6)", - }} - transition={{ - type: "spring", - stiffness: 400, - damping: 30, - }} - className={cn( - "hidden lg:flex flex-row self-center items-center justify-between py-2 mx-auto px-6 rounded-full relative z-[60] backdrop-saturate-[1.8]", - visible ? "border dark:border-white/10 border-gray-300/30" : "border-0" - )} - style={ - { - "--background-rgb": "var(--tw-dark) ? '0, 0, 0' : '255, 255, 255'", - } as React.CSSProperties - } - > -
- - SurfSense -
-
- - {navItems.map((navItem, idx) => ( - setHoveredIndex(idx)} - className="relative" - > - - {navItem.name} - {hoveredIndex === idx && ( - - )} - - - ))} - - - - {!visible && ( - - - - - - - )} - -
-
- ); -}; - -const MobileNav = ({ navItems, visible }: NavbarProps) => { - const [open, setOpen] = useState(false); - - const handleGoogleLogin = () => { - // Redirect to the login page - window.location.href = "./login"; - }; - - return ( - -
- -
- - {open ? ( - setOpen(!open)} /> - ) : ( - setOpen(!open)} - /> - )} -
-
- - - {open && ( - - {navItems.map((navItem: { link: string; name: string }) => ( - setOpen(false)} - className="relative dark:text-white/90 text-gray-800 hover:text-gray-900 dark:hover:text-white transition-colors" - > - {navItem.name} - - ))} - setOpen(false)}> - - - - - )} - -
- ); -}; diff --git a/surfsense_web/components/homepage/ModernHeroWithGradients.tsx b/surfsense_web/components/homepage/ModernHeroWithGradients.tsx deleted file mode 100644 index 0f95c09d0..000000000 --- a/surfsense_web/components/homepage/ModernHeroWithGradients.tsx +++ /dev/null @@ -1,549 +0,0 @@ -"use client"; -import { IconBrandDiscord, IconBrandGithub, IconFileTypeDoc, IconMail, IconUserPlus } from "@tabler/icons-react"; -import Image from "next/image"; -import Link from "next/link"; -import { cn } from "@/lib/utils"; -import { Logo } from "../Logo"; -import { Features } from "./features-card"; - -export function ModernHeroWithGradients() { - return ( -
-
-
- - - - - - - -
-
- - MODSetter%2FSurfSense | Trendshift - -
- - - Documentation - - {/* Import the Logo component or define it in this file */} -
-
- -
-

- SurfSense -

-
-

- Your all-in-one AI research workspace. -

-
- - - Sign Up - - - - Discord - - - - GitHub - -
-
- -
-
-
- ); -} - -const TopLines = () => { - return ( - - Top Lines - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ); -}; - -const BottomLines = () => { - return ( - - Bottom Lines - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ); -}; - -const SideLines = () => { - return ( - - Side Lines - - - - - - - - - - - - - - - - - - - - - - - - ); -}; - -const BottomGradient = ({ className }: { className?: string }) => { - return ( - - Bottom Gradient - - - - - - - - - - - ); -}; - -const TopGradient = ({ className }: { className?: string }) => { - return ( - - Top Gradient - - - - - - - - - - - - - - - - - - ); -}; - -const DarkModeGradient = () => { - return ( -
-
-
-
-
- ); -}; diff --git a/surfsense_web/components/homepage/cta.tsx b/surfsense_web/components/homepage/cta.tsx index 1176c69df..a09d7354c 100644 --- a/surfsense_web/components/homepage/cta.tsx +++ b/surfsense_web/components/homepage/cta.tsx @@ -6,7 +6,7 @@ import { cn } from "@/lib/utils"; export function CTAHomepage() { return ( -
+
diff --git a/surfsense_web/components/homepage/features-card.tsx b/surfsense_web/components/homepage/features-card.tsx index 78c4cccc1..79326198f 100644 --- a/surfsense_web/components/homepage/features-card.tsx +++ b/surfsense_web/components/homepage/features-card.tsx @@ -2,42 +2,33 @@ import { Sliders, Users, Workflow } from "lucide-react"; import type { ReactNode } from "react"; import { Card, CardContent, CardHeader } from "@/components/ui/card"; -export function Features() { +export function FeaturesCards() { return (
-
- {/*
-

Built to cover your needs

-

Libero sapiente aliquam quibusdam aspernatur, praesentium iusto repellendus.

-
*/} +
+
+

+ Everything Your Team Needs to Succeed +

+

+ Powerful features designed to enhance collaboration, boost productivity, and streamline + your workflow. +

+
- - - - - - -

Customizable

-
- - -

Customize your research agent to your specific needs.

-
-
- -

Streamline your workflow

+

Streamlined Workflow

- Pull all your knowledge into one place, so you can find what matters and get things - done faster. + Centralize all your knowledge and resources in one intelligent workspace. Find what + you need instantly and accelerate decision-making.

@@ -52,7 +43,26 @@ export function Features() { -

Make your company and personal content collaborative.

+

+ Work together effortlessly with real-time collaboration tools that keep your entire + team aligned. +

+
+ + + + + + + + +

Fully Customizable

+
+ + +

+ Choose from 100+ leading LLMs and seamlessly call any model on demand. +

diff --git a/surfsense_web/components/Footer.tsx b/surfsense_web/components/homepage/footer.tsx similarity index 97% rename from surfsense_web/components/Footer.tsx rename to surfsense_web/components/homepage/footer.tsx index 074e90686..88e640e81 100644 --- a/surfsense_web/components/Footer.tsx +++ b/surfsense_web/components/homepage/footer.tsx @@ -22,7 +22,7 @@ export function Footer() { ]; return ( -
+
diff --git a/surfsense_web/components/homepage/hero-section.tsx b/surfsense_web/components/homepage/hero-section.tsx new file mode 100644 index 000000000..147502afe --- /dev/null +++ b/surfsense_web/components/homepage/hero-section.tsx @@ -0,0 +1,318 @@ +"use client"; +import { AnimatePresence, motion } from "motion/react"; +import Image from "next/image"; +import Link from "next/link"; +import React, { useEffect, useRef, useState } from "react"; +import Balancer from "react-wrap-balancer"; +import { cn } from "@/lib/utils"; + +export function HeroSection() { + const containerRef = useRef(null); + const parentRef = useRef(null); + + return ( +
+ + + + + + +

+ + The AI Workspace{" "} +
+
+ Built for Teams +
+
+
+

+ {/* // TODO:aCTUAL DESCRITION */} +

+ Your multi-collaborative AI workspace, connected to external sources. +

+
+ + Start Free Trial + + + Explore + +
+
+
+ {/* Light mode image */} + header + {/* Dark mode image */} + header +
+
+
+ ); +} + +const BackgroundGrids = () => { + return ( +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ ); +}; + +const CollisionMechanism = React.forwardRef< + HTMLDivElement, + { + containerRef: React.RefObject; + parentRef: React.RefObject; + beamOptions?: { + initialX?: number; + translateX?: number; + initialY?: number; + translateY?: number; + rotate?: number; + className?: string; + duration?: number; + delay?: number; + repeatDelay?: number; + }; + } +>(({ parentRef, containerRef, beamOptions = {} }, ref) => { + const beamRef = useRef(null); + const [collision, setCollision] = useState<{ + detected: boolean; + coordinates: { x: number; y: number } | null; + }>({ detected: false, coordinates: null }); + const [beamKey, setBeamKey] = useState(0); + const [cycleCollisionDetected, setCycleCollisionDetected] = useState(false); + + useEffect(() => { + const checkCollision = () => { + if (beamRef.current && containerRef.current && parentRef.current && !cycleCollisionDetected) { + const beamRect = beamRef.current.getBoundingClientRect(); + const containerRect = containerRef.current.getBoundingClientRect(); + const parentRect = parentRef.current.getBoundingClientRect(); + + if (beamRect.bottom >= containerRect.top) { + const relativeX = beamRect.left - parentRect.left + beamRect.width / 2; + const relativeY = beamRect.bottom - parentRect.top; + + setCollision({ + detected: true, + coordinates: { x: relativeX, y: relativeY }, + }); + setCycleCollisionDetected(true); + if (beamRef.current) { + beamRef.current.style.opacity = "0"; + } + } + } + }; + + const animationInterval = setInterval(checkCollision, 50); + + return () => clearInterval(animationInterval); + }, [cycleCollisionDetected, containerRef]); + + useEffect(() => { + if (collision.detected && collision.coordinates) { + setTimeout(() => { + setCollision({ detected: false, coordinates: null }); + setCycleCollisionDetected(false); + // Set beam opacity to 0 + if (beamRef.current) { + beamRef.current.style.opacity = "1"; + } + }, 2000); + + // Reset the beam animation after a delay + setTimeout(() => { + setBeamKey((prevKey) => prevKey + 1); + }, 2000); + } + }, [collision]); + + return ( + <> + + + {collision.detected && collision.coordinates && ( + + )} + + + ); +}); + +CollisionMechanism.displayName = "CollisionMechanism"; + +const Explosion = ({ ...props }: React.HTMLProps) => { + const spans = Array.from({ length: 20 }, (_, index) => ({ + id: index, + initialX: 0, + initialY: 0, + directionX: Math.floor(Math.random() * 80 - 40), + directionY: Math.floor(Math.random() * -50 - 10), + })); + + return ( +
+ + {spans.map((span) => ( + + ))} +
+ ); +}; + +const GridLineVertical = ({ className, offset }: { className?: string; offset?: string }) => { + return ( +
+ ); +}; diff --git a/surfsense_web/components/homepage/integrations.tsx b/surfsense_web/components/homepage/integrations.tsx new file mode 100644 index 000000000..47d4e7325 --- /dev/null +++ b/surfsense_web/components/homepage/integrations.tsx @@ -0,0 +1,185 @@ +"use client"; +import React, { useEffect, useState } from "react"; + +interface Integration { + name: string; + icon: string; +} + +const INTEGRATIONS: Integration[] = [ + // Search + { name: "Tavily", icon: "https://www.tavily.com/images/logo.svg" }, + { + name: "LinkUp", + icon: "https://framerusercontent.com/images/7zeIm6t3f1HaSltkw8upEvsD80.png?scale-down-to=512", + }, + + // Communication + { name: "Slack", icon: "https://cdn.simpleicons.org/slack/4A154B" }, + { name: "Discord", icon: "https://cdn.simpleicons.org/discord/5865F2" }, + { name: "Gmail", icon: "https://cdn.simpleicons.org/gmail/EA4335" }, + + // Project Management + { name: "Linear", icon: "https://cdn.simpleicons.org/linear/5E6AD2" }, + { name: "Jira", icon: "https://cdn.simpleicons.org/jira/0052CC" }, + { name: "ClickUp", icon: "https://cdn.simpleicons.org/clickup/7B68EE" }, + { name: "Airtable", icon: "https://cdn.simpleicons.org/airtable/18BFFF" }, + + // Documentation & Knowledge + { name: "Confluence", icon: "https://cdn.simpleicons.org/confluence/172B4D" }, + { name: "Notion", icon: "https://cdn.simpleicons.org/notion/000000/ffffff" }, + + // Cloud Storage + { name: "Google Drive", icon: "https://cdn.simpleicons.org/googledrive/4285F4" }, + { name: "Dropbox", icon: "https://cdn.simpleicons.org/dropbox/0061FF" }, + { + name: "Amazon S3", + icon: "https://upload.wikimedia.org/wikipedia/commons/b/bc/Amazon-S3-Logo.svg", + }, + + // Development + { name: "GitHub", icon: "https://cdn.simpleicons.org/github/181717/ffffff" }, + + // Productivity + { name: "Google Calendar", icon: "https://cdn.simpleicons.org/googlecalendar/4285F4" }, + { name: "Luma", icon: "https://images.lumacdn.com/social-images/default-social-202407.png" }, + + // Media + { name: "YouTube", icon: "https://cdn.simpleicons.org/youtube/FF0000" }, +]; + +function SemiCircleOrbit({ radius, centerX, centerY, count, iconSize, startIndex }: any) { + return ( + <> + {/* Semi-circle glow background */} +
+
+
+ + {/* Orbit icons */} + {Array.from({ length: count }).map((_, index) => { + const actualIndex = startIndex + index; + // Skip if we've run out of integrations + if (actualIndex >= INTEGRATIONS.length) return null; + + const angle = (index / (count - 1)) * 180; + const x = radius * Math.cos((angle * Math.PI) / 180); + const y = radius * Math.sin((angle * Math.PI) / 180); + const integration = INTEGRATIONS[actualIndex]; + + // Tooltip positioning — above or below based on angle + const tooltipAbove = angle > 90; + + return ( +
+ {integration.name} + + {/* Tooltip */} + +
+ ); + })} + + ); +} + +export default function ExternalIntegrations() { + const [size, setSize] = useState({ width: 0, height: 0 }); + + useEffect(() => { + const updateSize = () => setSize({ width: window.innerWidth, height: window.innerHeight }); + updateSize(); + window.addEventListener("resize", updateSize); + return () => window.removeEventListener("resize", updateSize); + }, []); + + const baseWidth = Math.min(size.width * 0.8, 700); + const centerX = baseWidth / 2; + const centerY = baseWidth * 0.5; + + const iconSize = + size.width < 480 + ? Math.max(24, baseWidth * 0.05) + : size.width < 768 + ? Math.max(28, baseWidth * 0.06) + : Math.max(32, baseWidth * 0.07); + + return ( +
+
+

Integrations

+

+ Connect your favourite apps to your workflow. +

+ +
+ + + +
+
+
+ ); +} diff --git a/surfsense_web/components/homepage/navbar.tsx b/surfsense_web/components/homepage/navbar.tsx new file mode 100644 index 000000000..731db4469 --- /dev/null +++ b/surfsense_web/components/homepage/navbar.tsx @@ -0,0 +1,177 @@ +"use client"; +import { IconBrandDiscord, IconBrandGithub, IconMenu2, IconX } from "@tabler/icons-react"; +import { AnimatePresence, motion } from "motion/react"; +import Link from "next/link"; +import React, { useEffect, useState } from "react"; +import { Logo } from "@/components/Logo"; +import { ThemeTogglerComponent } from "@/components/theme/theme-toggle"; +import { cn } from "@/lib/utils"; + +export const Navbar = () => { + const [isScrolled, setIsScrolled] = useState(false); + + const navItems = [ + { name: "Home", link: "/" }, + { name: "Pricing", link: "/pricing" }, + { name: "Sign In", link: "/login" }, + { name: "Docs", link: "/docs" }, + ]; + + useEffect(() => { + const handleScroll = () => { + setIsScrolled(window.scrollY > 20); + }; + + window.addEventListener("scroll", handleScroll); + return () => window.removeEventListener("scroll", handleScroll); + }, []); + + return ( +
+ + +
+ ); +}; + +const DesktopNav = ({ navItems, isScrolled }: any) => { + const [hovered, setHovered] = useState(null); + return ( + { + setHovered(null); + }} + className={cn( + "mx-auto hidden w-full max-w-7xl flex-row items-center justify-between self-start rounded-full px-4 py-2 lg:flex transition-all duration-300", + isScrolled + ? "bg-white/80 backdrop-blur-md border border-white/20 shadow-lg dark:bg-neutral-950/80 dark:border-neutral-800/50" + : "bg-transparent border border-transparent" + )} + > +
+ + SurfSense +
+
+ {navItems.map((navItem: any, idx: number) => ( + setHovered(idx)} + className="relative px-4 py-2 text-neutral-600 dark:text-neutral-300" + key={`link=${idx}`} + href={navItem.link} + > + {hovered === idx && ( + + )} + {navItem.name} + + ))} +
+
+ + + + + + 8.3k + + + + Book a call + +
+
+ ); +}; + +const MobileNav = ({ navItems, isScrolled }: any) => { + const [open, setOpen] = useState(false); + + return ( + <> + +
+
+ + SurfSense +
+ {open ? ( + setOpen(!open)} /> + ) : ( + setOpen(!open)} /> + )} +
+ + + {open && ( + + {navItems.map((navItem: any, idx: number) => ( + + {navItem.name} + + ))} +
+ + + + + + + 8.3k + + +
+ +
+ )} +
+
+ + ); +}; diff --git a/surfsense_web/components/pricing.tsx b/surfsense_web/components/pricing.tsx index b666c8982..083ad0d8e 100644 --- a/surfsense_web/components/pricing.tsx +++ b/surfsense_web/components/pricing.tsx @@ -91,42 +91,53 @@ export function Pricing({
-
- {plans.map((plan, index) => ( - + {plans.map((plan, index) => ( + + plans.length === 3 && index === 0 && "origin-right", + plans.length === 3 && index === 2 && "origin-left" + )} + > {plan.isPopular && (
@@ -136,9 +147,12 @@ export function Pricing({
)}
-

{plan.name}

-
- +

{plan.name}

+
+ + {isNaN(Number(plan.price)) ? ( + {isMonthly ? plan.price : plan.yearlyPrice} + ) : ( - - {plan.period !== "Next 3 months" && ( - - / {plan.period} - )} -
+
+ {plan.period && plan.period !== "Next 3 months" && ( + + / {plan.period} + + )} +
-

- {isMonthly ? "billed monthly" : "billed annually"} -

+

+ {isNaN(Number(plan.price)) ? "" : isMonthly ? "billed monthly" : "billed annually"} +

    {plan.features.map((feature, idx) => ( diff --git a/surfsense_web/components/pricing/pricing-section.tsx b/surfsense_web/components/pricing/pricing-section.tsx index c017eb1e7..5a0341359 100644 --- a/surfsense_web/components/pricing/pricing-section.tsx +++ b/surfsense_web/components/pricing/pricing-section.tsx @@ -4,55 +4,38 @@ import { Pricing } from "@/components/pricing"; const demoPlans = [ { - name: "STARTER", - price: "50", - yearlyPrice: "40", - period: "per month", + name: "COMMUNITY", + price: "0", + yearlyPrice: "0", + period: "forever", features: [ - "Up to 10 projects", - "Basic analytics", - "48-hour support response time", - "Limited API access", - "Community support", + "Supports 100+ LLMs", + "Supports local Ollama or vLLM setups", + "6000+ Embedding Models", + "50+ File extensions supported.", + "Podcasts support with local TTS providers.", + "Connects with 15+ external sources.", + "Cross-Browser Extension for dynamic webpages including authenticated content", + "Upcoming: Mergeable MindMaps", + "Upcoming: Note Management", ], - description: "Perfect for individuals and small projects", - buttonText: "Start Free Trial", - href: "/sign-up", - isPopular: false, - }, - { - name: "PROFESSIONAL", - price: "99", - yearlyPrice: "79", - period: "per month", - features: [ - "Unlimited projects", - "Advanced analytics", - "24-hour support response time", - "Full API access", - "Priority support", - "Team collaboration", - "Custom integrations", - ], - description: "Ideal for growing teams and businesses", + description: "Open source version with powerful features", buttonText: "Get Started", - href: "/sign-up", + href: "/docs", isPopular: true, }, { name: "ENTERPRISE", - price: "299", - yearlyPrice: "239", - period: "per month", + price: "Contact Us", + yearlyPrice: "Contact Us", + period: "", features: [ - "Everything in Professional", - "Custom solutions", - "Dedicated account manager", - "1-hour support response time", - "SSO Authentication", - "Advanced security", - "Custom contracts", - "SLA agreement", + "Everything in Community", + "Priority Support", + "Access Controls", + "Multicollaborative and multiplayer features", + "Video generation", + "Advanced security features", ], description: "For large organizations with specific needs", buttonText: "Contact Sales", @@ -63,11 +46,7 @@ const demoPlans = [ function PricingBasic() { return ( - + ); } diff --git a/surfsense_web/package.json b/surfsense_web/package.json index 517e7690d..f65904784 100644 --- a/surfsense_web/package.json +++ b/surfsense_web/package.json @@ -74,6 +74,7 @@ "react-markdown": "^10.1.0", "react-rough-notation": "^1.0.5", "react-syntax-highlighter": "^15.6.1", + "react-wrap-balancer": "^1.1.1", "rehype-raw": "^7.0.0", "rehype-sanitize": "^6.0.0", "remark-gfm": "^4.0.1", diff --git a/surfsense_web/pnpm-lock.yaml b/surfsense_web/pnpm-lock.yaml index bfda2d29d..3463929ec 100644 --- a/surfsense_web/pnpm-lock.yaml +++ b/surfsense_web/pnpm-lock.yaml @@ -173,6 +173,9 @@ importers: react-syntax-highlighter: specifier: ^15.6.1 version: 15.6.1(react@19.1.0) + react-wrap-balancer: + specifier: ^1.1.1 + version: 1.1.1(react@19.1.0) rehype-raw: specifier: ^7.0.0 version: 7.0.0 @@ -4797,6 +4800,11 @@ packages: react: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 react-dom: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 + react-wrap-balancer@1.1.1: + resolution: {integrity: sha512-AB+l7FPRWl6uZ28VcJ8skkwLn2+UC62bjiw8tQUrZPlEWDVnR9MG0lghyn7EyxuJSsFEpht4G+yh2WikEqQ/5Q==} + peerDependencies: + react: '>=16.8.0 || ^17.0.0 || ^18' + react@19.1.0: resolution: {integrity: sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==} engines: {node: '>=0.10.0'} @@ -11108,6 +11116,10 @@ snapshots: react: 19.1.0 react-dom: 19.1.0(react@19.1.0) + react-wrap-balancer@1.1.1(react@19.1.0): + dependencies: + react: 19.1.0 + react@19.1.0: {} readable-stream@3.6.2: diff --git a/surfsense_web/public/homepage/temp_hero_dark.png b/surfsense_web/public/homepage/temp_hero_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..92f4284a783a7a866868271e759801d9d4b31461 GIT binary patch literal 58151 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 TYOmNR3E*hw@?*`}U+(;0o?>4( literal 0 HcmV?d00001 From 640fac553c52645bec20a39e800df08318d69934 Mon Sep 17 00:00:00 2001 From: "DESKTOP-RTLN3BA\\$punk" Date: Thu, 2 Oct 2025 18:13:30 -0700 Subject: [PATCH 2/2] chore: updated sitemap --- surfsense_web/app/sitemap.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/surfsense_web/app/sitemap.ts b/surfsense_web/app/sitemap.ts index 70fb45491..63e2b5753 100644 --- a/surfsense_web/app/sitemap.ts +++ b/surfsense_web/app/sitemap.ts @@ -14,6 +14,12 @@ export default function sitemap(): MetadataRoute.Sitemap { changeFrequency: "yearly", priority: 1, }, + { + url: "https://www.surfsense.com/pricing", + lastModified: new Date(), + changeFrequency: "yearly", + priority: 0.9, + }, { url: "https://www.surfsense.com/privacy", lastModified: new Date(),