Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/alexyoung/ircd.js

A Node ircd (IRC daemon)
https://github.com/alexyoung/ircd.js

Last synced: 5 days ago
JSON representation

A Node ircd (IRC daemon)

Awesome Lists containing this project

README

        


::::::::::.. .,-::::::::::::-. ....:::::: .::::::.
;;;;;;;``;;;; ,;;;'````' ;;, `';, ;;;;;;;;;````;;;` `
[[[ [[[,/[[[' [[[ `[[ [[ ''` `[[. '[==/[[[[,
$$$ $$$$$$c $$$ $$, $$ ,,, `$$ ''' $
888 888b "88bo,`88bo,__,o, 888_,o8P'd8b888boood88 88b dP
MMM MMMM "W" "YUMMMMMP"MMMMP"` YMP"MMMMMMMM" "YMmMY"

A Node.JS IRC Server
ircd.js

h3. About

I'm implementing "RFC 1459":https://tools.ietf.org/html/rfc1459 / "RFC 2812":https://tools.ietf.org/html/rfc2812 for "Node.js":http://nodejs.org/.

The server will allow clients to connect, join channels, change topics; basic stuff.

Done:

* PASS (connection password)
* PING/PONG
* PRIVMSG
* MODE
* JOIN
* TOPIC
* NAMES
* LIST
* INVITE
* WHOWAS
* TIME
* VERSION
* AWAY
* WHO
* OPER
* KICK
* WALLOP
* CONNECT
* Connection garbage like MOTD
* Basic data validation
* Simple JSON config file
* Channel modes: o, p, s, t, n, m, i, l, b, v, k
* User modes: i, w, o

Planned:

* Services
* Bring back server links
* Server-to-server NICK messages when nicks are changed or new clients join
* Server-to-server messages for JOIN, NJOIN, MODE, PRIVSG and NOTICE
* SQUIT and QUIT for links
* Server to server communication
* More basic commands: NOTICE, LINKS, TRACE, ADMIN, INFO
* Log files and logging options
* Local ops (+O)
* Stats command

h3. Documentation

Install with npm install ircdjs.

Set up configuration in /etc/ircdjs/config.json.

h3. Contributions

* overra
* jazzychad (Chad Etzel)
* sespindola (Sebastian A. Espindola)
* niklasf
* treeform
* guybrush (Patrick Pfeiffer)
* eirikb (Eirik Brandtzæg)
* andrew12 (Andrew Herbig)
* jrasanen (Jussi Räsänen)

h3. License (GPL)

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see "http://www.gnu.org/licenses/":http://www.gnu.org/licenses/.