Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 3 additions & 7 deletions src/app/globals.css
Original file line number Diff line number Diff line change
Expand Up @@ -119,12 +119,8 @@

@layer base {
* {
@apply border-border outline-ring/50;
}
body {
@apply bg-background text-foreground;
}
html {
@apply font-sans;
box-sizing: border-box;
margin: 0;
padding: 0;
}
}
22 changes: 13 additions & 9 deletions src/app/layout.tsx
Original file line number Diff line number Diff line change
@@ -1,20 +1,24 @@
import type { Metadata } from "next";
import { Geist, Geist_Mono } from "next/font/google";
import { Space_Grotesk, Space_Mono } from "next/font/google";
import "./globals.css";
import "./site.css";

const geistSans = Geist({
variable: "--font-geist-sans",
const spaceGrotesk = Space_Grotesk({
variable: "--font-space-grotesk",
subsets: ["latin"],
weight: ["300", "400", "500", "600", "700"],
});

const geistMono = Geist_Mono({
variable: "--font-geist-mono",
const spaceMono = Space_Mono({
variable: "--font-space-mono",
subsets: ["latin"],
weight: ["400", "700"],
});

export const metadata: Metadata = {
title: "Website Clone",
description: "Pixel-perfect website clone",
title: "3D Web Prompts — Build Stunning 3D Sites",
description:
"Ready-to-use prompts for Three.js, CSS 3D, Canvas, Spline, and GSAP. Copy a prompt, paste it into Claude or ChatGPT, and ship your 3D hero in minutes.",
};

export default function RootLayout({
Expand All @@ -25,9 +29,9 @@ export default function RootLayout({
return (
<html
lang="en"
className={`${geistSans.variable} ${geistMono.variable} h-full antialiased`}
className={`${spaceGrotesk.variable} ${spaceMono.variable} h-full antialiased`}
>
<body className="min-h-full flex flex-col">{children}</body>
<body className="min-h-full">{children}</body>
</html>
);
}
32 changes: 27 additions & 5 deletions src/app/page.tsx
Original file line number Diff line number Diff line change
@@ -1,9 +1,31 @@
import { Divider } from "@/components/divider";
import { Footer } from "@/components/footer";
import { HeroSection } from "@/components/hero-section";
import { HowItWorksSection } from "@/components/how-it-works-section";
import { Navigation } from "@/components/navigation";
import { Orbs } from "@/components/orbs";
import { ParticleCanvas } from "@/components/particle-canvas";
import { PromptGrid } from "@/components/prompt-grid";
import { TipsSection } from "@/components/tips-section";
import prompts from "@/data/prompts.json";
import type { Prompt } from "@/types/prompt";

export default function Home() {
const promptData = prompts as Prompt[];

return (
<main className="flex min-h-screen items-center justify-center">
<p className="text-muted-foreground">
Clone target not yet built. Run <code className="font-mono text-foreground">/clone-website</code> to start.
</p>
</main>
<>
<ParticleCanvas />
<Orbs />
<Navigation />
<HeroSection />
<Divider />
<PromptGrid prompts={promptData} />
<Divider />
<HowItWorksSection />
<Divider />
<TipsSection />
<Footer />
</>
);
}
Loading
Loading