mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-04-24 16:26:32 +02:00
Some checks failed
Build and Push Docker Images / tag_release (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Has been cancelled
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Has been cancelled
- Added multiple new skills to skills-lock.json from the repository `aaron-he-zhu/seo-geo-claude-skills`. - Introduced `fuzzy-search` dependency in package.json for improved search functionality. - Updated pnpm-lock.yaml to include the new `fuzzy-search` package. - Enhanced SEO metadata across various pages, including canonical links and descriptions for better search visibility. - Improved layout and structure of several components, including the homepage and changelog, to enhance user experience.
29 lines
1,014 B
TypeScript
29 lines
1,014 B
TypeScript
import dynamic from "next/dynamic";
|
|
import { HeroSection } from "@/components/homepage/hero-section";
|
|
import { AuthRedirect } from "@/components/homepage/auth-redirect";
|
|
import { FeaturesCards } from "@/components/homepage/features-card";
|
|
import { FeaturesBentoGrid } from "@/components/homepage/features-bento-grid";
|
|
|
|
const WhySurfSense = dynamic(
|
|
() => import("@/components/homepage/why-surfsense").then((m) => ({ default: m.WhySurfSense })),
|
|
);
|
|
|
|
const ExternalIntegrations = dynamic(() => import("@/components/homepage/integrations"));
|
|
|
|
const CTAHomepage = dynamic(
|
|
() => import("@/components/homepage/cta").then((m) => ({ default: m.CTAHomepage })),
|
|
);
|
|
|
|
export default function HomePage() {
|
|
return (
|
|
<main className="min-h-screen bg-gradient-to-b from-gray-50 to-gray-100 text-gray-900 dark:from-black dark:to-gray-900 dark:text-white">
|
|
<AuthRedirect />
|
|
<HeroSection />
|
|
<WhySurfSense />
|
|
<FeaturesCards />
|
|
<FeaturesBentoGrid />
|
|
<ExternalIntegrations />
|
|
<CTAHomepage />
|
|
</main>
|
|
);
|
|
}
|