AdminHow to use

How to use admin

Import frames, focus to edit, generate copy, save — optionally post to Instagram in the same step.

The loop

  • Left: all pictures. Right: the focused picture — single source of truth for tags and text.
  • Generate runs vision on the frame and drafts title + caption in WW&S voice (optional note for client/mood).
  • Edit tags, tweak copy, check Live on site if it should appear publicly.
  • Save → next writes everything and advances.
  • Skip stamps the skipped tag and leaves the Queue — default view stays unprocessed only.

Queue / Skipped / Live

  • Queue (default): pictures not skipped and not live yet.
  • Skipped: parked with the skipped tag — open that filter to revisit.
  • Live: published on the site. All: everything.

Import images

  • Drag & drop images or a whole folder onto the grid, or use Import images / Import folder.
  • Uploads land in cloud storage (R2 if enabled, otherwise KV) and show up immediately — no redeploy.
  • jpg / png / webp / gif, up to 12MB each, 40 files per drop.

Instagram on save

  • Check Post to Instagram on save — then Save posts the focused image + title/caption to IG via Graph API.
  • Needs secrets in repo root .env: INSTAGRAM_BUSINESS_ACCOUNT_ID and FACEBOOK_PAGE_ACCESS_TOKEN (deploy uploads them).
  • Business/Creator IG account linked to a Facebook Page; token needs instagram_content_publish.
  • Image URL must be public (site /vault/… or /api/media/… for imports).

Tags

  • One central registry: client names, lanes (Presents / Rooms), and content types.
  • A client tag is the client’s name (e.g. Capitol Records).
  • Add a new client with Add client name. Tags save onto the picture and its site entry together.

Keyboard

  • G — generate title & text from the image
  • S or ⌘/Ctrl+Enter — save and next
  • ← → or N — move without saving (asks if unsaved)