---
id: 'realtime'
title: 'Realtime'
description: 'Send and receive messages to connected clients.'
subtitle: 'Send and receive messages to connected clients.'
hideToc: true
---
Supabase provides a globally distributed [Realtime](https://github.com/supabase/realtime) service with the following features:
- [Broadcast](/docs/guides/realtime/broadcast): Send low-latency messages using the client libraries, REST, or your Database.
- [Presence](/docs/guides/realtime/presence): Track and synchronize shared state between users.
- [Postgres Changes](/docs/guides/realtime/postgres-changes): Listen to Database changes and send them to authorized users.
## Examples
{[
{
name: 'Multiplayer.dev',
description: 'Showcase application displaying cursor movements and chat messages using Broadcast.',
href: 'https://multiplayer.dev',
},
{
name: 'Chat',
description: 'Supabase UI chat component using Broadcast to send message between users.',
href: 'https://supabase.com/ui/docs/nextjs/realtime-chat'
},
{
name: 'Avatar Stack',
description: 'Supabase UI avatar stack component using Presence to track connected users.',
href: 'https://supabase.com/ui/docs/nextjs/realtime-avatar-stack'
},
{
name: 'Realtime Cursor',
description: "Supabase UI realtime cursor component using Broadcast to share users' cursors to build collaborative applications.",
href: 'https://supabase.com/ui/docs/nextjs/realtime-cursor'
}
].map((x) => (
{x.description}
))}
## Resources
Find the source code and documentation in the Supabase GitHub repository.
{[
{
name: 'Supabase Realtime',
description: 'View the source code.',
href: 'https://github.com/supabase/realtime',
},
{
name: 'Realtime: Multiplayer Edition',
description: 'Read more about Supabase Realtime.',
href: 'https://supabase.com/blog/supabase-realtime-multiplayer-general-availability',
},
].map((x) => (