Självhostat

Stugan

Planterad 2 min läsning

#irc #projekt #självhostat

En självhostad webbklient för IRC skriven i Go med Vue 3. Håller anslutningarna uppe dygnet runt, har plugins i Lua och går att nå via webben, SSH eller din vanliga IRC-klient.

Jag har byggt stugan, en självhostad webbklient för IRC skriven i Go med ett frontend i Vue 3.

Tanken är enkel: en bakgrundstjänst håller anslutningarna uppe dygnet runt, sparar historik i SQLite med fulltextsökning och synkar lässtatus och utkast mellan alla enheter i realtid.

Stugan 1

Vad skiljer den från TheLounge?

  • Plugins i Lua: Skriv egna kommandon, filter och triggers precis som i WeeChat eller irssi. Det finns redan färdiga skript för AI-sammanfattning, webhooks och FiSH-kryptering.
  • Flera sätt att ansluta: Använd webben (PWA), koppla upp en terminal via SSH (Bubble Tea) eller anslut vanliga klienter som HexChat och Textual genom den inbyggda bouncern.
  • Strikt IRCv3: Stöd för moderna funktioner som reaktioner, redigering, typindikatorer och MARKREAD.
  • Färdig Docker-avbildning: Finns på GHCR för amd64 och arm64.

Kom igång

docker run -d --name stugan -p 8080:8080 -v stugan-data:/data \
  ghcr.io/klppl/stugan:latest

Inställningar, historik, skript och uppladdningar hamnar i volymen /data. Lägg en config.toml där med listen = "0.0.0.0:8080", annars lyssnar stugan bara inuti containern. Mer om compose, omvänd proxy och TLS finns i docs/docker.md.

Källkod och dokumentation: github.com/klppl/stugan