Glossary

What Is a Real-Time App?

A real-time app delivers updates to users instantly as data changes — without requiring them to refresh the page. Chat, live dashboards, collaborative editing, and multiplayer games are real-time apps.

Most web apps are request-response: the user asks, the server answers. Real-time apps flip this — the server pushes updates to the client the moment something changes, without the client asking.

Real-time technologies:

  • WebSockets — persistent bidirectional connection; best for high-frequency updates (chat, multiplayer)
  • Server-Sent Events (SSE) — one-way server push over HTTP; good for live feeds and notifications
  • Supabase Realtime — subscribe to Postgres table changes; updates push to all connected clients
  • Firebase Firestore — document listeners that fire when data changes

Building real-time with Supabase:

const channel = supabase
  .channel('bookings')
  .on('postgres_changes', { event: 'INSERT', schema: 'public', table: 'bookings' }, 
    (payload) => setBookings(prev => [...prev, payload.new])
  )
  .subscribe();

Real-time adds complexity:

  • Conflict resolution (two users editing the same record simultaneously)
  • Presence (showing who's online)
  • Reconnection handling (what to do when the connection drops)
  • Message ordering (events can arrive out of order)

When you actually need real-time: If users refresh the page to see new data — that's a signal. If stale data causes wrong business decisions (double-bookings, outdated inventory) — you need real-time. If data updates once per hour — you probably don't.

Related Terms

Want this built?