Instant Queries by Default

Sync engines enable instant UI by downloading data to the client before it's needed. All read and writes are local and synced with the server in the background.

But there's a catch: almost all realistic apps have way too much data to download ahead of time. There are usually complex permissions too — not all users can read and write all data.

We started the Zero project two years ago to solve these problems and bring the performance of sync to the entire web.

Try it out right now.

Our Gigabugs demo has 1.2 million rows, and loads in less than 2 seconds.

How it Works

Zero Architecture Diagram

You get a client-side API that looks like an embedded database, but to which you can issue arbitrary hybrid queries that span the entire database, including the server.

Behind the scenes, Zero synchronizes query results continuously to a client-side persistent cache. This cache is used automatically for future queries whenever possible.

function Playlist({id}: {id: string}) {
  const [playlist] = useQuery(
    zero.query.playlist
      .related('tracks', track => track
        .related('album')
        .related('artist')
        .orderBy('playcount', 'asc'))
      .where('id', id)
      .one()
  );

  const onStar = (id: string, starred: boolean) => {
    zero.mutate.track.update({id, starred});
  };

  // render playlist...
}

This architecture provides:

Instant Response

User interactions update the UI within the next frame.

Automatic Reactivity

Changes propagate live to all connected users.

Faster Development

Build most features entirely client-side without new server APIs.

Scalability

Handles arbitrary backend data amounts with on-demand synchronization.

Only with Zero

Zero's query-driven sync enables a really powerful set of features. Some tools offer some of these features, but only Zero offers all of them together.

Our Users Say

Check out what our users have to say about Zero.

Zero completely changed how we think about real-time. The query-driven sync is genius — our app feels instant now.

Matt Wonlaw
Matt Wonlaw
Engineering Lead, Streamline

We tried building our own sync layer. Should've just used Zero from day one. Saved us months of development time.

Marcus Rodriguez
Marcus Rodriguez
CTO, Catalyst Labs

The permission system is incredibly powerful. We can finally give users real-time collaboration without worrying about data leaks.

Priya Patel
Priya Patel
Senior Developer, Nexus

Local-first with Zero means our app works offline and syncs seamlessly. Our users don't even notice when their connection drops.

Alex Kumar
Alex Kumar
Founder, TaskFlow

The developer experience is top-notch. Write queries, get reactive updates. It's that simple.

Jamie Taylor
Jamie Taylor
Full-Stack Developer, Velocity

Zero handles the hard parts of sync so we can focus on building features. The performance gains are unreal.

Taylor Morgan
Taylor Morgan
Product Engineer, Orbit

Cloud Zero

Coming very soon
Cloud Zero Dashboard

Traditional SaaS

  • Managed, monitored, and upgraded by Rocicorp
  • Runs in our cloud infrastructure
  • Zero setup — get started in minutes
$30/vcpu/mo+ $0.05/GB/mo

BYOC (Bring Your Own Cloud)

  • Managed, monitored, and upgraded by Rocicorp
  • Runs in your own AWS VPC
  • Data stays in your org with revocable access
$100/vcpu/mo+ your AWS pricing

Interested?

We've started slowly rolling out to a limited group of users. Get in touch:

Run Zero Yourself

Dive into the docs to see how Zero fits into your stack, and hop into our Discord to connect with the team and other builders.