WatermelonDB is a reactive & asynchronous JavaScript database. Minimongo has no observable queries or changestream. Minimongo has different storage adapters for IndexedDB, WebSQL, LocalStorage and SQLite.Ĭompared to RxDB, Minimongo has no concept of revisions or conflict handling, which might lead to undefined behavior when used with replication or in multiple browser tabs. Similar to MongoDB, it stores data in documents inside of collections and also has the same query syntax. Minimongoįorked in Jan 2014 from meteorJSs' minimongo package, Minimongo is a client-side, in-memory, JavaScript version of MongoDB with backend replication over HTTP. There are some projects that might do this, but all are unmaintained. While testing, it has proven to be impossible to make a meteor app offline first capable. Meteor uses MongoDB in the backend and can replicate with a Minimongo database in the frontend. Meteor is not a library but a whole framework with its own package manager, database management and replication protocol.īecause of how it works, it has proven to be hard to integrate it with other modern JavaScript frameworks like angular, vue.js or svelte. Meteor (since 2012) is one of the oldest technologies for JavaScript realtime applications. You can even replicate Firestore to RxDB with the Firestore Replication Plugin. RxDB can replicate with any self hosted CouchDB server or custom GraphQL endpoints. The biggest difference to RxDB is that firebase products are only able to be used on top of the Firebase cloud hosted backend, which creates a vendor lock-in. The conflict resolution strategy of firestore is always last-write-wins which might or might not be suitable for your use case. The big difference is that it behaves more like a 'normal' database that stores data as documents inside of collections. The firestore is the successor to the realtime database. The firebase realtime database stores data as a big unstructured JSON tree that is replicated between clients and the backend. It has to be mentioned that in this context, "realtime" means "realtime replication", not "realtime computing". The firebase realtime database was the first database in firestore. The Realtime Database and the Cloud Firestore. Firebase has many features and products, two of which are client side databases. This list should be seen as an entrypoint for your personal evaluation of which tool could work for your project.įirebase is a platform developed by Google for creating mobile and web applications. However, I will list up some projects that RxDB is often compared with, even if it only makes sense for some use cases. So it makes only sense to list similar projects as alternatives, not just any database or JavaScript store library. RxDB is an observable, replicating, offline first, JavaScript database. If you disagree with anything or think that something is missing, make a pull request to this file. Remember that you are reading this inside of the RxDB documentation, so everything is opinionated. To give you an augmented view over the topic of client side JavaScript databases, this page contains all known alternatives to RxDB. Alternatives for realtime offline-first JavaScript applications
0 Comments
Leave a Reply. |