📈 GH Trending Explorer 🎲 Surprise me

← all repos

supabase / realtime

git clone https://github.com/supabase/realtime.git v2.146.0 · 2d ago 🔥 on GitHub Trending today

Broadcast, Presence, and Postgres Changes via WebSockets

+1
stars, 24h · #7,716
+~7
stars, 7 days · #8,367
+37
stars, 30 days · #13,170
7.7k
★ total · +0% this week
477
forks · 90 open issues

Star history (as recorded here)

2026-10-20 · 7,662 ★ 2026-10-22 · 7,665 ★
LanguageElixir
LicenseApache-2.0
Created2019-09-23 (7y ago)
Last pushtoday
Watchers110
OwnerOrganization

Seen on GitHub Trending

  • 2026-10-22 — #2 monthly in elixir · +37 ★
  • 2026-10-21 — #2 monthly in elixir · +37 ★
  • 2026-10-20 — #2 monthly in elixir · +37 ★

GitHub topics

Links

README excerpt
Supabase Realtime 
 Send ephemeral messages, track and synchronize shared state, and listen to Postgres changes all over WebSockets.
 Examples 
 ·
 Request Features 
 ·
 Report Bugs 
## Status
| Features | v1 | v2 | Status |
| ---------------- | --- | --- | ------ |
| Postgres Changes | ✔ | ✔ | GA |
| Broadcast | | ✔ | GA |
| Presence | | ✔ | GA |
This repository focuses on version 2 but you can still access the previous version's code and Docker image. For the latest Docker images go to https://hub.docker.com/r/supabase/realtime.
The codebase is under heavy development and the documentation is constantly evolving. Give it a try and let us know what you think by creating an issue. Watch releases of this repo to get notified of updates. And give us a star if you like it!
## Overview
### What is this?
This is a server built with Elixir using the Phoenix Framework that enables the following functionality:
- Broadcast: Send ephemeral messages from client to clients with low latency.
- Presence: Track and synchronize shared state between clients.
- Postgres Changes: Listen to Postgres database changes and send them to authorized clients.
For a more detailed overview head over to Realtime guides.
### Does this server guarantee message delivery?
The server does not guarantee that every message will be delivered to your clients so keep that in mind as you're using Realtime.
## Quick start
You can check out the Supabase UI Library Realtime components and the repository of the multiplayer.dev demo app.
## Developers
Start with DEVELOPERS.md for local setup, `mise` tasks, and example workflows.
Once your environment is up and running, check out the following docs to customize the server and troubleshooting:
- ARCHITECTURE.md - how the cluster, broadcast fan-out and Postgres Changes fit together
- ENVS.md - detailed list of all environment variables
- ERROR_CODES.md - list of operational codes
- OBSERVABILITY_METRICS.md - monitoring information
## Postgres compatibility
Versions below refer to `supabase/postgres` releases unless stated otherwise.
| Tenant database | Role | Status | Notes |
| ------------------------------- | ---------------- | -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| = 15.14.1.018, 16.x, 17.x | `supabase_admin` | Supported | Migrations need a superuser. Tenant grants don't. supautils manages the policies. |
| 17.x-orioledb = 17.11.0.004 | `supabase_admin` | Supported | Migrations need a superuser. |
| Multigres | `supabase_admin` | Supported | Only Postgres >= 17.x and every commit waits for a standby. |
## Contributing
See CONTRIBUTING.md
## Code of Conduct
See supabase/CODE_OF_CONDUCT.md
## License
This repo is licensed under Apache 2.0.
## Credits
- Phoenix - `Realtime` server is built with the amazing Elix