selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

dispatch logo

Self-host dispatch

v0.7

Web-based IRC client you run as one Go binary

BetaOpen SourceMIT
docker run -p <http port>:80 -p <https port>:443 -v <path>:/data --restart unless-stopped -d khlieng/dispatch
Updated3 years ago
LanguageGo
Setup difficultyEasy
Stars
641
Ports
80 (HTTP listener for the web client), 443 (HTTPS listener, enabled by default)
Docker
khlieng/dispatch

What is dispatch?

dispatch is a web-based IRC client written in Go, aimed at people who want to keep their IRC sessions available from any browser on their own server. It supports searchable history, persistent connections, several networks and several users from one instance, DCC downloads, SASL and client certificates, and it can obtain HTTPS automatically through Let's Encrypt. The server is a single Go binary with no external dependencies, so it can be installed from prebuilt binaries for Windows, macOS and Linux, built with go get, or run from the khlieng/dispatch Docker image with data stored in a /data volume; a systemd unit example is provided in the project wiki, along with an Nginx reverse-proxy configuration. A public demo instance runs at dispatch.khlieng.com. Development activity on the repository last recorded a push in January 2023, with the most recent release being 0.7 from 2020.

Should you self-host dispatch?

dispatch scores 48/100 on selfhost.directory (how scoring works) and ranks #56 of 110 in Chat. It has 641 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is MIT-licensed and written mostly in Go.

Its closest alternative on selfhost.directory is Zulip (82/100, 26 133 stars). It scores higher overall, so compare the two before you pick. See dispatch vs Zulip side by side.

Features

  • Automatic HTTPS
  • Client Certificates
  • DCC file downloads
  • Live config reload
  • Multiple servers and users
  • Persistent connections
  • SASL Authentication
  • Searchable message history
  • Self-hosted web UI
  • Single binary, no dependencies
  • SOCKS5 proxy support

dispatch README

How to install dispatch

Install dispatch with Docker

docker run \
  -p <http port>:80 \
  -p <https port>:443 \
  -v <path>:/data \
  --restart unless-stopped \
  -d khlieng/dispatch

Inside a container bind to all interfaces: use `address = ""` or `-a 0.0.0.0`.

How to configure dispatch

  • addressinterface to which the server will bind (flag -a)

    interface to which the server will bind (flag -a)

  • auth.anonymoustrueallow anonymous access

    allow anonymous access

  • auth.logintrueenable login

    enable login

  • auth.registrationtrueenable user registration

    enable user registration

  • auto_ctcptrueautomatic CTCP handling

    automatic CTCP handling

  • confdirectory to store configuration in

    directory to store configuration in

  • datadirectory to store data in

    directory to store data in

  • dcc.enabledtrueenable DCC

    enable DCC

  • devfalsedevelopment mode

    development mode

  • dirdirectory to store config and data in

    directory to store config and data in

  • https.enabledtrueenable the HTTPS listener

    enable the HTTPS listener

  • https.port443HTTPS listen port

    HTTPS listen port

  • identdtrueidentd setting

    identd setting

  • port80port to listen on, HTTP (flag -p)

    port to listen on, HTTP (flag -p)

  • proxy.host127.0.0.1IRC proxy host

    IRC proxy host

  • proxy.port1080IRC proxy port

    IRC proxy port

  • proxy.protocolsocks5IRC proxy protocol

    IRC proxy protocol

  • reset-configfalsereset to the default configuration, overwriting the current one

    reset to the default configuration, overwriting the current one

  • verify_certificatestrueverify TLS certificates of IRC servers

    verify TLS certificates of IRC servers

dispatch releases & version history

More in Chat

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…