Template
Curious Cat
A launch page for a playful consumer app (a pet diary, a mood tracker, anything with personality). It asks one question, plays one short video and asks for one tap.
Cheeky consumer app launch · Website · SaaS landing page · single page: hero and one section
A mock-up of the homepage, drawn from this design’s layout, palette and typefaces. A build follows the full prompt below.
Add app screens
Pick up to 6 screens, such as a dashboard, settings or an empty state. Each is built in this design’s own palette and typefaces, with its states and guardrails.
Start from this templateRead the build prompt
Typefaces
Fredoka is round and chunky, so a question in it sounds like a joke rather than a pitch; Nunito keeps the same soft corners at reading sizes.
- FredokaHeadings: the chunky question headline and the lowercase logo
- NunitoBody: subcopy, buttons and store labels
Who it is for
- People who download apps on a whim
- Pet owners
- Fans of the brand on social media
Layout
- Teal page with the defocused cat as a soft background
- Tiny nav: three links right and a dark pill
- Chunky question headline on the left; cat on the right looking at it
- Dark pill CTA beside a round yellow play button
- Big lowercase logo bottom-left
- One supporting section: three short app moments on cream cards with one-line captions
Palette
Cheeky, cozy, a little grumpy in a lovable way.
- teal deep
#4a8ba0 - teal light
#7fb0c4 - cream
#f5f0d0 - play yellow
#f5c542 - ink
#14262c
Every checked pair, measured again
| Sample | Where | Ratio | Needs |
|---|---|---|---|
| Aa | body text on the page | 13.59:1 | 4.5:1 |
| Aa | text on cards and chips | 5.49:1 | 4.5:1 |
| Aa | secondary text on muted surfaces | 6.25:1 | 4.5:1 |
| Aa | secondary text on the page | 8.25:1 | 4.5:1 |
| Aa | label on the primary action | 9.64:1 | 4.5:1 |
| Aa | label on secondary surfaces | 5.49:1 | 4.5:1 |
| Aa | label on the accent | 5.49:1 | 4.5:1 |
| Aa | error label | 4.55:1 | 4.5:1 |
| primary action against the page | 9.64:1 | 3:1 |
As vibld’s tokens
The palette on the 15+ color tokens vibld styles a project with, each text color on the fill it is read on. Marked tokens are solved from the palette, because no swatch held that role at 4.5:1.
- background
- card *
- muted *
- primary
- secondary *
- accent *
- destructive *
Type scale
- Display
- Fredoka, the chunky question headline and the lowercase logo
- Body
- Nunito, subcopy, buttons and store labels
Spacing and imagery
Teal hero at 100svh with content in a 1200px container; big lowercase logo pinned bottom-left with 32px inset.
A photoreal fluffy white cat wearing a blue knit sweater, unimpressed expression, soft studio light on a teal backdrop; the same shot defocused for the background. No text in the frame; room on the left for the question.
Components
- Dark pill CTA
- Round play button opening a short video
- Oversized lowercase logo
- Blurred hero echo background
Interactions
- Buttons scale to 1.04 on hover with a soft spring
- The cat blinks every few seconds on a short loop
- Play button opens a 20-second video in a dialog
- Staggered reveal of headline, subcopy and buttons
Data
Content{headline, subcopy, cta, section items}
Build prompt
The baseline every prompt in the catalog assumes, then this design’s own ten sections, from goal to guardrails.
The baseline
### How to use these prompts Each Cinematic Hero prompt describes one page: a full-bleed hero built around a single generated image, and one supporting section in the same style. The rules below apply to every one of them. ### Cinematic Hero principles - One full-bleed hero per page. The image is the subject, not decoration. - An oversized display headline of two to four words that runs past an edge or overlaps the subject. It is live text, never part of the image. - A tiny nav: a wordmark and three or four small links, one pill-shaped primary action, and at most one quiet secondary action. - The hero image returns as the page background, blurred 40 to 80px and darkened, so the hero sits in a card with 24 to 32px corners. - A tight palette: two or three colors taken from the image and one accent, used mostly on the primary action. - A distinct display face with a quiet body face. Small labels get wide tracking. - Small glass or chip details (a stat, a tag, an avatar row, a counter), never a wall of features. - One signature motion and a staggered text reveal. prefers-reduced-motion turns every loop off and shows still frames. - On phones the headline keeps its bleed at a clamp() size, the subject stays in frame, a video becomes its poster, and chips stack under the action. ### Engineering baseline - TypeScript strict mode, small typed components, and one source of truth for design tokens (CSS variables consumed by Tailwind). - All copy lives in one typed content file, so the owner can edit words without touching layout. - Every form validates on the client, says what went wrong in plain words beside the field, and never claims success it has not had. - No secrets in the bundle and no third-party scripts beyond Google Fonts.
### Goal Build **Curious Cat**: A launch page for a playful consumer app (a pet diary, a mood tracker, anything with personality). It asks one question, plays one short video and asks for one tap. It is one cinematic hero and one supporting section, in the Cinematic Hero series. ### Stack React + TypeScript + Vite and Tailwind CSS. Motion in CSS and the Web Animations API. No backend: the page is static, and any form keeps its result on the page until the owner connects an endpoint. ### Pages & layout 1. Teal page with the defocused cat as a soft background. 2. Tiny nav: three links right and a dark pill. 3. Chunky question headline on the left; cat on the right looking at it. 4. Dark pill CTA beside a round yellow play button. 5. Big lowercase logo bottom-left. 6. One supporting section: three short app moments on cream cards with one-line captions. Copy to start from, all in `content.ts`: headline "Who asked you?", subcopy "The diary app with opinions. Log the day, get a verdict.", primary action "Get the app". On phones the headline keeps its bleed at a clamp() size, the subject stays in frame, and chips stack under the action. ### Design system Mood: Cheeky, cozy, a little grumpy in a lovable way. Palette: teal deep `#4a8ba0`, teal light `#7fb0c4`, cream `#f5f0d0`, play yellow `#f5c542`, ink `#14262c`. Tokens: background `#14262c`, foreground `#f5f0d0`, primary `#f5c542` with `#14262c` labels, cards `#4a8ba0`. Type: Fredoka for the chunky question headline and the lowercase logo; Nunito for subcopy, buttons and store labels. Load both from https://fonts.googleapis.com/css2?family=Fredoka:wght@400;700&family=Nunito:wght@400;600&display=swap. Small labels in Nunito with 0.12em tracking. Corners: 28px on the hero card, 16px on cards, pills fully round. Spacing: Teal hero at 100svh with content in a 1200px container; big lowercase logo pinned bottom-left with 32px inset. Hero image: A photoreal fluffy white cat wearing a blue knit sweater, unimpressed expression, soft studio light on a teal backdrop; the same shot defocused for the background. No text in the frame; room on the left for the question. The series made this image for the design: https://vibld.com/img/cinematic/curious-cat.webp, 2688 by 1535, alt text "A fluffy white cat in a blue knit sweater on a teal backdrop, looking unimpressed". Use it by that absolute URL, with `srcset="https://vibld.com/img/cinematic/curious-cat-800.webp 800w, https://vibld.com/img/cinematic/curious-cat-1600.webp 1600w, https://vibld.com/img/cinematic/curious-cat.webp 2688w"`, unless the person has uploaded a hero image of their own, which then takes its place. Never a placeholder photo or a stock image of people. ### Components & interactions - Dark pill CTA - Round play button opening a short video - Oversized lowercase logo - Blurred hero echo background Motion: - Buttons scale to 1.04 on hover with a soft spring - The cat blinks every few seconds on a short loop - Play button opens a 20-second video in a dialog - Staggered reveal of headline, subcopy and buttons The signature motion is: A slow blink loop on the cat. Keep it to that one; everything else is a 150 to 300ms state change. With prefers-reduced-motion, loops stop, videos show their poster and reveals are instant. ### Data & state All copy and the supporting section's items live in one typed `content.ts`. Inputs validate as the visitor types and report a result inline; nothing is sent anywhere until the owner connects a form endpoint. ### Accessibility WCAG 2.2 AA. The headline is real text, not part of the image, and the image has alt text describing it. Every control has a visible focus ring and a 44px target. Verified contrast: body text on the page #f5f0d0 on #14262c 13.59:1; text on cards and chips #000000 on #4a8ba0 5.49:1; secondary text on muted surfaces #bdbea7 on #2b3a3c 6.25:1; secondary text on the page #bdbea7 on #14262c 8.25:1; label on the primary action #14262c on #f5c542 9.63:1; label on secondary surfaces #000000 on #4a8ba0 5.49:1; label on the accent #000000 on #4a8ba0 5.49:1; error label #ffffff on #d93a3a 4.54:1; primary action against the page #f5c542 on #14262c 9.63:1. ### Security No third-party scripts other than Google Fonts. Forms carry a hidden honeypot field and cap input length. ### Performance & SEO Serve the hero image as AVIF or WebP with its width and height, `fetchpriority="high"` and no lazy loading; the blurred echo reuses the same file with a CSS filter. Preconnect to Google Fonts. Title and meta description come from `content.ts`. Largest contentful paint under 2.5s on a mid-range phone. ### Guardrails - Avoid: Cartoon clip-art pets, emoji decoration. - One accent color, one primary action, at most four nav links. - No carousel or slider in the hero, no mega menu, no emoji or clip-art icons, no hard offset shadows. - No purple-to-blue gradient and no stock photos of people at desks. - The brand is invented. Use no real company's name, logo or trademark.
