Realtime for yourorderswithout the servers.
Publish an event from your backend and every connected browser updates instantly. Separate dev, staging and prod, keys that fit any repo layout, and nothing stored.
- Public · private · presence
- No payloads stored
- Any language
- Any repo layout
0
channel types
public, private, presence
0
environments
dev, staging and prod
0
events stored
payloads are never saved
0
request to publish
plain HTTPS, any language
Three steps from nothing to live
No WebSocket servers to host, no scaling to think about. You publish; Synvora delivers.
Create a project
Pick an environment, add channels and copy two keys: a secret key for your server and a public key for browsers.
SYNVORA_SECRET_KEY=sk_live_•••••••• SYNVORA_PUBLIC_KEY=pk_live_••••••••
Publish from your backend
One authenticated request. Synvora checks your limits and fans the event out to everyone subscribed.
POST /api/v1/events
{ "channel": "orders",
"event": "order.created",
"data": { "id": 4821 } }Subscribe in any browser
Open a connection with your public key, subscribe to a channel and handle the event. That is the whole client.
sv.subscribe("orders")
.on("order.created", (data) => {
renderOrder(data);
});Publish once, watch everyone update
Pick a channel and an event, then press publish. Every connected client receives it at the same moment.
1 · Channel
2 · Event
POST /api/v1/events
{ "channel": "orders",
"event": "order.created" }Simulated here — your project does this through the API.
- Waiting for events…
- Waiting for events…
- Waiting for events…
Everything you need, nothing to run
Built for teams that want realtime in their product this week, not a project for next quarter.
Public, private and presence channels
Open channels for everyone, token-gated channels for signed-in users, and presence channels that show who is online.
- Authorize private channels on your server
- Presence shows who is in a room
- Channel names are never a secret
However you organise your code
Synvora is plain HTTPS plus a browser connection, so it fits a monorepo, two repos or a fleet of services — in any language.
my-app/
apps/api
sk_live_…
apps/web
pk_live_…
Monorepo
One repository, one project. Server code reads the secret key, browser code reads the public key.
backend repo
sk_live_…
frontend repo
pk_live_…
Frontend + backend repos
The backend repo holds only the secret key. The frontend repo holds only the public key, never a secret.
orders-svc
sk · orders.*
billing-svc
sk · billing.*
web
pk_live_…
mobile
pk_live_…
Many repos & services
Give every service its own key, limited to the channel prefixes it needs. Revoke one without touching the rest.
secret key · servers only| public key · safe for browsers
One request out, one line in.
Publish with plain HTTPS from any language. Receive with a small helper served from Synvora.
- Plain HTTPS to publishWorks from any language, framework or cron job.
- A tiny helper for browsersOne script tag handles tokens, subscribing and reconnecting.
- Nothing to installNo package, no build step, no version to keep in sync.
terminal
curl -X POST https://synvora.swiftproject.in/api/v1/events \
-H "Authorization: Bearer $SYNVORA_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"channel": "orders",
"event": "order.created",
"data": { "id": 4821, "total": 2499 }
}'Whatever should update without a refresh
Live dashboards
Push metrics, orders and alerts to admin screens the moment they change.
orders · metricsNotifications
Tell a signed-in user something happened, in their browser, right now.
private channelsCollaboration
Cursors, typing indicators and who-is-online for shared documents and boards.
presenceChat & support
Message streams between customers and your team without running a chat server.
chat.*Plans sized to your traffic
Every plan includes the same core features. What changes is how much you can send and how many people can be connected — and those limits are different for each plan.
- 1Submit a requestTell us what you are building and roughly how much traffic to expect.
- 2We talk it throughWe agree the plan, the number of projects and any special needs.
- 3Plan fixed, go liveYour account is created and you publish your first event.
Free
Try Synvora on a side project.
Exact limits are shared when your account is set up.
Included in every plan
- Public, private & presence channels
- dev · staging · prod environments
- Test console, docs & AI prompt
- Usage alerts before you hit your limit
- Help getting your first event live
Starter
For apps going live with real users.
Exact limits are shared when your account is set up.
Included in every plan
- Public, private & presence channels
- dev · staging · prod environments
- Test console, docs & AI prompt
- Usage alerts before you hit your limit
- Help getting your first event live
Pro
Higher volume and more room to grow.
Exact limits are shared when your account is set up.
Included in every plan
- Public, private & presence channels
- dev · staging · prod environments
- Test console, docs & AI prompt
- Usage alerts before you hit your limit
- Help getting your first event live
Enterprise
Custom capacity, support terms and onboarding.
Exact limits are shared when your account is set up.
Included in every plan
- Public, private & presence channels
- dev · staging · prod environments
- Test console, docs & AI prompt
- Usage alerts before you hit your limit
- Help getting your first event live
Need something bigger or different? Ask for a custom plan in your request — we tailor limits to your traffic.
Where Synvora fits
An honest, category-level look at the common ways to add realtime. Pick what matches your needs.
| Capability | SynvoraHosted for you | Self-hosted Socket.IOYou run the servers | Managed pub/subHosted providers | DB change streamsFrom your database |
|---|---|---|---|---|
Time to first event Setup | Minutes Create a project, copy a key | Days to weeks Servers, scaling, auth to build | Minutes Sign up and integrate | Hours Enable on your database |
Servers you operate Operations | None Hosted for you | Yours to run & scale Plus monitoring and upgrades | None Hosted for you | Your database Load shared with your data |
What triggers an event Model | Your backend decides Explicit publish, any logic | Your code Whatever you build | Your backend decides Explicit publish | Table changes only Tied to your schema |
Project & environment isolation Security | Built in dev / staging / prod rooms | You build it Easy to get wrong | Varies Check the product | Per database Not per environment |
Stores your event data Privacy | Never Memory only, then gone | Up to you You decide and secure it | Varies Check the product | In your DB Rows live with your data |
Guaranteed delivery & replay Reliability | Best effort No replay; refresh from your backend | You build it Queues, acks, storage | Varies Often an add-on | Partial Depends on the setup |
Cost model Pricing | Plans with limits Agreed up front | Servers + time Hidden engineering cost | Usage or tier based Can grow with traffic | Included With your database plan |
Time to first event
SetupSynvora
Minutes
Create a project, copy a key
Self-hosted Socket.IO
Days to weeks
Servers, scaling, auth to build
Servers you operate
OperationsSynvora
None
Hosted for you
Self-hosted Socket.IO
Yours to run & scale
Plus monitoring and upgrades
What triggers an event
ModelSynvora
Your backend decides
Explicit publish, any logic
Self-hosted Socket.IO
Your code
Whatever you build
Project & environment isolation
SecuritySynvora
Built in
dev / staging / prod rooms
Self-hosted Socket.IO
You build it
Easy to get wrong
Stores your event data
PrivacySynvora
Never
Memory only, then gone
Self-hosted Socket.IO
Up to you
You decide and secure it
Guaranteed delivery & replay
ReliabilitySynvora
Best effort
No replay; refresh from your backend
Self-hosted Socket.IO
You build it
Queues, acks, storage
Cost model
PricingSynvora
Plans with limits
Agreed up front
Self-hosted Socket.IO
Servers + time
Hidden engineering cost
General comparison across categories; individual products differ. Check any provider's current documentation before deciding.
Questions, answered.
Can't find what you need? Tell us what you are building and we will walk you through it.
Request accessReady to make your app feel alive?
Tell us what you are building. We will set up your account and you can publish your first event the same day.