Guided setup
Self-host Coop
A complete setup path for company owners, operations teams, and IT administrators.
Coop turns a Mac running Apple Messages into a shared team inbox. A self-hosted installation still has several parts because each part has a different job:
Give your assistant the complete official documentation, answer a short interview, and work through only the steps your company needs.
Set up with an AI agent| Part | What it does | Recommended service |
|---|---|---|
| Dashboard | The browser inbox your team uses | Vercel or Cloudflare |
| Clerk | Sign-in and verified identity | Clerk |
| Coop API | Access rules, sync, and message coordination | Railway or Fly.io |
| PostgreSQL | Organizations, conversations, and encrypted message records | Supabase |
| Redis | Encrypted recipient-search index | Railway Redis or another managed Redis |
| S3-compatible storage | Encrypted attachment files | Supabase Storage, Cloudflare R2, AWS S3, or MinIO |
| Coop Relay | Connects the API to Apple Messages | An always-on Mac |
Use Supabase for PostgreSQL and Storage, Railway for the API and Redis, Vercel for the dashboard, and Clerk for sign-in. This path has the fewest manual infrastructure steps.
What “self-hosted” means here
You control the Coop application, its configuration, the database account, the storage account, the deployment accounts, and the Mac. Clerk, Supabase, and the selected hosts are still external processors. If company policy requires every dependency to run on infrastructure that you operate, use your own PostgreSQL, Redis, and S3-compatible storage and review Clerk as a separate identity decision.
Coop encrypts private message content and attachments at rest with your DATA_ENCRYPTION_KEY. The API must decrypt data for authorized users, so this is server-managed encryption, not end-to-end encryption between Relay and the browser.
Setup order
Follow the pages below in order. Record account ownership and URLs as you go. Do not deploy the API before you have the database, Redis, storage, Clerk, and encryption values ready.
Give an AI assistant the complete Coop documentation, then let it build and guide only the setup path your company needs.
Decide who owns the installation, collect the required accounts, and choose stable public URLs.
Create PostgreSQL and private S3-compatible attachment storage without exposing Supabase keys to the browser.
Create the production sign-in application and add the verified email claims that Coop invitations require.
Deploy the Coop API with a managed Redis service, safe migrations, and health checks.
Launch the API from its checked-in Fly configuration and attach managed data services.
Deploy the dashboard from the Coop release with its Clerk and API values.
Build the dashboard from the Coop release and upload it directly to Cloudflare Pages.
Prepare the Mac, build Relay for the self-hosted API, grant permissions, and pair it to the organization.
Prove the complete path, document recovery, and give IT a repeatable operating checklist.