I've written several basic IRC clients and bots over the years. Compared to XMPP, and other newer proprietary protocols it is actually quite simple.
Hardly anyone uses the DCC file transfer stuff anymore, so other than encryption, all you really need to handle is channel messages and private messages, plus the management commands (ops, voice, mute etc).
Hardly anyone uses the DCC file transfer stuff anymore, so other than encryption, all you really need to handle is channel messages and private messages, plus the management commands (ops, voice, mute etc).