Matrix-CRDT
matrix-doc
Matrix-CRDT | matrix-doc | |
---|---|---|
10 | 71 | |
712 | 749 | |
- | - | |
1.0 | 9.5 | |
about 1 month ago | about 2 years ago | |
TypeScript | HTML | |
Mozilla Public License 2.0 | Apache License 2.0 |
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
- Help - chat server
-
Feature request: online collaboration
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
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?
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.
- Show HN: Matrix-CRDT – real-time collaborative apps using Matrix as backend
- Matrix-CRDT – real-time collaborative apps using Matrix as backend
-
Hacker News top posts: Jan 18, 2022
Show HN: Matrix-CRDT – real-time collaborative apps using Matrix as backend\ (2 comments)
matrix-doc
-
Are group video and audio calls encrypten?
Group voice and video calls are not E2EE, and use Jitsi, but this is expected to change with Native Group VoIP Signalling.
-
So there's no online messaging service that's private, anonymous and secure?
DMs in Matrix are always E2EE, and MSC3401: Native Group VoIP Signalling means there should be E2EE in group calls.
- Element (Matrix) adds video/voice rooms
-
Native Matrix VoIP with Element Call
From my perspective, the really exciting thing about this that it works equally well in mobile web browsers as well as desktop web - clicking on a link on Mobile Safari should Do The Right Thing without having to install anything.
Moreover, because it's built on Matrix, MSC3401 (https://github.com/matrix-org/matrix-doc/blob/matthew/group-...) means that we'll finally have decentralised cascading video/voice conferences once the SFU (selective forwarding unit) component is added into the mix. So, for instance, users on the same homeserver will get their video feeds relayed locally with minimal latency... and then users on another remote homeserver will also get mixed locally with minimal latency, trunking the two together. If the link dies or one homeserver dies, the conference will keep going - i.e. precisely the same semantics as normal Matrix.
- Introducing Native Matrix VoIP with Element Call!
-
Signal is more secure than Telegram from my understanding, but the fact that it needs a phone number makes me wary
What metadata does Matrix protect? Encrypted state events still aren't a thing for example https://github.com/matrix-org/matrix-doc/pull/3414 This means that server admins know what groups a given account is a member of, private or not, and they also have a general idea of what the topic of said groups are, even if they're encrypted. This would be a problem for groups about sensitive personal medical issues, like a private HIV survivors or Alcoholics Anonymous group.
-
For those suggesting Guilded, Revolt, Signal, or what ever else as Discord alternatives, consider this potential problem inherent in those alternatives, even if two of them are open source
The protocol itself is flexible and can be changed through spec change proposals on their Github. They're currently working on implementing threads, and they recently implemented spaces, which functionally combine the concept of Discord servers and server folders. They can also be nested.
-
How do I make a room with voice chat where people can leave and join without request like discord?
At the moment this only works with Jitsi. It will be implementet soon with MSC3401
-
Discord is a black hole for information
Something we're trying to do about this on the Matrix side is MSC2716 (https://github.com/matrix-org/matrix-doc/blob/matthew/msc271...) - the ability to import archives of existing content into Matrix, and thus 'lock it open' and decentralise it for posterity: as long as one of the servers participating in that room stays alive (and the room is set up with infinite data retention, obviously) then the conversation will live on forever. (That MSC is also well worth a look for those interested in how Matrix works under the hood; MSC2716 was a surprisingly tricky problem to solve but it's basically finished now!).
Our first step will be to import all of Gitter's archives into Matrix - but we're then planning to add MSC2716 to all the existing Matrix bridges so that folks can use it to liberate chat history from Discord and Slack if desired, and avoid it getting paywalled/siloed/lost/held-hostage forever. We're also expecting to do USENET, mailing lists, forums, public IRC channels which have explicitly opted into logging... and generally archive as much possible in an open decentralised fashion, and ensure that gatekeepers can't lock up and blackhole info going forwards. After all, information longs to be free :)
-
Matrix v1.2 Specification
by 'broken links' i guess you mean https://github.com/matrix-org/matrix-doc/issues/3628? it's a bug on the new spec website; we're working on it.
What are some alternatives?
syncthing-android - Wrapper of syncthing for Android.
matterbridge - bridge between mattermost, IRC, gitter, xmpp, slack, discord, telegram, rocketchat, twitch, ssh-chat, zulip, whatsapp, keybase, matrix, microsoft teams, nextcloud, mumble, vk and more with REST API (mattermost not required!)
y-crdt - Rust port of Yjs
Mumble - Mumble is an open-source, low-latency, high quality voice chat software.
y-webrtc - WebRTC Connector for Yjs
Synapse - Synapse: Matrix homeserver written in Python/Twisted.
Radicale-DecSync - Radicale storage plugin to add synchronization using DecSync
Mastodon - Your self-hosted, globally interconnected microblogging community
mute - a scalable collaborative document editor with CRDT, P2P and E2EE
Ferdi - Ferdi is a free and opensource all-in-one desktop app that helps you organize how you use your favourite apps
matrix-room-element
matrix-docker-ansible-deploy - 🐳 Matrix (An open network for secure, decentralized communication) server setup using Ansible and Docker