]> Cypherpunks.ru repositories - goircd.git/blob - README
Additional unittests
[goircd.git] / README
1      goircd -- minimalistic simple Internet Relay Chat (IRC) server
2      ==============================================================
3
4 SYNOPSIS
5
6 goircd is very simple IRC server, written on Go.
7
8 DESCRIPTION
9
10 goircd is very simple IRC server, written on Go.
11 It is heavily inspired by miniircd daemon written on Python.
12 It does not aim to replace full featured mass scalable IRC networks:
13
14 * It can not connect to other servers. Just standalone installation
15 * It has few basic IRC commands
16 * There is not support for channel operators, modes, votes, invites
17   and so on
18 * No ident lookups, reverse DNS queries
19
20 But it has some convincing features:
21
22 * Only standard Go libraries, no external requirements
23 * Single executable binary
24 * No configuration file, just few command line arguments
25 * IPv6 out-of-box support
26 * Optional channel logging to plain text files
27 * Optional permanent channel's state saving in plain text files
28   (so you can reload daemon and all channels topics and keys won't
29   disappear)
30
31 Some remarks and recommendations related to it's simplicity:
32
33 * Use either nohup or similar tools to daemonize it
34 * Use either crywrap or similar tools for TLS-capable connections
35 * Just plain logging on stderr, without syslog support
36
37 SUPPORTED IRC COMMANDS
38
39 * NICK/USER during registration workflow
40 * PING/PONGs
41 * NOTICE/PRIVMSG
42 * MOTD, LUSERS, WHO, WHOIS, QUIT
43 * LIST, JOIN, TOPIC, +k/-k channel MODE
44
45 USAGE
46
47 Just execute goircd daemon. It has following optional arguments:
48
49 * -hostname: hostname to show for client's connections
50 * -bind: address to bind to (:6667 be default)
51 * -motd: absolute path to MOTD file. It is reread every time MOTD is
52          requested
53 * -logdir: directory where all channels messages will be saved. If
54            omitted, then no logs will be kept
55 * -statedir: directory where all channels states will be saved and
56              loaded during startup. If omitted, then states will be
57              lost after daemon termination
58
59 LICENCE
60
61 This program is free software: you can redistribute it and/or modify
62 it under the terms of the GNU General Public License as published by
63 the Free Software Foundation, either version 3 of the License, or
64 any later version.
65
66 This program is distributed in the hope that it will be useful,
67 but WITHOUT ANY WARRANTY; without even the implied warranty of
68 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
69 GNU General Public License for more details.