Table of Contents

Getting Started

Install the Client

Windows (Chocolatey)

choco install echohub

Linux / macOS

curl -sSfL https://raw.githubusercontent.com/HueByte/EchoHub/master/scripts/install.sh | sh

To install a specific version or to a custom directory:

curl -sSfL .../install.sh | sh -s -- --version 0.2.8
curl -sSfL .../install.sh | sh -s -- --install-dir /opt/echohub

Manual Download

Grab a self-contained binary from Releases -- no runtime needed.

Host a Server

Docker

The quickest way to host a server:

cp .env.example .env
docker compose up -d

See the Docker guide for configuration, pre-built images, and more.

From Source

dotnet run --project src/EchoHub.Server

Requires .NET 10 SDK.

On first run, the server automatically:

  1. Creates appsettings.json from the example config
  2. Generates a secure JWT secret
  3. Creates the SQLite database with a #general channel

Usage

After installing the client, run echohub (or dotnet run --project src/EchoHub.Client from source). Connect to a server, register an account, and start chatting.

Connect via IRC

Enable the IRC gateway in the server's appsettings.json:

{
  "Irc": {
    "Enabled": true,
    "Port": 6667
  }
}

Then connect with any standard IRC client:

irssi -c localhost -p 6667 -w <password> -n <username>

IRC users must have an existing EchoHub account. Authentication works via PASS/NICK/USER or SASL PLAIN. Messages flow bidirectionally between IRC and TUI clients.

For TLS, set TlsEnabled: true, TlsPort: 6697, and provide a PKCS#12 certificate path.

See the Architecture page for details on how the IRC gateway integrates with the chat service.

Configuration

Server configuration is in appsettings.json (auto-generated on first run). You can also use environment variables or command-line arguments to override settings.

See the Configuration guide for the full reference and how it all works.

Build from Source

dotnet build src/EchoHub.slnx