Live data from Hacker News

Ergo Chat – A modern IRC server written in Go

github.com

11–20 of 163 posts

Re: Ergo Chat – A modern IRC server written in Go

#11
post #9

It feels really nice to see stuff like this while the most of the people think Slack, Discord and a few others are the only choices. I recently went through the hassle of deciding on something small for my family + company circle. Mainly considered XMPP and Matrix, and went with Matrix. Didn't know there was such a thing as "always-on" on IRC tho.

Have you had any issue with messages/notifications not be sent/received with Matrix? I wanted to try Matrix for friends and family, but either I would never get the message until I opened the app, or I'd get the notification but my phone wouldn't vibrate. Eventually settled on XMPP with Conversations on Android.

Re: Ergo Chat – A modern IRC server written in Go

#12

Earlier quoted context omitted.

your family and friends care enough to download and set this up?

why would they need to download and setup a server? can't they just log in to OP's with the client of their choice?

i am asking about download the client and even registering and entering a password

Re: Ergo Chat – A modern IRC server written in Go

#13
post #2

I've been running Ergo for the past year for my friends/family chat. I went this route because of the ease of hosting, very low resource requirements and a protocol and codebase that I feel I can understand and debug if needed. The v3 chathistory support and the always-on[1] multi-client[2] features paired with modern clients (like Goguma) go a long way at providing a modern chat environment. Most others on the serve…

your family and friends care enough to download and set this up?

The last line of OP: "The built-in websocket support is another key feature for me since it lets me to provide a web client just by serving some static files (I use Gamja for this)."

https://github.com/Libera-Chat/gamja

Re: Ergo Chat – A modern IRC server written in Go

#14
post #9

It feels really nice to see stuff like this while the most of the people think Slack, Discord and a few others are the only choices. I recently went through the hassle of deciding on something small for my family + company circle. Mainly considered XMPP and Matrix, and went with Matrix. Didn't know there was such a thing as "always-on" on IRC tho.

Have you had any issue with messages/notifications not be sent/received with Matrix? I wanted to try Matrix for friends and family, but either I would never get the message until I opened the app, or I'd get the notification but my phone wouldn't vibrate. Eventually settled on XMPP with Conversations on Android.

Not really, I didn't have any delivery-related issues, and didn't get any complaints from other people as well. I have mixed feelings towards Matrix due to;

1. The only stable and maintained implementation is "matrix-synapse" and it is written in Python.

2. The most commonly used client is "element", and it is governed by the same people. So it feels we are the mercy of a single company.

I wanted hard to go with a more established protocol like XMPP but failed to get a server running properly :)

Re: Ergo Chat – A modern IRC server written in Go

#15

Earlier quoted context omitted.

why would they need to download and setup a server? can't they just log in to OP's with the client of their choice?

i am asking about download the client and even registering and entering a password

Although I understand your point, and certainly have some friends that would feel like they're hacking the gibson connecting to an irc server, is Discord et. al really that much different?

Re: Ergo Chat – A modern IRC server written in Go

#16

Earlier quoted context omitted.

why would they need to download and setup a server? can't they just log in to OP's with the client of their choice?

i am asking about download the client and even registering and entering a password

Yes, they just download the app and enter the server name, username and pw. It's a private server and I manage the accounts so there is no registration step. And they only need to worry about any of this when they get a new phone.

Re: Ergo Chat – A modern IRC server written in Go

#17
post #7
post #2

I've been running Ergo for the past year for my friends/family chat. I went this route because of the ease of hosting, very low resource requirements and a protocol and codebase that I feel I can understand and debug if needed. The v3 chathistory support and the always-on[1] multi-client[2] features paired with modern clients (like Goguma) go a long way at providing a modern chat environment. Most others on the serve…

>(like Goguma)(I use Gamja for this). Is everything related to potatoes lol?

Yep, both are by the same author (emersion) and there is definitely a running theme in the project names.

Re: Ergo Chat – A modern IRC server written in Go

#18
post #9

It feels really nice to see stuff like this while the most of the people think Slack, Discord and a few others are the only choices. I recently went through the hassle of deciding on something small for my family + company circle. Mainly considered XMPP and Matrix, and went with Matrix. Didn't know there was such a thing as "always-on" on IRC tho.

> Didn't know there was such a thing as "always-on" on IRC tho.

It's a server feature and might be unique to Ergo. It's a per-user setting (with a global default) and when it's on the user always appears to be online so you can type at them any time like you would with other DM systems. The v3 chathistory support ensures that they don't miss messages. For clients that don't support chathistory the server can replay any unseen messages.

It's a lot like what bouncers provide but integrated and very easy to enable for everybody so no extra steps required for my users.

Re: Ergo Chat – A modern IRC server written in Go

#19
post #14

Earlier quoted context omitted.

Have you had any issue with messages/notifications not be sent/received with Matrix? I wanted to try Matrix for friends and family, but either I would never get the message until I opened the app, or I'd get the notification but my phone wouldn't vibrate. Eventually settled on XMPP with Conversations on Android.

Not really, I didn't have any delivery-related issues, and didn't get any complaints from other people as well. I have mixed feelings towards Matrix due to; 1. The only stable and maintained implementation is "matrix-synapse" and it is written in Python. 2. The most commonly used client is "element", and it is governed by the same people. So it feels we are the mercy of a single company. I wanted hard to go with a mo…

Not sure if you tried prosody[0], but I found it rather powerful and simple to configure, including multiuser chat(muc) and peering. It's written in lua and has a module system so it's easy to extend. In particular I used the dovecot auth module[1] so users could login with their email credentials and I could manage a single user repo.

0. https://prosody.im/

1. https://modules.prosody.im/mod_auth_dovecot

Re: Ergo Chat – A modern IRC server written in Go

#20
post #19
post #14

Earlier quoted context omitted.

Not really, I didn't have any delivery-related issues, and didn't get any complaints from other people as well. I have mixed feelings towards Matrix due to; 1. The only stable and maintained implementation is "matrix-synapse" and it is written in Python. 2. The most commonly used client is "element", and it is governed by the same people. So it feels we are the mercy of a single company. I wanted hard to go with a mo…

Not sure if you tried prosody[0], but I found it rather powerful and simple to configure, including multiuser chat(muc) and peering. It's written in lua and has a module system so it's easy to extend. In particular I used the dovecot auth module[1] so users could login with their email credentials and I could manage a single user repo. 0. https://prosody.im/ 1. https://modules.prosody.im/mod_auth_dovecot

Yep, Prosody was one of my failed attempts :P I am running everything on a kubernetes cluster, so a maintained helm chart is the first thing I check when running something. I didn't have much luck with XMPP servers with this.

That IMAP auth trick is really awesome thinking BTW, kudos!

Post reply on HN