IRCKit is an asynchronous pure Swift modern IRC library using the Apple NIO event driven networking framework and the Foundation NotificationCenter API written to support the latest of IRCv3 features.
- WHOX
- Capability Negotiation (version 3.2)
- Real name and account on join (extended-join)
- Hostname change notifications (chghost)
- Userhosts in /names (userhost-in-names)
- Multiple user prefixes (multi-prefix)
- Account change updates (account-notify)
- SASL 3.2 (PLAIN SCRAM-SHA-256 and EXTERNAL)
- Message tags (message-tags)
- Account in message tags (account-tag)
- Server-sent timestamps (server-time)
- Capability change notifications (cap-notify)
- Away notifications (away-notify)
- Changing real name after connection (setname)
- Invite notifications (invite-notify)
- User monitoring (monitor)
- Strict Transport Security (STS)
- Message confirmations (echo-message)
- Labeled responses (labeled-response)
- Unique message identifiers (message-ids)
- Message replies (client-tags/reply)
- Message batching (batch)
- Message reactions (client-tags/react)
- Typing notifications (client-tags/typing)
- Server Name Indication (SNI)
- Standardised notifications, warnings and errors (standard-replies)
- Channel renaming channel-rename
- Chat history requests chathistory
- Multiline messages multiline