Bouchique

Case study — 01

flowers for you, [name]!. A one-of-a-kind digital bouquet, grown just for you.
LiveReactViteWeb Audio APIVercel Edge FunctionsVercel FunctionsLive site ↗GitHub ↗MIT License
Bouchique — screenshot 1
Bouchique — screenshot 2

01The idea

Bouchique is a link you send instead of flowers. Type a name, pick a wish, and the page grows a one of a kind bouquet of hand-drawn flowers. Every visit composes a brand new arrangement.

The name borrows from "boutique," a small, carefully curated shop, softened into something more playful. The tagline says it plainly: “flowers for you, [name]!”

02How it works

Every bloom is a randomly composed SVG. Petals, stems, leaves, and poses get chosen per visit, so no two bouquets are ever identical. The flowers lean toward the cursor and blow a kiss when hovered. The whole page is drawn by hand. No emoji anywhere.

TThe soundtrack is synthesized live with the Web Audio API, a music box lullaby whose tone shifts with the chosen wish, so a “Good morning” sounds different from a “Goodnight.”

03Sharing is the point

Sharing was the whole reason to build this, so the preview had to actually look good. Bouchique renders custom Open Graph cards on Vercel Edge Functions. Sharing ?name=Maya&wish=goodnight into Discord or WhatsApp shows a card with Maya's name on it before anyone even clicks.

Recipients can also embed a Spotify or YouTube track, or upload their own song. Turns the bouquet into something closer to a mixtape.

04Craft

I put the most effort into the parts nobody has to notice. Hand-drawn SVG iconography throughout, zero emoji, MIT licensed so anyone can fork their own bouquet.

It's fully open source. The repo includes the edge-function OG renderer and the Web Audio engine.

Features

  • Randomly composed hand-drawn SVG bouquets on every visit
  • 8 wish presets (Good morning, Birthday, Valentine, Goodnight, etc.) plus custom messages
  • Interactive flowers that lean toward the cursor and blow kisses on hover
  • Live-synthesized music-box lullaby that changes with the selected wish
  • Personalized OG-image link previews (e.g. ?name=Maya&wish=goodnight)
  • Spotify/YouTube embed support or custom song upload
  • Zero emoji — fully hand-drawn SVG iconography