A fork of aatxe/irc Rust crate, improved for IRCv3 support.
Find a file
2015-01-11 00:51:57 -05:00
examples Updated for Rust master. 2015-01-09 17:38:46 -05:00
src Add nochanlists feature. 2015-01-10 21:14:08 -08:00
.gitignore Added some basic data tests. 2014-10-08 18:08:29 -04:00
.travis.yml Fixed travis-ci build script. 2014-12-31 20:40:57 -05:00
Cargo.toml Bumped version number to 0.7.12. 2015-01-11 00:51:57 -05:00
mktestconfig.sh Added support for non-unicode encodings. 2014-11-30 01:29:38 -05:00
README.md Updated CLA after name change. 2015-01-06 11:15:38 -05:00
UNLICENSE Added UNLICENSE and contributing guidelines. This library is now public domain. 2014-11-05 02:11:33 -05:00

irc Build Status

A thread-safe IRC library in Rust based on iterators. It's hopefully compliant with RFC 2812. You can find up-to-date, ready-to-use documentation online here. The documentation is generated with the default features. These are, however, strictly optional and can be disabled by the end-user.

Getting Started

To start using this library with cargo, you can simply add irc = "*" to your dependencies to your Cargo.toml file. From there, you can look to the examples and the documentation to see how to proceed. Making a simple bot is easy though:

extern crate irc;

use irc::server::{IrcServer, Server};
use irc::server::utils::Wrapper;

fn main() {
    let irc_server = IrcServer::new("config.json").unwrap();
    let server = Wrapper::new(&irc_server);
    server.identify().unwrap();
    for message in server.iter() {
        // Do message processing.
    }
}

Contributing

Contributions to this library would be immensely appreciated. As this project is public domain, all prospective contributors must sign the Contributor License Agreement, a public domain dedication.