Replicache makes web apps fast

Replicache is a JavaScript library for building zero-latency, live-updating web UIs based on Realtime Sync.

We were inspired by apps like Linear and Superhuman. When the user takes an action in one of these apps, it happens instantly, with no server round-trip, and changes from other users appear in realtime.

Realtime Sync has always been difficult to build, especially in the browser. Replicache makes it even easier — and more productive — than today’s common architectures.

Check out a video of our demo app, Repliear, or try it out yourself.

How it works

Diagram showing how traditional web apps fetch data.

In today’s web apps, the user interface is frequently blocked waiting for network requests. Preloading and optimistic mutations help sometimes, but have to be implemented for each UI feature separately.

The app ends up feeling laggy by default, because skipping the network is extra development work.

Diagram showing how Replicache downloads data beforehand to make apps faster.

Replicache instead downloads data before needed, and stores it persistently in the browser. The app reads and writes only to this local store at memory fast speeds, never talking directly to the server. As a result, Replicache apps feel snappy by default because the architecture always sends requests to local storage first, not the network.

Diagram showing how Replicache instances use bidirectional sync.

Replicache syncs its local storage continuously in the background with your server, using a bidirectional synchronization protocol inspired by git, multiplayer games, and CRDTs. It’s really easy to use, but powerful enough for complex data models.

Why Replicache?

Performance

Replicache is carefully designed, implemented, and continuously tested to provide instantaneous user interfaces.

Multiplayer Collaboration

Users see each others' changes as they happen, automatically. Want presence too? It's not a special case in Replicache. Just add cursors to your synced state.

Productivity

By moving more data to the client, features can usually be built entirely client-side with no new server APIs required.

Bring Your Own Backend

Replicache is client-side technology and works with many common backend stacks. If your server is JavaScript-based, integration can be even easier.

Transactional conflict resolution

Conflicts don't have to be painful. Replicache provides an intuitive and powerful way to resolve conflicting writes. Most times you won't even realize you're doing it.

Icon conveying consistency.

Correct

Replicache provides Causal+ Consistency, one of the strongest consistency models possible for synchronizing systems.

What people think of Replicache

“Realtime sync finally made easy and simple.”
Guillermo Rauch
Vercel CEO, Next.js creator
“I’m very bullish on Replicache … it’s incredibly hard to build sync.”
Jori Lallo
Linear Co-founder
"Unsettlingly fast. And the productivity is insane."
David Peek
Co-founder, estii.com
"No way I could have made as good a product without Replicache."
Chad Burggraf
Founder of assetbots.com
"The design of Replicache is correct and serious apps need it."
Alex Russell
Microsoft Edge Program Manager
"Replicache makes everything fast … what a joy."
Cindy Wu
Founder, Jelly Labs
"I love the programming model. The pairing with React is perfect."
Malte Ubl
Chief Architect, Vercel
“Absurdly easy. Replicache handles all the hard stuff.”
Simon Willison
Django Co-creator, Datasette Creator

Pricing

Replicache is free to use for non-commercial projects, and for companies with < $200k revenue and < $500k in funding.

For other commercial projects, the first two months are free, and then we charge based on the number of monthly active profiles.

Monthly active browser profiles
< 1k
< 10k
< 100k
100k -
Price (per month)
$500
$1,250
$3,000
Support
Shared
Dedicated
Dedicated
Dedicated

Get started now

The easiest way to start is to clone our starter app. This sets up a fully functioning app using NextJS, TypeScript, and Postgres.

Copy
$ npx degit rocicorp/replicache-todo my-app

See the documentation for details on setting up the starter app.

Contact us

Thanks for reading about Replicache. We would be happy to answer more questions. You can contact us by email, on Twitter, or on Discord.

You can also learn more about Rocicorp, the company behind Replicache at rocicorp.dev.