← Tools Portal

THE BLACKCAT Memories Studio

# THE BLACKCAT Memories Studio

THE BLACKCAT Memories Studio turns a folder of event photos and videos into a self-contained landing page whose visual skin (palette + typography) derives from 4-6 hero photos. Fixed skeleton, mutating skin.

This Studio is a local dashboard that drives the **Eventos pipeline**, which lives OUTSIDE this repo. Family media never enters the Portal repo: the Studio orchestrates the generator scripts in the external workspace and serves previews read-only.

## Local Dashboard

- URL: `http://127.0.0.1:8775`
- Launcher: `scripts/open-memories-studio.command`
- Studio folder: `studios/memories-studio/`
- External workspace (pipeline + media): `/Users/pabloscandoglierro/Desktop/05 Familia/Eventos/`
  - Override with the `MEMORIES_STUDIO_WORKSPACE` environment variable.

## What It Does (wizard, 6 steps)

1. **Ingesta** - pick a source folder; runs `generator/ingest.py` (HEIC to JPG, thumbs, video posters + H.264 transcode; originals untouched) and generates the curation contact sheet.
2. **Curaduria** - native thumbnail grid inside the Studio: everything is included by default, a click excludes/re-includes, and an explicit "Modo heroinas" toggle marks 4-6 heroes with single clicks (no double click, no copy/paste; the first hero is the cover). The classic standalone contact sheet remains available as a fallback.
3. **Capitulos** - runs `generator/locate.py` (GPS from EXIF/QuickTime, greedy clustering, Nominatim names); chapter titles are editable in the UI before building.
4. **Paleta** - runs `generator/extract_palette.py` and shows the palette preview for approval. Fine hand-tuning of a muddy palette stays a Claude Code task (lesson L-EV-2 in the `eventos-landing` skill).
5. **Build** - runs `generator/build_event.py` with title/place/date and previews the finished landing.
6. **Deploy** - runs `generator/deploy_event.py`: checks the ~100MB Vercel file cap, writes `.vercelignore`, absolutizes `og:url`/`og:image`, deploys with the Vercel CLI and verifies the live URL responds.

## Requirements

- `ffmpeg` on PATH (video transcode + posters).
- `npx`/Node on PATH with the Vercel CLI logged in (deploy step only).
- Network access for Nominatim (chapters) and Vercel (deploy).

## Safety Notes

- One job at a time (shared `studio_kit` state machine); the UI streams the log.
- All landings ship with `noindex`; URLs are unlisted, not authenticated.
- Deploy publishes to the public internet - the UI says so before the button.
- Media, inventories and generated landings stay in the external workspace; this repo only keeps the Studio code and this doc.