Codename IRCat - a lightweight IRCd in Python https://ircat.xyz
Find a file
swee 40e987f324
All checks were successful
/ check (push) Successful in 23s
Create Docker image / deploy (push) Successful in 2m29s
Update changelog.md
2025-08-25 20:51:46 -07:00
.forgejo/workflows Update .forgejo/workflows/stable.yml 2025-08-25 12:41:26 -07:00
modules draft: fix syntax 2025-07-27 22:22:09 -07:00
.gitignore Initial commit 2024-12-08 14:03:09 -08:00
changelog.md Update changelog.md 2025-08-25 20:51:46 -07:00
config.yml Add config for upcoming feature 2025-08-25 20:50:13 -07:00
Dockerfile /usr/local 2025-07-19 19:04:55 -07:00
favicon.ico Add small logo 2024-12-13 22:24:07 -08:00
FUNDING.yml Add FUNDING.yml 2024-12-14 12:54:36 -08:00
ircat-invert.svg invert logo 2024-12-11 21:12:34 -08:00
ircat-small.svg Add small logo 2024-12-13 22:24:07 -08:00
ircat.svg add logo 2024-12-11 21:10:21 -08:00
LICENSE Update LICENSE 2025-03-07 16:18:09 -08:00
README.md Remove Discourse issue tracker 2025-08-16 18:37:45 -07:00
requirements.txt correct pkg name 2025-07-19 18:41:36 -07:00
server.py Update server.py 2025-08-06 01:36:14 -07:00
todo.md Update todo.md 2025-08-17 17:23:15 -07:00

IRCat Logo

Lightweight and modular IRCd in Python

Looking for SweeNet?

You may check out the server details on https://ircat.xyz/try

Alternatively, you can access the webchat on https://web.ircat.xyz

Disclaimer

This project is very experimental and is currently not recommended for production usage.

Although this IRCd software is pretty stable when it comes to security, there's still a lot of IRC features that need to be implemented.

How to install

Requirements

  • A Linux machine
  • Python 3 (Tested in 3.12)
    • Don't forget to use pip install -r requirements.txt

Configuration

You can get configuration by editing the config.yml example in this repo.

Command syntax

python3 /path/to/ircat/server.py /path/to/config.yml

Docker

Use this compose file

services:
    ircat:
        image: git.swee.codes/swee/ircat:latest
        restart: unless-stopped
        ports:
            - 6667:6667
            # - 6697:6697
        volumes:
            - ./data:/app/data

Create a config.yml inside the data directory of your compose file, using the example in this repository, or else IRCat will fail to start.