Files
MartinBraquet 7afa52252f Add script to generate AI-based showcase portraits for fictional profiles
- Introduced `generate-showcase-portraits.ts` using the Gemini API for synthetic portrait generation.
- Added `PORTRAITS` data structure for controlling persona appearances and scenes.
- Implemented functionality to ensure consistent identity across generated photos.
- Integrated `.env` API key support and optional modes for targeted regeneration (`--only`, `--force`, `--dry-run`).
- Updated related documentation (`marketing-visuals.md` and `README.md`) with generation guidelines and usage instructions.
- Seed script (`seed-showcase.ts`) enhanced to link generated photos with fictional profiles in the showcase dataset.
2026-07-21 15:34:41 +02:00
..

Showcase portraits

Portraits for the hand-authored seed personas in tests/e2e/utils/showcase-profiles.ts, used only for marketing captures. See docs/marketing-visuals.md (W0b).

These are fully synthetic — generated with the Gemini image API, no real person depicted. That is deliberate: the personas are fictional, and attaching a real person's likeness to an invented biography would be a different and worse problem than the licensing one.

Regenerate with:

npx tsx scripts/generate-showcase-portraits.ts             # fill in anything missing
npx tsx scripts/generate-showcase-portraits.ts --only priyaraman --force
  • Naming: <slug>-1.jpg<slug>-N.jpg, where <slug> is the persona's slug and N its photoCount. -1 is the pinned photo, so it wants the face large in frame.
  • 896×1200 JPEG, q82, 100250 KB each.
  • Prompts live in the script, not here — edit PORTRAITS there and re-run with --force.

Missing files are not fatal: the seed falls back to default-avatar.png and warns.