
Dispatch: web-based IRC client in Go - buovjaga
https://github.com/khlieng/dispatch
======
gnarbarian
I've been using a similar client called thelounge for the past year and I
really love it.

[https://github.com/thelounge/thelounge](https://github.com/thelounge/thelounge)

It's a node based IRC client you can install on a server and then connect to
with a web browser.

It essentially turns IRC into slack/irc cloud, it has inline images/video, URL
prefetching, push notifications, themes and custom css, mobile support, and
allows you to idle indefinitely persisting your connection to your favorite
channels across numerous devices. You can even hook it into active directory
if you wanted.

~~~
jtreminio
Several months ago I switched from MacOS to Fedora.

Two things I really missed from MacOS that I thought didn't have a good
alternative in Linux were Colloquy and Sequel Pro.

The Lounge via Docker Container and
[https://applicationize.me/](https://applicationize.me/) :

    
    
        docker run --detach \
                --name thelounge \
                --publish 9100:9000 \
                --volume ~/.config/thelounge:/home/lounge/data \
                --env THELOUNGE_HOME=/home/lounge/data \
                --restart always \
                -u "$(id -u $USER):$(id -g $USER)" \
                thelounge/lounge:latest
    

solved my IRC itch, and it works even better than Colloquy.

Still haven't found anything that comes close to Sequel Pro, though.

~~~
gnarbarian
that's pretty slick, but you miss out on the best features (persistance/push
notifications) if you're running it locally in a docker container.

~~~
jtreminio
It connects to a ZNC server on DigitalOcean.

~~~
ajross
Why not run thelounge on your VM then?

~~~
mavidser
Maybe for speed. Local lounge installation would feel more like a desktop app.

~~~
xPaw
Having Lounge reconnect to ZNC every time you start the app neglects any speed
gains you'd have from running it locally. And it gives you overall a negative
experience because unread markers and other things are reset.

------
Cu3PO42
This seems like a promising project, but right now it still is lacking some
features that are very nice to have in my opinion:

* Colored nick-names

* Theme-ability, even if only through user-provided CSS overrides

* Nickname autocompletion when hitting tab, preferably with some logic such as "you talked to this user recently"

* A locked down mode in which only authorised users can connect

That said, I really like the fact that you can search the history right from
the client. Since I am not using this in production, maybe someone with more
experience can tell me about how well it scales?

Also I feel that the separation of channels and DMs with users is very
sensible.

I personally use The Lounge
([https://github.com/thelounge/thelounge](https://github.com/thelounge/thelounge))
for my web IRC needs, which solves my main issues outlined above, but doesn't
have searchable history nor separated users and channels (there might be a
setting for this that I haven't found yet).

~~~
MaxLeiter
What do you mean separated users and channels?

~~~
Cu3PO42
I should have been more clear about that. I meant a visual separation between
the channels I join in a network and the users in the same network that I open
DMs with.

I realize I can achieve this by hand, but I frequently join/leave channels and
open new DMs and it would just be a nice to have thing for it to happen
automatically.

So far it hasn't bothered me enough to actually open a feature request, so
take this with a grain of salt.

------
bitofhope
Would take a lot to make me abandon trusty irssi, but I welcome this. The
image of IRC seems tied to mIRC-era UI design and some attribute the current
state with competing proprietary chat programs to perceived user
unfriendliness of IRC, as if it's the protocol's fault the clients don't "look
modern"

------
hendry
Would like to get my colleagues on IRC, but a crucial element is missing which
Slack nails: _Copy link_

Conversations need to be able to referenced. Getting some logbot + archive
going is way too painful.

------
eat_veggies
I really like this! It's such a pretty client. Minor nitpick though:

The SSL checkbox shows up as two checkboxes (one regular, one fancy), the
regular one way out in the middle of nowhere:

[https://i.imgur.com/tFqN4HK.png](https://i.imgur.com/tFqN4HK.png)

If you don't have a large monitor to test it on, you can use Chrome's dev
tools to emulate a higher resolution.

~~~
adtac
Completely offtopic, but what DE/WM is that?

~~~
eat_veggies
I'm using i3-gaps and polybar. My GTK theme is Arc [0] and the paper icon set
[1]

My dotfiles are really disorganized, but here's my polybar config which I
copied from some reddit post:

[https://github.com/veggiedefender/dotfiles/blob/master/polyb...](https://github.com/veggiedefender/dotfiles/blob/master/polybar/config)

You'll need fontawesome 4 and material icons

[0] [https://github.com/horst3180/arc-theme](https://github.com/horst3180/arc-
theme)

[1] [https://snwh.org/paper](https://snwh.org/paper)

------
thomasfedb
It's quite amazing the longevity that IRC has enjoyed, still essential around
a lot of the OSS community. I know a lot of my Fedora questions are answered
on #fedora.

I'm often a little baffled when I try to get help with a project and it
doesn't have a chan on Freenode!

------
rplnt
Wasn't able to connect to freenode. SSL didn't work at all, then without SSL I
was "throttled" (few minutes later). So only one thing I can comment on is
that the connect form shouldn't be reset every time.

------
ishaanbahal
I don't know why the underlying language for the code is important in the
product description? Seems a little clickbait to me. Instead why not focus of
the UX you provide or the speed that you have. I just don't get why the
mention of GoLang is required, unless its a hobby project for someone learning
GoLang. I've seen a lot of these projects mentioning Rust or GoLang lately,
capitalising on their popularity, I get that Open Source projects help in
understanding the language and hacking around it, but repetitive projects also
do this! Is there some reason for it? Btw, I did like the UI, only ended up
with this error "Error: tls: oversized record received with length 20306" post
login.

~~~
IshKebab
The language is important. If I want to customise it for example it helps to
know that I know the language. Also it gives me a rough idea of how fast and
robust it will be.

Finally the language affects deployment. Given that it is Go I know it will be
trivial to cross-compile a static binary.

