Matrix-CRDT VS datahike

Compare Matrix-CRDT vs datahike and see what are their differences.

Matrix-CRDT

Use Matrix as a backend for local-first applications with the Matrix-CRDT Yjs provider. (by YousefED)

datahike

A durable Datalog implementation adaptable for distribution. (by replikativ)
SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
Matrix-CRDT datahike
10 12
712 1,581
- 0.4%
1.0 5.9
about 1 month ago 2 days ago
TypeScript Clojure
Mozilla Public License 2.0 Eclipse Public License 1.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Matrix-CRDT

Posts with mentions or reviews of Matrix-CRDT. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-04-29.
  • Help - chat server
    3 projects | /r/node | 29 Apr 2023
  • Feature request: online collaboration
    3 projects | /r/scrivano | 26 Aug 2022
    Another interesting and peculiar approach would be to use Matrix, which is chat and collaboration framework that is completely decentralised. Essentially, in this way Scrivano would translate pen input into chat messages that are sent to other users who receive them in real time. One advantage of this approach is that the collaborative notes will remain accessible even after you go offline and multiple users will be able to collaborate on a single note just like they would in a group chat. There are already apps that make use of this idea (e.g. see Matrix-CRDT or TheBoard), but when I tried this it last time didn't work very well and I'm not sure whether this is a limitation of the service or of the specific implementation I tried.
  • Libli, tiny matrix client for building public libraries
    3 projects | news.ycombinator.com | 7 Mar 2022
    1. This is complicated. There is a notion of power_level, which you can set to different events. So you can set "send message" to power level 30, and any user with a "power level" of 30 or more will be able to send messages. Those power levels (and the required level to send an event) are granted by the room creator.

    There is, however, no power_level associated with reading messages. I think you need to be joined to a room to send messages, and to be joined, you need to be able to read messages by design. So the "inbox" model doesn't seem representable to me. But maybe I'm missing something!

    2. Yes. Events can refer to prior events to modify them, e.g. you can "edit" a previous message by appending a new message of type "msg.edit" (made up type, not sure what the exact it), specifying the old message id, and the new text. For matrix-based CRDT, see Matrix-CRDT[1], a Yjs backend using Matrix.

    [1]: https://github.com/YousefED/Matrix-CRDT

  • E2EE Social Media?
    3 projects | /r/signal | 15 Feb 2022
    Have you checked out Matrix? It's specifically a protocol (they've used OpenWhisper) but people are using it like a social media platform (specifically like IRC). There's even people doing google docs like services. I'm going to link a HN thread from that last link because others are just talking about Matrix and that'll likely be helpful to you.
  • Matrix-CRDT: Use Matrix as a backend for local-first applications with the Matrix-CRDT Yjs provider.
    1 project | /r/selfhosted | 18 Jan 2022
  • Show HN: Matrix-CRDT – real-time collaborative apps using Matrix as backend
    1 project | /r/hackernews | 18 Jan 2022
    8 projects | news.ycombinator.com | 18 Jan 2022
  • Matrix-CRDT – real-time collaborative apps using Matrix as backend
    1 project | /r/Rad_Decentralization | 18 Jan 2022
    1 project | /r/Boiling_Steam | 18 Jan 2022
  • Hacker News top posts: Jan 18, 2022
    2 projects | /r/hackerdigest | 18 Jan 2022
    Show HN: Matrix-CRDT – real-time collaborative apps using Matrix as backend\ (2 comments)

datahike

Posts with mentions or reviews of datahike. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-10-31.
  • The Ten Rules of Schema Growth
    2 projects | news.ycombinator.com | 31 Oct 2023
    Datahike [0] provides similar functionality to datomic and is open source. It lacks some features however that Datomic does have [1].

    [0]: https://github.com/replikativ/datahike

  • Is Datomic right for my use case?
    3 projects | /r/Clojure | 9 Jul 2023
    You can also consider other durable Datalog options like datahike or datalevin which can work either as lib (SQLite style) or in a client-server setup; if you want to play with bi-temporality XTDB is a rock solid option with very good support and documentation.
  • datahike for reagent SPA?
    2 projects | /r/Clojure | 27 Apr 2023
  • Open source Datomic?
    3 projects | /r/Clojure | 1 Nov 2022
    Check https://github.com/replikativ/datahike
  • Max Datom: Interactive Datomic Tutorial
    3 projects | news.ycombinator.com | 22 Apr 2022
    Oh really interesting. I didn't know about that. I was actually going threw the old Mendat code base and was considering using that.

    I would really like a pure Rust version of Datomic for embed use cases.

    There is all also Datahike, that is going in that direction too. It is maintained and actively developed.

    https://github.com/replikativ/datahike

  • Show HN: Matrix-CRDT – real-time collaborative apps using Matrix as backend
    8 projects | news.ycombinator.com | 18 Jan 2022
    Having an Datomic like store backed by something like this.

    https://github.com/replikativ/datahike

    Is an Open Source variant of Datomic.

    Lambdaforge wants to eventually have this work with CRDTs.

    Using the Matrix ecosystem for this is quite interesting as it solves many problems for you already.

  • Ask HN: Why are relational DBs are the standard instead of graph-based DBs?
    7 projects | /r/programming | 3 Oct 2021
    Unlike some other commenters, I agree that graph models are usually a better fit for most data than relational models. There's been some interesting work in recent years developing this idea: in the Clojure world there's Datomic, XTDB, and a host of competitors, all of which build on work from Semantic Web/SPARQL/triplestores and logic programming. Some are even intended to be used as primary datastores: they support some amount of schema and constraints, have well-defined consistency and ACID guarantees, etc. This makes them unlike graph databases like Neo4J and others, which fill an architectural role more like Elasticsearch as a read-optimization tool. Here's an interesting talk making a case for triple-based databases.
  • Datascript + automatic persistency
    3 projects | /r/Clojure | 12 Jul 2021
    Have a look at https://github.com/replikativ/datahike and https://github.com/replikativ/datahike-postgres
  • Clojure Datalog Databases
    6 projects | /r/Clojure | 6 Jun 2021
    There is now a datahike linux native image preview available: https://github.com/replikativ/datahike/releases/tag/preview
  • Functional Programming with B trees
    2 projects | /r/compsci | 20 May 2021
    And implemented as a full-on datastore queried via Datalog: https://github.com/replikativ/datahike

What are some alternatives?

When comparing Matrix-CRDT and datahike you can also consider the following projects:

syncthing-android - Wrapper of syncthing for Android.

xtdb - An immutable database for application development and time-travel data compliance, with SQL and XTQL. Developed by @juxt

y-crdt - Rust port of Yjs

datalevin - A simple, fast and versatile Datalog database

y-webrtc - WebRTC Connector for Yjs

datascript - Immutable database and Datalog query engine for Clojure, ClojureScript and JS

Radicale-DecSync - Radicale storage plugin to add synchronization using DecSync

rss-proxy - RSS-proxy allows you to do create an RSS or ATOM feed of almost any website, just by analyzing just the static HTML structure.

mute - a scalable collaborative document editor with CRDT, P2P and E2EE

asami - A graph store for Clojure and ClojureScript

matrix-room-element

terminusdb - TerminusDB is a distributed database with a collaboration model