Skip to content

Releases: Convex-Works/tide

Release list

tide 0.1.0

Choose a tag to compare

@github-actions github-actions released this 23 Oct 10:15
1767717

The first tagged release of tide, a self-hosted video meeting service. One Go
binary serves the web app and runs LiveKit's media server inside itself.

docker run --rm --network host ghcr.io/convex-works/tide:0.1.0

The image is for linux/amd64 and linux/arm64. With no configuration, tide runs
in anonymous mode at http://localhost:8080. The
deployment guide
covers HTTPS, sign-in, recording, Docker Compose and Kubernetes.

What it does

  • Meeting links with custom slugs, and calendar invites (.ics)
  • Microphone, camera, screen sharing, device selection and automatic
    reconnection
  • A guest lobby: hosts admit, deny, mute and remove guests, and end the
    meeting
  • Hiding a participant's video for yourself
  • In-room chat that is not stored
  • Optional recording of audio (OGG) or the meeting layout (MP4) to
    S3-compatible storage, with download and delete
  • Optional transcripts with speaker labels, made on the room owner's own
    paired Mac by the moil app (alpha), never on the server. Off unless
    TIDE_TRANSCRIPTS=true.

Modes

Configuration selects the mode:

Mode Enabled by Room storage Processes
Anonymous No OIDC issuer In memory tide
Signed in TIDE_OIDC_ISSUER SQLite tide
Signed in with recording OIDC + TIDE_S3_ENDPOINT SQLite tide + Egress + Redis

In anonymous mode anyone who can reach the server can create a room, and
restarting tide clears every room. Signed-in mode works with any OIDC
provider; guests join with a display name and need no account.

Know before you deploy

  • Browsers only allow camera and microphone over HTTPS (or on localhost), so
    put tide behind a TLS proxy that passes WebSocket upgrades.
  • Media goes straight to tide on UDP 7882, with TCP 7881 as a fallback. Open
    both.
  • Restarting tide ends live meetings and recordings. An external LiveKit
    server can keep meetings running across a restart.
  • Run one tide per deployment. Lobby requests, rate limits and meetings live
    in that process.
  • The feature list is deliberately small and fixed. See
    ARCHITECTURE.md.