GoodCase.aiGoodCase.aiAI Case Evidence Library
CasesSkillsCreatorsFavoritesSubmit
中文EN
Agent Access →
GoodCase.ai · AI Case Evidence LibraryLoading the case library.
ChangelogFeedback
GoodCase.aiGoodCase.aiAI Case Evidence Library
CasesSkillsCreatorsFavoritesSubmit
中文EN
Agent Access →

Case library · Public evidence

Start with the work. Trace it back to the maker and method.

No news summaries—only cases that point to finished work, creators, process, and original sources. Rankings, favorites, creator pages, and retests all grow from the same case.

Current view
1
Cases
Filter
All
Selected
AllAI VideoAI Coding (UI)AI ImageAI CopyAI Hardware
AI Coding (UI)X@viktoroddy →

Claude + Nano Banana + Kling Animated Website

A website case by @viktoroddy made with Claude Code · Nano Banana Pro · Kling, including the public result, full prompt, and original source.

Skill · Landing-page information structure

Prompt

Access ALL prompts for stunning animated websites in one click: RECREATION PROMPT PROMPT: Build a React + Vite + TypeScript + Tailwind CSS landing page for a creative studio called "Aethera". The site is light-mode only (no dark mode). It uses two Google Fonts: Instrument Serif (display/headings) and Inter (body text). Use lucide-react for all icons. The site has a cinematic video hero and 7 additional sections below it. All sections use scroll-triggered reveal animations via an IntersectionObserver hook. GLOBAL SETUP Fonts (src/styles/fonts.css) Import from Google Fonts: Instrument Serif (italic variants: 0 and 1) Inter (weights: 300, 400, 500, 600) Tailwind Config (tailwind.config.js) Extend theme with: fontFamily.display: "Instrument Serif", serif fontFamily.body: Inter, sans-serif colors.background: #FFFFFF colors.foreground: #000000 colors.muted: #6F6F6F CSS Animations (src/styles/theme.css) Define these keyframe animations: fade-rise: opacity 0 -> 1, translateY(20px -> 0), 0.8s ease-out fade-in: opacity 0 -> 1 slide-up: opacity 0 -> 1, translateY(40px -> 0) count-up: opacity 0 -> 1, scale(0.8 -> 1) Utility classes: .animate-fade-rise: 0.8s ease-out forwards .animate-fade-rise-delay: same but 0.2s delay, starts opacity:0 .animate-fade-rise-delay-2: same but 0.4s delay, starts opacity:0 Scroll-reveal system: .reveal: starts opacity:0, translateY(32px), transitions opacity and transform 0.7s ease-out .reveal.visible: opacity:1, translateY(0) .reveal-stagger-1 through .reveal-stagger-6: transition-delays from 0.1s to 0.6s in 0.1s increments Global CSS (src/index.css) Import fonts.css and theme.css, then Tailwind directives. Reset margin/padding/box-sizing. Enable antialiased font smoothing. Scroll Reveal Hook (src/hooks/useReveal.ts) A custom React hook that: Takes a generic type constraint <T extends HTMLElement = HTMLElement> Creates a ref to attach to a section container Uses IntersectionObserver with threshold: 0.15 Queries all .reveal children inside the ref element Adds visible class when entry is intersecting Cleans up observer on unmount Returns the ref SECTION 1: NAVBAR (src/components/Navbar.tsx) Top navigation bar with: Left: Brand name "Aethera" with a registered trademark superscript, using font-display text-3xl Center: Hidden on mobile (hidden md:flex). Nav items: Home (active), Studio, About, Journal, Reach Us. Active item is text-foreground, others text-muted. All text-sm with hover to foreground. Right: "Begin Journey" CTA button -- rounded-full bg-foreground text-white px-6 py-2.5 text-sm with hover:scale-[1.03] transition. SECTION 2: VIDEO HERO (src/components/VideoBackground.tsx + src/components/HeroSection.tsx) VideoBackground: Absolutely positioned container starting at top: 300px, filling right/bottom/left. Plays this video: Video is muted, playsInline, autoPlay, NOT looped via HTML attribute. Custom fade logic using requestAnimationFrame:FADE_DURATION = 0.5 seconds During the first 0.5s of playback, opacity ramps from 0 to 1 During the last 0.5s before ending, opacity ramps from 1 to 0 Between those, opacity is 1 On ended event: set opacity to 0, wait 100ms, reset currentTime to 0, play again (manual loop with fade) object-cover video filling container Gradient overlay on top: bg-gradient-to-b from-background via-transparent to-background HeroSection: Centered text content, relative z-10, top padding: calc(8rem - 75px), bottom padding: pb-40 Heading: font-display text-5xl sm:text-7xl md:text-8xl, lineHeight: 0.95, letterSpacing: -2.46px, max-width 7xlText: Beyond silence, we build the eternal. The italic words use <em className="text-muted"> Animation class: animate-fade-rise Subheading: text-base sm:text-lg text-muted, max-width 2xl, animate-fade-rise-delayText: "Building platforms for brilliant minds, fearless makers, and thoughtful souls. Through the noise, we craft digital havens for deep work and pure flows." CTA: "Begin Journey" button -- rounded-full bg-foreground text-white px-14 py-5 text-base, animate-fade-rise-delay-2, hover scale 1.03 App.tsx wraps VideoBackground, Navbar, and HeroSection inside a relative min-h-screen div. SECTION 3: SERVICES (src/components/ServicesSection.tsx) id="studio", white background, py-32 px-6, max-width 7xl Top: "Services" pill badge (rounded-full border, uppercase tracking-widest, text-xs text-muted) Below: Two-column header row (md:flex-row). Left: large heading font-display text-4xl sm:text-5xl md:text-6xl with lineHeight 1.05: "Crafting digital experiences with purpose" (italic word in text-muted). Right: short paragraph text-muted max-w-md. Service rows: 4 items in a divide-y divide-foreground/10 grid. Each row is a 12-column grid (md:grid-cols-12) with:Col 1: service number ("01"-"04") in text-sm text-muted Col 3: title in font-display text-3xl md:text-4xl Col 5: description in text-base text-muted Col 3: right side with tag pills (bg-foreground/5 rounded-full px-3 py-1 text-xs text-muted) and a circular arrow button (h-10 w-10 rounded-full border border-foreground/10) that inverts to bg-foreground text-white on group hover Icons: ArrowUpRight from lucide-react, size 16 Services data:"Brand Identity" -- "We distill your vision into a living brand system -- logo, typography, palette, and voice -- that resonates across every touchpoint." Tags: Strategy, Visual Identity, Guidelines "Digital Experiences" -- "Immersive web and mobile platforms engineered for performance, built with meticulous craft and obsessive attention to detail." Tags: Web Design, Development, Interaction "Content Direction" -- "From editorial strategy to art direction, we shape narratives that move audiences and elevate your presence." Tags: Art Direction, Copywriting, Photography "Growth Systems" -- "Data-informed marketing architectures that compound over time -- SEO, analytics, and conversion frameworks built to scale." Tags: SEO, Analytics, Automation SECTION 4: CASE STUDIES / SELECTED WORK (src/components/CaseStudiesSection.tsx) Dark section: bg-foreground, py-32 px-6, max-width 7xl Header row: Left side has "Selected Work" pill badge (border-white/20, text-white/50), heading in white font-display text-4xl sm:text-5xl md:text-6xl: "See how we've shaped others". Right side: "View All" link in text-white/50 uppercase tracking-widest text-sm. Two project cards in a grid md:grid-cols-2 gap-6. Each card:rounded-2xl overflow-hidden, group hover aspect-[4/3] container with a <video> element: muted, loop, playsInline, autoPlay, object-cover, transition-transform 700ms, scale-105 on group-hover Gradient overlay: bg-gradient-to-t from-black/80 via-black/20 to-transparent Bottom content area (absolute, p-8): category label (text-xs uppercase tracking-widest text-white/60), stat in font-display text-5xl md:text-6xl text-white (lineHeight: 1), stat label in text-sm text-white/60 max-w-xs, and a white circular button h-12 w-12 rounded-full bg-white text-foreground with ArrowUpRight icon Project 1: "Meridian Health", "Brand & Web Platform", stat "553K+", label "Monthly active users across digital channels", video: Project 2: "Coastal Living", "E-Commerce Redesign", stat "96%", label "Improvement in conversion rate after launch", video: SECTION 5: TESTIMONIALS (src/components/TestimonialsSection.tsx) White background, py-32 px-6, max-width 7xl, centered "Testimonials" pill badge centered Heading: font-display text-4xl sm:text-5xl centered, max-w-lg: "Trusted by growing companies" Dot navigation: 3 dots, h-2.5 w-2.5 rounded-full border. Active: border-foreground bg-foreground. Inactive: border-foreground/20 bg-transparent hover:border-foreground/40. Testimonial card: max-w-4xl, grid md:grid-cols-5 gap-8Left (col-span-2): rounded-2xl overflow-hidden containing a <video> element playing: -- muted, loop, playsInline, autoPlay, h-72 md:h-full w-full object-cover. This same video plays for all testimonial slides. Right (col-span-3): blockquote in text-lg md:text-xl leading-relaxed text-foreground, then a bottom bar with border-t border-foreground/10 pt-6 containing name (text-sm font-medium), role + company (text-sm text-muted), and prev/next buttons using ChevronLeft/ChevronRight icons (size 16) in h-10 w-10 rounded-full border border-foreground/10 circles that invert on hover. State management: useState(0) for active index, prev/next wrap around. Testimonial data (3 entries):Carolyn Chapman, People & Culture Operations Manager, Meridian Group -- quote about collaborative problem-solving Marcus Reid, Chief Product Officer, Coastal Living Co. -- quote about digital presence transformation Lena Okafor, Brand Director, Solaris Ventures -- quote about operating as team extension Logo strip below: border-t border-foreground/10 pt-12 mt-20, 5 text logos in font-display text-xl text-foreground/20: Meridian, GFS, Solaris, Coastal, Vertex

Source heat
74
Stability
待复测
View case →
GoodCase.ai · AI Case Evidence LibraryDiscovery, rankings, and creator relationships all resolve to one Case source of truth.
ChangelogFeedback