Skip to content

Latest commit

 

History

History
66 lines (50 loc) · 3.06 KB

File metadata and controls

66 lines (50 loc) · 3.06 KB

Connected services — Parcel

Repo: this Parcel repository.

Service Purpose Where configured
GitHub Source, Releases, CI .github/workflows/
Vercel Marketing site parcel.parable.dev Website/vercel.json, connect repo root Website/
Supabase Optional Capture upload (Storage) Parcel → Preferences → Upload
Mobbin UI research MCP .cursor/mcp.json
Higgsfield Icon / marketing assets MCP .cursor/mcp.json
Parable Component registry MCP Cursor MCP catalog
Sparkle In-app updates Website/public/appcast.xml, Scripts/release.sh

GitHub

  • Default branch: master
  • Release: tag v* → release.yml runs release-gate preflight, builds signed/notarized Parcel.zip, updates Sparkle appcast, verifies the website ZIP, builds Website/out, and uploads the deployable website-dist artifact before creating the GitHub Release
  • CI: push/PR → build.yml compiles Parcel Debug and verifies website export assets

Required release secrets/vars:

Name Purpose
DEVELOPMENT_TEAM Apple Developer Team ID
DEVELOPER_ID_APPLICATION_CERTIFICATE_BASE64 Base64-encoded Developer ID Application .p12 for CI signing
DEVELOPER_ID_APPLICATION_CERTIFICATE_PASSWORD Password for the Developer ID Application .p12
KEYCHAIN_PASSWORD Optional temporary CI keychain password; generated by the workflow if omitted
APPLE_ID + APPLE_APP_PASSWORD Notary credentials, unless a keychain profile is used locally
SPARKLE_ED_PRIVATE_KEY Non-interactive Sparkle appcast signing key
SPARKLE_KEYCHAIN_ACCOUNT Optional; defaults to parcel.parable.dev
PARCEL_SCREEN_RECORDING_VERIFIED Set to 1 only after exact release/test app path QA passes
PARCEL_SECOND_DISPLAY_VERIFIED Set to 1 only after second-display QA passes
PARCEL_SUPABASE_URL, PARCEL_SUPABASE_ANON_KEY, PARCEL_SUPABASE_BUCKET Live upload QA gate
PARCEL_MACOS13_VM_VERIFIED Set to 1 only after macOS 13 fallback QA passes

Set repository About → Website to https://parcel.parable.dev.

Vercel

  1. Import the Parcel repository in Vercel.
  2. Set Root Directory to Website.
  3. Framework preset: Next.js (auto-detected; static export to out/).
  4. Custom domain: parcel.parable.dev.

Supabase

  1. Create a public Storage bucket (e.g. captures).
  2. In Parcel: Preferences → Upload — paste project URL, anon key, bucket.
  3. Optional: set Public base URL to your CDN or https://<project>.supabase.co/storage/v1/object/public/<bucket>.

Never commit anon keys. Use Cursor Supabase MCP (authenticate in Settings → MCP) to inspect buckets from the agent.

MCP (Cursor)

See mcp-setup.md. Mobbin and Higgsfield are configured in .cursor/mcp.json.

App identity

Value
Display name Parcel
Bundle ID dev.parable.Parcel
Legacy (Notable) Migrated automatically via AppIdentity.migrateFromNotableIfNeeded()