Oragono
ircv3-ideas | Oragono | |
---|---|---|
2 | 20 | |
46 | 2,153 | |
- | 1.2% | |
10.0 | 8.3 | |
about 5 years ago | 17 days ago | |
Go | ||
- | MIT License |
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.
ircv3-ideas
-
Matrix 2.0: How weβre making Matrix go voom
> "At least as standard" how?
There are 8 people who vote on changes to the Matrix spec (the Spec Core Team), 7 of which are Element employees (including Matthew, Element's CEO). Element also controls the development of clients and servers used by the large majority of users in the public federation.
> A substantial portion of the IRC comunity is actively hostile to the IRCv3 extensions, and in some cases prefer incompatible implementations of the same functionality; Matrix has nothing like that going on.
But any IRC client will work fine on any IRC server, and they can connect to various servers with different implementations.
On Matrix, clients (generally) can only connect to one homeserver at a time; which forces them to converge on following exactly the same spec. And if your server differs ever so slightly from the other ones in how it implements some parts of the spec (room consensus), then it can be split-brained from the rest of the federation. Instead, changes to the room consensus are done by pushing new room versions, and each server implementation needs to explicitly support it or they can't join it. This means Synapse devs (which are a majority of Element employees) get to decide what room versions can get traction.
It is not uncommon for people in the Matrix community to complain about this and Element keeping specs in limbo, and PRs to the flagship clients being stuck in "design review tar".
> And there seem to be more visibly independent implementations of Matrix than IRCv3.
Clients, maybe, at least in the number of implementation. It's hard to find stats of this, but I feel that >95% of people in the public federation use Element even in tech-y rooms; IRC has a healthier mix of major clients (weechat, irssi, IRCCloud, Hexchat, KiwiIRC, The Lounge each have >5% of desktop/web users). But I admit that's just my very subjective point of view.
In terms of servers, Matrix has three open source ones as far as I know: Synapse (controlled by Element), Dendrite (controlled by Element, and almost on par with Synapse according to https://arewep2pyet.com/ ), and Conduit. Based on https://gitlab.com/famedly/conduit/-/milestones/3 , Conduit seems to be far from implementing the spec yet (eg. it doesn't seem to support leaving rooms or respecting history visibility).
> things like: server-side history extensions tended to mess up my client's history implementation (I'd end up with multiple copies of the same messages in my local logs, often with the wrong timestamps)
You can use https://ircv3.net/specs/extensions/message-ids to deduplicate them.
> And if you're in a conversation where people are using embedded gifs, then fundamentally you'll always be a second-class citizen if you're trying to participate in that with a client that can't display embedded gifs.
A conversation where people where people are using embedded gifs will exclude me regardless of client, because they are too distracting. At least on IRC I can expect people not to do it too much, and use words or emojis instead of reaction gifs.
> SSO access control; you just can't do that in a nice way if the client doesn't support it
That's a fair point; IRC is made by hobbyists more than companies, so that's not surprising. There is some discussion around it though: https://github.com/ircv3/ircv3-ideas/issues/74 and Sourcehut is sponsoring implementation (https://emersion.fr/blog/2022/irc-and-oauth2/).
- Ergo β modern IRC server written in Go
Oragono
- IRC Is the Only Viable Chat Protocol
- Ergo: Erlang/OTP Implemented in Golang
- IRCv3 2022 Spec round-up
- How Discord supercharges network disks for extreme low latency
-
Chat app to allow messaging between my daughter and I?
You could also go IRC. Ergo server is simple (https://github.com/ergochat/ergo) and there are clients for phones. Text only which maybe is ok.
-
Hacker News top posts: Jun 22, 2022
Ergo β modern IRC server written in Go\ (70 comments)
- Ergo β modern IRC server written in Go
What are some alternatives?
The Lounge - π¬ β Modern, responsive, cross-platform, self-hosted web IRC client
InspIRCd - A modular C++ IRC server (ircd).
element-x-android - Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose
ngircd - Free, portable and lightweight Internet Relay Chat server
convos - Convos :busts_in_silhouette: is the simplest way to use IRC in your browser
znc-push - Push notification service module for ZNC
Convos - Convos :busts_in_silhouette: is the simplest way to use IRC in your browser [Moved to: https://github.com/convos-chat/convos]
element-meta - Shared/meta documentation and project artefacts for Element clients
Robust IRC - RobustIRC - an IRC network without netsplits, implemented in Go using the Raft consensus algorithm
ircv3-specifications - IRCv3 specifications | Roadmap: https://git.io/IRCv3-Roadmap | Code of conduct: http://ircv3.net/conduct.html
Weechat - The extensible chat client.