# Creative Asset Shoot List — 2026-04-26

**Purpose:** Structured collection brief for real photos / videos / streams across the Blue Oak Grove ecosystem. Replaces generic Midjourney imagery with authentic Brady-shot media.

**Authentic-Media Directive:** Real First. Audio First. Brady's Voice First. AI-rendered photorealistic images are NEVER published as RoseCourt brand content (per `~/docs/ecosystem/rc-authentic-media-directive.md`).

---

## File specs (apply to all assets)

- **Format:** WebP (preferred), JPEG (acceptable). Source RAW kept locally; export at quality 80-85.
- **Naming:** `yyyy-mm-dd_<surface>_<descriptor>_<seq>.webp`
  - Example: `2026-04-28_brady-house_dance-floor_001.webp`
- **Sizes to export:** 1600w (hero), 1200w (medium), 600w (thumbnail). Single source, multiple sizes.
- **R2 upload path:** `pub-ffdd6924be764a8c86899a937394fd1b.r2.dev/<brand>/<surface>/<filename>`
  - Brady's house photos → `rosecourt/venues/brady-house/`
  - Downside Up → `rosecourt/venues/downside-up/`
  - Strip Mall → `rosecourt/venues/strip-mall/`
  - Cholla Library → `rosecourt/venues/cholla-library/`
  - Event-specific shots → `rosecourt/events/<yyyy-mm-dd>-<event-slug>/`
  - People → `rosecourt/people/`
  - Brand hero → `<brand>/home/`
- **Alt text:** Descriptive, never "image of X." E.g., "Hardwood dance floor with string lights and floor cushions, set up for tango." Aim for 80-120 chars.
- **Upload command:** `npx wrangler r2 object put pub-ffdd6924be764a8c86899a937394fd1b.r2.dev/<path> --file=<local-path> --remote`

---

## 🏠 Brady's House Venue (THIS WEEK — top priority)

**Purpose:** May 1 Fuega Spring Formal happens here. Future Fuega Dance May 15 + June 26 may overflow here when Downside Up isn't available.

**Shot list (12-18 photos):**

### Dance area
- [ ] Wide shot of dance floor (uncluttered, lights on)
- [ ] Same wide shot at golden hour (warm light)
- [ ] Detail: floor texture / wood grain
- [ ] Detail: dance lighting setup (string lights, sconces)
- [ ] Wide with one or two dancers in motion (silhouette, not face — preserves intimate-event feel)

### Approach + entry
- [ ] House exterior (early evening, warm lighting in windows)
- [ ] Walkway / entrance with garden/landscape framing
- [ ] Door detail (welcoming touch — wreath, sign, etc.)

### Decor / atmosphere
- [ ] Refreshment table (water carafes, snacks, glasses)
- [ ] Seating / cushion area (rest spots between songs)
- [ ] Flowers, candles, or season-specific decor
- [ ] Music station / speaker / DJ setup

### Garden / outdoor
- [ ] Garden wide (for "warm-months Fuega outdoors" framing)
- [ ] Path lights at dusk
- [ ] One detail shot (plants, herbs, etc.)

### Optional (videos, 15-30 sec each)
- [ ] Dance area pan (slow, smooth — shows scale)
- [ ] Approach walk-through (gate to door)
- [ ] Detail montage (lighting, decor, music — no people)

**Output paths:** `rosecourt/venues/brady-house/2026-04-28_brady-house_*.webp`

---

## 🏛️ Downside Up Venue (Aniessa + Gail)

**Purpose:** Public Fuega Dance May 15 + June 26. Already a separate venue page exists.

**Shot list (5-8 photos):**
- [ ] Wide of dance floor (empty, lights on)
- [ ] Bar / refreshment area
- [ ] Stage / DJ booth
- [ ] Exterior signage
- [ ] One detail (interesting wall, art, fixture)
- [ ] Optional: dancing-night candid (silhouette, with permission)

**Output paths:** `rosecourt/venues/downside-up/`

---

## 🛒 Strip Mall Venue (Strip on 7th)

**Purpose:** ShareCraft Saturday May 2 happens here. GroveQuest narrative anchor.

**Shot list (5-7 photos):**
- [ ] Storefront / signage
- [ ] Interior wide
- [ ] Detail: shelving / merchandise / vibe
- [ ] Adjacent storefronts (for Strip Mall context)
- [ ] Optional: street-view from across the parking lot
- [ ] Optional: ShareCraft Saturday in-progress (vendor table, attendee)

**Output paths:** `rosecourt/venues/strip-mall/`

---

## 📚 Cholla Library Venue (LongHouse meetings)

**Purpose:** LongHouse Wednesday meetings + MM Friday library webinar series. Already used (Apr 17 webinar).

**Shot list (3-5 photos):**
- [ ] Meeting room wide (table set up)
- [ ] Library exterior
- [ ] Detail: shelves, posters, civic flair
- [ ] Optional: setup / Brady-prepping shot

**Output paths:** `rosecourt/venues/cholla-library/` or `longhouse/venues/cholla-library/`

---

## 🎉 Per-Event Shot Lists

### Fuega May 1 — Spring Formal at Brady's House
- **Pre-event** (day-of): final venue setup, refreshment table, music ready
- **During**: candid attendees (silhouette/back-shot for privacy), couples dancing, hands holding glasses
- **Post**: thank-you card-style hero shot, group silhouette
- **Output:** `rosecourt/events/2026-05-01-fuega-spring-formal/`

### ShareCraft Saturday May 2 — Strip Mall
- **Pre**: vendor table setup, signage in place
- **During**: vendor + attendee interaction (with permission), maker-craft detail close-ups
- **Post**: thank-you / "see you next month" framing
- **Output:** `rosecourt/events/2026-05-02-sharecraft-saturday/`

### Fuega Dance May 15 — Downside Up
- **Pre**: empty dance floor with mood lighting
- **During**: silhouettes, blurred-motion couples, music-station detail
- **Post**: lights-up empty floor (closure)
- **Output:** `rosecourt/events/2026-05-15-fuega-dance/`

### Fuega Dance June 26 — Downside Up
- Similar to May 15. Each Fuega builds visual cadence.
- **Output:** `rosecourt/events/2026-06-26-fuega-dance/`

### DS Webinars (Friday 10 AM PT, Cholla Library + Zoom)
- **Pre**: setup at library (laptop open, projector running, Brady ready)
- **During**: Brady speaking (one good headshot for replay pages)
- **Screenshots**: 2-3 from the actual Zoom (slide content, audience-side feedback)
- **Output:** `mirrormirror/events/2026-mm-dd-ds-webinar/`

### Solshine Pour Event (TBD date)
- **Pre**: bottle / labeling / setup
- **During**: Brady mixing or Brady-with-bottle hero
- **Post**: customer holding bottle (with permission)
- **Output:** `whg/events/<date>-solshine-pour/`

---

## 🎨 Per-Brand Hero Candidates

Each brand needs 1-2 strong hero candidates per season for home page rotation.

### RoseCourt
- **Spring**: gathering/community shot at golden hour
- **Summer**: outdoor garden / Fuega dance
- **Fall**: candle-lit indoor warmth
- **Winter**: cozy indoor / fireside framing
- **Output:** `rosecourt/home/hero-{spring|summer|fall|winter}.webp`

### Mirror Mirror
- **Brady-as-instructor headshot** (not stock)
- **Workshop in progress** (whiteboard / laptop / coffee)
- **Output:** `mirrormirror/home/hero.webp`, `mirrormirror/home/brady-instructor.webp`

### Grove House
- **Land photo** (Rimrock or comparable Arizona open landscape)
- **Brady-on-site** (boots on ground, surveying — earned-not-stock framing)
- **Output:** `grovehouse/home/hero-land.webp`, `grovehouse/home/brady-site.webp`

### Witch Haven Grove (Solshine)
- **Bottle close-up** (hero product shot)
- **Ingredient context** (nettles, garden, kitchen)
- **Output:** `whg/solshine/hero.webp`, `whg/solshine/ingredients.webp`

### Small Stage
- **Stage at performance** (stage lit, mic ready)
- **Performer + audience** silhouette (CC:Universe distribution framing)
- **Output:** `smallstage/home/hero.webp`

### LongHouse
- **Civic library shelves** or **meeting in progress**
- **Cholla Library exterior** (institutional feel)
- **Output:** `longhouse/home/hero.webp`

### Brady Hugins (personal)
- **Brady at desk** (operational tone)
- **Brady on land** (vision tone)
- **Output:** `bradyhugins/home/hero-{operator|vision}.webp`

---

## 🎥 Video / Stream Library

### Short videos (15-30 sec, vertical for social, horizontal for web hero)

- **Brady's house dance area pan** — for /fuega/may-1/ hero
- **Downside Up dance floor** — for /fuega/ hub hero
- **Strip Mall storefront approach** — for /sharecraft/ + /grovequest/strip-on-7th/
- **DS webinar setup time-lapse** — for /ds/ hub
- **Solshine pour-and-bottle sequence** — for /solshine/ hero

### Streams (longer-form, 5-30 min)

- **Fuega dance recap** (after each event) — Vimeo/R2 upload
- **DS webinar replays** (already pattern — Apr 24 deferred to Brady carry-over)
- **Solshine ingredient deep-dive** — once Brady has time, for WHG education
- **Penny Knights chapter explainers** — 3 videos, one per chapter

---

## 📐 Stream + Audio Specs

- **Video container:** MP4 (H.264) for general use; WebM (VP9) for web video tag
- **Audio container:** WebM (Opus) — already established as ecosystem default
- **R2 path for media:** `<brand>/<surface>/<asset-name>.{mp4|webm}`
- **CSP requirements:** every page hosting video needs `media-src` in `_headers` (CSP) — already standard per S73 fix.
- **Video tags:** include `controls preload="metadata" playsinline` + poster image

---

## 🚦 Brady's "this week" priority (in order)

1. **Brady's house** dance/decor/garden — 12-18 photos, 1-2 short videos. Slot into `rosecourt/venues/brady-house/` next time he's at the home with cleanup done.
2. **Brady-as-instructor headshot** — single good photo for MM home + DS webinar pages. Can be self-timer or partner-shot.
3. **Solshine bottle close-up** — single hero shot for WHG /solshine/.

Everything else is medium-term collection — schedule alongside events that naturally generate the shots.

---

## ✅ Workflow when assets arrive

For each new asset:

1. **Upload to R2** with the canonical path (above)
2. **Add to `~/builders/shared/event_images.py`** registry key
3. **Wire into builder** that needs it (or rely on registry fallback)
4. **Re-deploy the affected brand site**
5. **Run `bin/audit_image_urls.py`** to confirm asset is reachable
6. **Update `~/docs/ecosystem/asset_catalog_*.md`** entry if cataloged

Brady's contribution to the registry should reduce Midjourney fallback usage from current generic state to <10% over the next month.
