A playful image generator for the design thought experiment: what if X built Y?
Pick a builder (company, government, fandom, celebrity…) and a target product (app, site, category). The app produces a shareable fake screenshot that blends X’s visual language with Y’s product shape—fast enough to post, remix, and vote on.
Built with Next.js and Supabase.
- Install dependencies:
yarn install - Copy
.env.exampleto.env.localand fill in at least:NEXT_PUBLIC_SUPABASE_URLNEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY(orNEXT_PUBLIC_SUPABASE_ANON_KEY)
- Start the dev server:
yarn dev→ http://localhost:3000
Optional: local Supabase (yarn db:start) and keys for image generation / payments—see comments in .env.example.
Do not generate mashups by clicking the website. yarn generate:mashup reuses Style DNA merge, buildGenerationPrompt, executeImageGeneration (Vercel AI Gateway), sharp variants, the public generation-images bucket, and a generations row. The default insert is draft (not on the public feed, sitemap, or locker). Pass --publish only after reviewing the image. It does not debit Dodo credits.
yarn generate:mashup --help--dry-run (or DRY_RUN=1) prints the fully built prompt and skips the paid Gateway call, upload, and DB insert. --publish inserts visibility=published so the row is listed publicly.
Example pairings (live picker slugs; extras are prompt notes, not new catalog nouns):
yarn generate:mashup --builder ikea --target figma --invented-name SKISSA \
--extra-details 'Empty Figma canvas. Microcopy: "Some assembly required." The move tool is an Allen key.'
yarn generate:mashup --builder apple-ios --target tinder --screen-type mobile --invented-name Halo \
--extra-details 'Tinder deck plus a Personality slider.'
yarn generate:mashup --builder duolingo --target apple-ios --screen-type mobile --invented-name Perch \
--extra-details 'Lock screen. Streak dying.'
yarn generate:mashup --builder google --target google-gmail --invented-name Burst \
--extra-details 'Gmail compose with 8× Send.'Always pass --dry-run first. Do not run paid generation from CI.
MIT — see LICENSE.
