Loading video...

Video Failed to Load

Go Home

2 years, YC, 5 team members, and 2000 commits later: Instant is now open source!

365,533 views • 1 year ago •via X (Twitter)

11 Comments

Stopa's profile picture
Stopa1 year ago

Instant is modern Firebase [1]. You write relational queries in the shape of the data you want and Instant handles all the data fetching, permission checking, and offline caching. Here's the code: [1] @JamesTamplin backs us

Stopa's profile picture
Stopa1 year ago

We also support ephemeral updates, like cursors, or who's online, and ship with four SDKs: Javascript, React, React Native, and Node. How does it look? Here's a barebones chat app in about 10 lines:

Stopa's profile picture
Stopa1 year ago

We built Instant because writing web apps today is full of schleps. Just basic CRUD: models, endpoints, stores, and optimistic updates. Try multiplayer, and you get stateful servers. Support offline mode, and you think about IndexedDB. It doesn't have to be like this

Stopa's profile picture
Stopa1 year ago

In 2021, we realized that these schleps are actually database problems problems in disguise! If you had a database on the client, you wouldn't need to think about stores, selectors, endpoints, or local caches: just write queries. If these queries were multiplayer by default, you wouldn't have to worry about stateful servers. And if your database supported rollback, you'd get optimistic updates for free.

Stopa's profile picture
Stopa1 year ago

So we built Instant. Instant gives you a database you can use in the client, so you can focus on what’s important: building a great UX for your users, and doing it quickly.

Stopa's profile picture
Stopa1 year ago

How does it all work? At a high level, we're a relational sync engine. Our architecture is inspired by Asana's Luna, Figma's LiveGraph, and Datomic. More details on the github:

Stopa's profile picture
Stopa1 year ago

Under the hood, we store all user data as triples in one big Postgres database. A multi-tenant setup lets us offer a free tier that never pauses.

Stopa's profile picture
Stopa1 year ago

Want to get started? We built a pretty cool demo for you: you can try Instant without even signing up! Check it out:

Samuel (not Sam) Stroschein's profile picture
Samuel (not Sam) Stroschein1 year ago

> If you had a database on the client, you wouldn't need to think about stores, selectors, endpoints, or local caches: just write queries. How does instant differ from running sqlite or pglite on your client with a sync engine like electricsql?

Jarred Sumner's profile picture
Jarred Sumner1 year ago

congrats!

Stopa's profile picture
Stopa1 year ago

Thank you Jarred! We're big fans of bun; I love seeing how fast you guys ship.

Related Videos