InstantDB differences from Convex
I'm working my way through Convex tutorial and it's been great. I can't wait to let convex handle the hard stuff for me!
btw I just saw this InstantDB thing that looks a lot like Convex to me: https://news.ycombinator.com/item?id=41322281
Does anyone know about the differences?
nezaj
Show HN: InstantDB – A Modern Firebase
Hey there HN! We’re Joe and Stopa, and today we’re open sourcing InstantDB, a client-side database that makes it easy to build real-time and collaborative apps like Notion and Figma.Building modern apps these days involves a lot of schleps. For a basic CRUD app you need to spin up servers, wire up endpoints, integrate auth, add permissions, and ...
Hacker News
4 Replies
InstantDB is a bit more like Firebase: you need to set up permissions on documents and make make changes locally that get synced to the server and other clients. It's a cool model that works best for simple documents that are synced between clients. It's tricker to enforce authoritative server logic. Things work well in the model until they don't; exactly where that point is up for debate. https://x.com/typeofalex/status/1826723215064138112 describes some of these (not about InstantDB in particular, but the kinds of things to worry about).
typeofalex (@typeofalex) on X
@schickling @linear I’m traveling right now but will write more on Saturday :) But for now:
1. Data modeling (you need a structure that supports synchronization)
2. Handling long offline syncs
3. Data recovery/ repair if syncing fails
Twitter
It's very cool though! If you can make your application fit this model, similar to Firebase, it's a cool way to develop. You definitely want to understand the data model well though, and ideally be able to modify your product requirements to fit the architecture. For non-toy apps this often isn't an option.
also anytime anyone says "last write wins" you should proceed very cautiously. this isn't a workable approach to conflict beyond very basic apps
thank you Tom and Jamie! I'm not well verse in DB or even Firebase but this is great to know Convex got me covered