Libraries to help with IRC development in Go. Fork of https://github.com/ergochat/irc-go
Go to file
2024-06-07 14:21:53 +02:00
.github/workflows add CI workflow 2023-02-27 20:20:44 -05:00
ircevent Make message channels []byte for buffer pair reuse, replace callback handling with atomics, added channel mode and casemapping, bump deps 2024-06-07 14:21:53 +02:00
ircfmt fix an old TODO (#95) 2023-06-12 12:20:59 -04:00
ircmsg Make message channels []byte for buffer pair reuse, replace callback handling with atomics, added channel mode and casemapping, bump deps 2024-06-07 14:21:53 +02:00
ircreader Make message channels []byte for buffer pair reuse, replace callback handling with atomics, added channel mode and casemapping, bump deps 2024-06-07 14:21:53 +02:00
ircutils Doc headers on many functions 2024-05-19 14:15:36 +02:00
.check-gofmt.sh add ircreader 2021-02-13 19:57:21 -05:00
.gitignore add some test code 2018-04-26 23:32:27 -04:00
.travis.gofmt.sh add some test code 2018-04-26 23:32:27 -04:00
.travis.yml fix gofmt, run tests in travis 2020-11-16 17:45:34 -05:00
CHANGELOG.md changelog for v0.4.0 2023-06-14 02:41:05 -04:00
doc.go Rename package to git.gammaspectra.live/WeebDataHoarder/irc-go 2024-05-19 12:27:00 +02:00
go.mod Make message channels []byte for buffer pair reuse, replace callback handling with atomics, added channel mode and casemapping, bump deps 2024-06-07 14:21:53 +02:00
go.sum Make message channels []byte for buffer pair reuse, replace callback handling with atomics, added channel mode and casemapping, bump deps 2024-06-07 14:21:53 +02:00
LICENSE Rename package to git.gammaspectra.live/WeebDataHoarder/irc-go 2024-05-19 12:27:00 +02:00
Makefile remove ircmap and gircclient, rename to ergochat/irc-go 2021-06-17 16:51:48 -04:00
README.md Rename package to git.gammaspectra.live/WeebDataHoarder/irc-go 2024-05-19 12:27:00 +02:00

WeebDataHoarder/irc-go

These are libraries to help in writing IRC clients and servers in Go, prioritizing correctness, safety, and IRCv3 support. They are not fully API-stable, but we expect any API breaks to be modest in scope.


Packages:

  • ircmsg: IRC message handling, raw line parsing and creation.
  • ircreader: Optimized reader for \n-terminated lines, with an expanding but bounded buffer.
  • ircevent: IRC client library (fork of thoj/go-ircevent).
  • ircfmt: IRC format codes handling, escaping and unescaping.
  • ircutils: Useful utility functions and classes that don't fit into their own packages.

For a relatively complete example of the library's use, see slingamn/titlebot.