ServerlessIRCd

IRC daemon with a serverless deployment model.

ServerlessIRCd is an IRC server where the protocol logic lives in a platform-agnostic TypeScript core. Two adapters run that core on Cloudflare Workers (Durable Objects) and AWS (API Gateway WebSockets + Lambda + DynamoDB).

Connect

ServerlessIRCd speaks IRC over secure WebSocket (wss://, port 443) as its primary transport, and optionally raw irc+tls on port 6697. Replace irc.example.com with your deployed Worker hostname in the snippets below. This page is static and identical across staging and prod.

wss on port 443, same origin as this page. No client install or bridge required.

Connect over wss (port 443) using the snippet below, or directly over irc+tls on port 6697 when the TCP+TLS surface is deployed.

/server add ircd irc.example.com/443
/set irc.server.ircd.ssl on
/connect ircd
/join #test

For the irc+tls :6697 path, swap the port above for 6697. The TCP surface is a separate deployment (Cloudflare Spectrum + Container); see the Cloudflare TCP Deployment Guide.

These TCP-only IRC clients do not support WebSocket natively. Use tools/tcp-ws-forwarder to bridge them: it listens on a local TCP port and forwards each IRC line over wss to the Worker, negotiating the binary.ircv3.net subprotocol upstream.

pnpm --filter tcp-ws-forwarder start \
  --target wss://irc.example.com/ --listen-port 16667

Then point HexChat / irssi at 127.0.0.1:16667 (TLS off — the bridge is local). Bridging instructions are in the Web Client Guide.

Both support WebSocket natively. Add a network pointing at wss://irc.example.com/ (port 443, TLS on); no bridge required.