Skip to content

Collaboration

Miao supports real-time collaboration by project ID. There are no user accounts in the current app.

Miao collaboration presence

Share a Project

  1. Create or unlock a project.
  2. Open Project.
  3. Click Link.
  4. Send the link and password to collaborators.

Collaborators open the link, enter the project password, and unlock the same project.

Connection Model

After unlock, the app connects to:

txt
/api/projects/{projectId}/sync

The sync endpoint upgrades to a WebSocket and is backed by a Cloudflare Durable Object project room. The unlock token is passed to the room connection.

What Syncs

Miao syncs the project document, including:

  • Tracks.
  • Regions.
  • MIDI clips.
  • Chord lane blocks.
  • Project key/scale.
  • Project audio metadata.
  • Instruments.
  • Per-MIDI-track instrument and sampler settings.
  • Output effects.
  • Automation.
  • Comments.
  • Markers.
  • Project title and tempo.

Presence

Remote collaborators can appear with:

  • Idle state.
  • Playing state.
  • Recording state.
  • Seeking state.
  • Remote playhead.
  • Selected track/region context.

Presence helps you see where others are working.

Temporary Locks

Miao uses short-lived remote locks for sensitive edits such as:

  • Recording.
  • Region editing.
  • MIDI editing.
  • Chord editing.
  • Track renaming.

Locks are temporary and are designed to prevent accidental conflicting edits. They are not permanent ownership or permissions.

Playback Sync

When collaborators edit the project, the audio graph is resynced so playback reflects the edited project document. Transport state and remote playheads are shared as presence, but the important rule is: what you hear should match the latest synced project state.

Saving in Collaboration

Saving writes a server snapshot. Realtime edits sync through the project room, but a saved snapshot is still the durable recovery point for reopening and history.

Use Save regularly during collaboration, especially before export.

Privacy Notes

  • Anyone with project ID and password can unlock the project.
  • Unlock tokens expire after 12 hours.
  • Clean unused files if removed recordings/imports should be deleted from remote storage.
  • There is no account-level access list in the current app.

Browser DAW user manual