2017-06-15 16:21:10 +00:00
# GoshuIRC-Go
2016-01-16 16:45:59 +00:00
2017-06-15 16:21:10 +00:00
This is a bunch of self-contained packages that help with IRC development in Go. The package splits themselves are fairly similar to how things are split up in the [original Python version ](https://github.com/goshuirc/irc ).
2016-01-18 04:18:38 +00:00
2016-01-17 08:50:59 +00:00
---
2017-06-15 16:21:10 +00:00
[![GoDoc ](https://godoc.org/github.com/goshuirc/irc-go?status.svg )](https://godoc.org/github.com/goshuirc/irc-go)
[![Build Status ](https://travis-ci.org/goshuirc/irc-go.svg?branch=master )](https://travis-ci.org/goshuirc/irc-go)
[![Coverage Status ](https://coveralls.io/repos/goshuirc/irc-go/badge.svg?branch=master&service=github )](https://coveralls.io/github/goshuirc/irc-go?branch=master)
[![Go Report Card ](https://goreportcard.com/badge/github.com/goshuirc/irc-go )](https://goreportcard.com/report/github.com/goshuirc/irc-go)
2016-01-17 08:50:59 +00:00
---
2016-01-18 06:58:02 +00:00
I'm aiming for this to become a client library all of its own. The best path to that is writing a bunch of useful, testable, self-contained packages that I'm able to wire together!
2016-02-15 15:25:08 +00:00
These packages are still in their early stages. Specifically, they're probably not as well-optimised as we'd like, and the interfaces exposed by them may not be final. For specific package details, view the documentation of that package.
2016-01-17 02:57:36 +00:00
2016-01-18 04:18:38 +00:00
An example bot that uses these packages can be found [here ](https://gist.github.com/DanielOaks/cbbc957e8dba39f59d9e ).
2016-01-17 03:00:11 +00:00
2016-01-17 02:57:36 +00:00
Packages:
2017-06-15 16:21:10 +00:00
* [**gircclient** ](https://godoc.org/github.com/goshuirc/irc-go/client ): Very work-in-progress client library.
* [**ircfmt** ](https://godoc.org/github.com/goshuirc/irc-go/ircfmt ): IRC format codes handling, escaping and unescaping.
* [**ircmap** ](https://godoc.org/github.com/goshuirc/irc-go/ircmap ): IRC string casefolding.
* [**ircmatch** ](https://godoc.org/github.com/goshuirc/irc-go/ircmatch ): IRC string matching (mostly just a globbing engine).
* [**ircmsg** ](https://godoc.org/github.com/goshuirc/irc-go/ircmsg ): IRC message handling, raw line parsing and creation.
* [**ircutils** ](https://godoc.org/github.com/goshuirc/irc-go/ircutils ): Useful utility functions and classes that don't fit into their own packages.
2016-09-04 10:35:22 +00:00
---
2017-06-15 16:21:10 +00:00
Also check out the eventmgr library [here ](https://godoc.org/github.com/goshuirc/eventmgr ), which helps with event attaching and dispatching.