Real-Time Collaboration
SchemaStack keeps your data in sync across all connected users using server-sent events (SSE). Multiple users can view and edit the same workspace simultaneously — changes appear instantly for everyone.
How It Works
When you open a workspace, SchemaStack establishes a real-time connection to the server. Any changes made by other users appear in your view automatically. No manual refresh needed.
What syncs in real time
- Cell edits — when someone changes a value, you see it immediately
- Row additions and deletions — new and removed rows appear for all users
- Column changes — reordering, visibility, renaming, and schema changes
- Constraint updates — validation rule changes propagate instantly
- View updates — view name, description, and settings changes
Architecture
SchemaStack uses Server-Sent Events (SSE) for real-time updates:
User A edits a cell
│
▼
REST API saves the change
│
▼
Server broadcasts SSE event to workspace
│
├──→ User B receives update (applied automatically)
├──→ User C receives update (applied automatically)
└──→ User A's event is filtered out (no echo)Each user's own changes are applied optimistically (instant feedback) while the SSE broadcast updates everyone else. Events are filtered by user ID to prevent echoing your own changes back to you.
Connection States
The toolbar shows your connection status:
| State | What you see | What to do |
|---|---|---|
| Connected | Green workspace status bar | Nothing — everything works normally |
| Reconnecting | Yellow banner: "Reconnecting..." | Wait, it will reconnect automatically with exponential backoff |
| Disconnected | Red banner with "Reconnect" link | Click Reconnect, or check your network |
Automatic Reconnection
If the SSE connection drops, SchemaStack reconnects automatically with exponential backoff and jitter. This prevents all users from reconnecting simultaneously if the server restarts.
New Rows Indicator
When other users add rows while you're working, a pill appears at the top of the table showing how many new rows are available. Click it to load them into your view. This prevents unexpected jumps in the data while you're focused on a specific area.
Offline Behavior
If your network connection drops entirely, an offline banner appears across the top of the app. You can continue viewing data, but:
- Edits won't be saved until you're back online
- You won't receive updates from other users
- The banner disappears automatically when your connection is restored