vmux

Website & Launch Ops

Landing page behavior, launch signup storage/export, and UI image generation workflows.

Landing Page Scope

The public homepage is intentionally minimal:

  • Docs entrypoint (/docs)
  • Launch news signup form

The old quickstart/help terminal demo is no longer part of the homepage flow.

Launch Signup Data Flow

  1. User submits email from the homepage form.
  2. Frontend sends POST /api/signup.
  3. Worker validates and normalizes the email.
  4. Email is stored in a Cloudflare Durable Object (SignupStore) keyed by normalized address.

Stored fields:

  • email
  • submittedAt
  • source
  • country
  • userAgent

Exporting Signup Emails

Set the export token (one-time per environment):

cd web
printf '%s' 'YOUR_LONG_RANDOM_TOKEN' | npx wrangler@4.66.0 secret put SIGNUP_EXPORT_TOKEN
npx wrangler@4.66.0 deploy

Export with the repo script:

cd /Users/douglance/Developer/lv/visionPTY
VMUX_SIGNUP_EXPORT_TOKEN='YOUR_LONG_RANDOM_TOKEN' bin/export-launch-signups.sh

Formats:

  • CSV (default)
  • JSON (--format json)

Programmatic App UI Image Generation

Use the repo script to capture screenshots from the vmux app running in the visionOS simulator.

Default capture:

cd /Users/douglance/Developer/lv/visionPTY
bin/capture-vmux-app-screenshot.sh

High-impact close-up (tight app framing + enhancement):

bin/capture-vmux-app-screenshot.sh --preset hero --name hero-closeup.png

Custom filename and delay (useful if you need the app to settle into a specific UI state):

bin/capture-vmux-app-screenshot.sh --name terminal-main.png --wait 8

If the simulator viewpoint drifts and framing needs a tweak, keep the preset and nudge the focal point:

bin/capture-vmux-app-screenshot.sh --preset hero --focus-x 0.44 --focus-y 0.46 --name hero-closeup-tuned.png

Target a specific simulator UDID:

bin/capture-vmux-app-screenshot.sh --udid 325E788F-2C2C-4565-BFB3-FE473E5E97F7

The script will:

  1. Boot the target Apple Vision Pro simulator
  2. Build vmux for simulator
  3. Install and launch vmux
  4. Capture a PNG screenshot to build/screenshots/

If you want multiple shots in one session, use --skip-build --skip-install after the first run.