All tasks are complete. Here's a summary of what was done:

---

### Changes Made

**1. Created `/he...

CCB74DBDB8FF-1A066DC005354A0092031E421E61D1FC
This commit is contained in:
guru-agent
2026-05-05 11:39:08 +00:00
parent 90a99fd061
commit 42cf6ed013
3 changed files with 74 additions and 2 deletions

64
src/app/hello/page.tsx Normal file
View File

@@ -0,0 +1,64 @@
"use client";
import { motion } from "framer-motion";
import { Sparkles, ArrowLeft } from "lucide-react";
import Link from "next/link";
import { buttonVariants } from "@/components/ui/button";
import { cn } from "@/lib/utils";
export default function HelloPage() {
return (
<div className="mx-auto flex max-w-3xl flex-col items-center justify-center px-4 py-24 sm:px-6 lg:px-8">
<motion.div
initial={{ opacity: 0, scale: 0.95 }}
animate={{ opacity: 1, scale: 1 }}
transition={{ duration: 0.4 }}
className="text-center"
>
<motion.div
initial={{ rotate: -10, scale: 0 }}
animate={{ rotate: 0, scale: 1 }}
transition={{ delay: 0.2, type: "spring", stiffness: 200 }}
>
<Sparkles className="mx-auto h-16 w-16 text-primary" />
</motion.div>
<motion.h1
initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }}
transition={{ delay: 0.4, duration: 0.5 }}
className="mt-6 text-4xl font-bold tracking-tight sm:text-5xl"
>
Hello, Idea Guru!
</motion.h1>
<motion.p
initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }}
transition={{ delay: 0.6, duration: 0.5 }}
className="mt-4 text-lg text-muted-foreground"
>
You&apos;ve successfully navigated to the hello page. This is where your
journey begins.
</motion.p>
<motion.div
initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }}
transition={{ delay: 0.8, duration: 0.5 }}
className="mt-8"
>
<Link
href="/"
className={cn(
buttonVariants({ variant: "outline", size: "lg" })
)}
>
<ArrowLeft className="mr-2 h-4 w-4" />
Back to Home
</Link>
</motion.div>
</motion.div>
</div>
);
}

View File

@@ -1,5 +1,6 @@
"use client"; "use client";
import { useRouter } from "next/navigation";
import { motion } from "framer-motion"; import { motion } from "framer-motion";
import { import {
Layers, Layers,
@@ -66,6 +67,8 @@ const itemVariants = {
}; };
export default function Home() { export default function Home() {
const router = useRouter();
return ( return (
<div className="mx-auto max-w-7xl px-4 py-16 sm:px-6 lg:px-8"> <div className="mx-auto max-w-7xl px-4 py-16 sm:px-6 lg:px-8">
{/* Hero */} {/* Hero */}
@@ -82,7 +85,7 @@ export default function Home() {
A Next.js starter template with a curated tech stack A Next.js starter template with a curated tech stack
</p> </p>
<div className="mt-8 flex items-center justify-center gap-4"> <div className="mt-8 flex items-center justify-center gap-4">
<Button size="lg"> <Button size="lg" onClick={() => router.push("/hello")}>
Get Started Get Started
<ArrowRight className="ml-2 h-4 w-4" /> <ArrowRight className="ml-2 h-4 w-4" />
</Button> </Button>

View File

@@ -1,5 +1,6 @@
'use client'; 'use client';
import { useRouter } from "next/navigation";
import Link from "next/link"; import Link from "next/link";
import { Sparkles } from "lucide-react"; import { Sparkles } from "lucide-react";
import { buttonVariants } from "@/components/ui/button"; import { buttonVariants } from "@/components/ui/button";
@@ -7,6 +8,8 @@ import { Button } from "@/components/ui/button";
import { cn } from "@/lib/utils"; import { cn } from "@/lib/utils";
export function Header() { export function Header() {
const router = useRouter();
return ( return (
<header className="border-b border-border bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/60"> <header className="border-b border-border bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/60">
<div className="mx-auto flex h-14 max-w-7xl items-center justify-between px-4 sm:px-6 lg:px-8"> <div className="mx-auto flex h-14 max-w-7xl items-center justify-between px-4 sm:px-6 lg:px-8">
@@ -21,7 +24,9 @@ export function Header() {
> >
Home Home
</Link> </Link>
<Button size='sm'>Get Started</Button> <Button size="sm" onClick={() => router.push("/hello")}>
Get Started
</Button>
</nav> </nav>
</div> </div>
</header> </header>