matrix-spec-proposals VS Matrix-CRDT

Compare matrix-spec-proposals vs Matrix-CRDT and see what are their differences.

matrix-spec-proposals

Proposals for changes to the matrix specification (by matrix-org)

Matrix-CRDT

Use Matrix as a backend for local-first applications with the Matrix-CRDT Yjs provider. (by YousefED)
Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
matrix-spec-proposals Matrix-CRDT
48 10
948 713
2.3% -
7.5 1.0
6 days ago about 1 month ago
TypeScript
Apache License 2.0 Mozilla Public License 2.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-spec-proposals

Posts with mentions or reviews of matrix-spec-proposals. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-14.
  • The Matrix Trashfire
    7 projects | news.ycombinator.com | 14 Feb 2024
    Not only are they actually very closely linked, in that Element operates matrix.org, but to a new user (told to try Matrix -- what is this Element thing?) there's no difference.

    I onboarded a family member onto my Matrix server with FluffyChat as the client. This person is a power user, fairly technical, yet still refers to the chat as "FluffyChat" and although I've explained several times that choosing FluffyChat was maybe a mistake and they should use Element, it never seems to really click that multiple clients are possible.

    And really, they aren't possible. They have different subsets of features.

    If you want to see a trash can fire, just try to follow the discussion for adding custom emoji to Matrix: https://github.com/matrix-org/matrix-spec-proposals/pull/195...

    it's been going on for years. It's a feature the competitors have had for half a decade, as long as this discussion has been ongoing. I've been watching this issue for half a decade thinking "surely they'll decide on something" but mostly all I've been convinced of is this: Matrix is design by committee in all of the worst aspects and at every level of design. If anything gets done at all, it's a convoluted mess, and it's a miracle that it even happens.

    I wish community software developers would focus their attention.. somewhere else.

  • Bluesky and the at Protocol
    3 projects | news.ycombinator.com | 6 Feb 2024
    So Matrix also has account portability (almost) - https://github.com/matrix-org/matrix-spec-proposals/blob/keg... and https://github.com/devonh/matrix-spec-proposals/blob/cryptoI..., implemented in Dendrite. Unfortunately dev is paused on it currently thanks to lack of $ though.

    The AP approach (prioritising portable identities over portable account data) is cute though, and perhaps we should have prioritised that as an alternative to fullblown cryptographic IDs & account portability.

  • Non-profit Matrix.org Foundation seems to be moving funds to for-profit Element
    7 projects | news.ycombinator.com | 19 Nov 2023
    Luckily, it doesn't matter what individuals expect. There is written documentation on what the foundation is supposed to do or not to do: https://github.com/matrix-org/matrix-spec-proposals/blob/mai...

    Notably, "Code Core Team members must arrange their own funding for their time", which I understand as such that the Foundation does not pay directly the developers (same as other standards organizations like IETF).

    Main tasks of Matrix.org Foundation is maintaining the spec, documentation, owning IP, promotion and the matrix.org home server. The home server is "generously hosted" by UpCloud (i.e. is not using New Vector EMS), at least according to the matrix.org website.

    Looking again at MSC1779, I noticed it says that one function of The Matrix.org Foundation is "Owns the copyright of the reference implementations of Matrix (i.e. everything in https://github.com/matrix-org). By assigning copyright to the Foundation, it’s protected against New Vector ever being tempted to relicense it." That protection apparently wasn't very effective, but also notably, New Vector and their leadership clearly have shown to not stand behind the goals of the Foundation. As the leadership of New Vector is also part of the leadership of the Foundation, I see some huge potential for COI here.

  • Possible to set a message retention period?
    1 project | /r/matrixdotorg | 4 Oct 2023
  • Matrix 2.0: The Future of Matrix
    13 projects | news.ycombinator.com | 21 Sep 2023
    The main remaining Nebuchadnezzar issue is mitigating server-controlled group membership. The first step has been to kill off the 1st gen E2EE implementations, which were responsible for the implementation vulns found by RHUL - and we should hopefully conclude that next week by moving everything into the matrix-rust-sdk crypto create implmentation: https://github.com/vector-im/element-web/issues/21972#issuec... is the tracker.

    Then, we can address the harder server-controlled group membership issue in one place. First step will be to improve device verification & trust so that trust is the default, not the exception, to make it easier to spot and warn about unexpected devices in the room. The full solution is then either MSC3917 (https://github.com/matrix-org/matrix-spec-proposals/blob/fay...) - or potentially to switch everything to MLS.

    We're working on MLS anyway in parallel to RHUL mitigation work; you can see the progress at https://arewemlsyet.com, and it's looking good.

    I'm guessing you're not interested in doing a podcast on "yay we converged our crypto implementations on a single robust Rust implementation so we can fix the remaining bugs in one place", but as soon as the server-controlled group membership thing is solved we'll be in touch. Work has also gone much slower than hoped on this, thanks to the joys of funding open source.

  • Conduit: Simple, fast and reliable chat server powered by matrix
    4 projects | news.ycombinator.com | 30 Jul 2023
    https://github.com/matrix-org/matrix-spec-proposals/blob/keg... is how we’re doing it, and it’s being implemented currently in Dendrite.
  • Databag – tiny self-hosted federated messenger for the decentralized web
    3 projects | news.ycombinator.com | 22 Jul 2023
    Matrix already has key-based identity in the works at https://github.com/matrix-org/matrix-spec-proposals/blob/keg... (and implemented in Dendrite at https://github.com/matrix-org/dendrite/pulls?q=is%3Apr+is%3A...). Matrix is set up to let folks go wild and change fundamentals like this; basically every Matrix Spec Change (MSC) is a small fork, which then gets merged into the main spec if it can be proven to work well in the wild.
  • Discord Is Not Documentation
    5 projects | news.ycombinator.com | 16 Jul 2023
    Gitter seems to have moved to being a Matrix instance (or maybe it always has? it didn't look like Matrix when I used it circa 2016), but matrix feels half-baked and is just a bunch of hacks put together. For example

    - Can't "mark all as read" on a space. probably because rooms within a space are only tangentially related,

    - No custom emojis or sticker packs (their proposal for this is to create rooms to house custom emojis/sticker packs[0])

    Not a great bet to go to keybase with the Zoom acquisition https://news.ycombinator.com/item?id=28814210

    0: https://github.com/matrix-org/matrix-spec-proposals/pull/195...

  • The problem with federated web apps
    5 projects | news.ycombinator.com | 1 Jul 2023
    We’re currently working on account portability (https://github.com/matrix-org/matrix-spec-proposals/pull/401...) and experimenting with glueing bluesky style DIDs onto it (so as to provide DMs for bluesky via Matrix, should they want them)
  • 2FA on matrix.org
    1 project | /r/matrixdotorg | 11 Jun 2023
    slow moving but there is discussions https://github.com/matrix-org/matrix-spec-proposals/pull/1998

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)

What are some alternatives?

When comparing matrix-spec-proposals and Matrix-CRDT you can also consider the following projects:

whatsapp - A Matrix-WhatsApp puppeting bridge

syncthing-android - Wrapper of syncthing for Android.

matrix-room-element

y-crdt - Rust port of Yjs

matrix-synapse-shared-secret-auth - Shared Secret Authenticator password provider module for Matrix Synapse

y-webrtc - WebRTC Connector for Yjs

element-call - Group calls powered by Matrix

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

nnnoiseless - Recurrent neural network for audio noise reduction

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

matrix-js-sdk - Matrix Client-Server SDK for JavaScript