{"categories":[{"label":"Internet","url":"https://skillfed.io/packages/category/internet/5"}],"enrichment":{"capability":"Provides a low-level, event-driven IRC protocol implementation with support for multiple simultaneous connections, CTCP, DCC, and both synchronous and asyncio-based event loops.","skillfed_tags":["irc-protocol","event-driven","asyncio-support"],"use_cases":["Build an IRC bot that listens to channels and responds to commands or events","Create a simple IRC client that reads stdin and sends messages to a channel or user","Implement custom IRC server for testing or internal chat infrastructure","Handle DCC file transfers programmatically between IRC peers","Monitor IRC channels and log or react to specific message patterns"],"what_it_does":"The irc package is a full-featured IRC protocol library that abstracts the low-level IRC protocol details into an event-driven framework. It handles multiple simultaneous server connections, automatic server PONG responses, and provides both a traditional select()-based reactor and a Python 3 asyncio-based alternative. The library includes support for CTCP (Client-to-Client Protocol) and DCC (Direct Client Connection) file transfers, plus higher-level abstractions like a simple object-oriented client class and a bot framework.\n\nYou use it by instantiating a Reactor, registering event handlers, and calling methods on ServerConnection objects to send messages; incoming server messages trigger events that your handlers catch. The package includes example scripts demonstrating typical patterns. Ten runtime dependencies handle utilities like timezone support via pytz, text processing, and resource imports across Python versions.","worth_installing":"Yes, if you need to build IRC clients or bots in Python. The library is stable (Production/Stable status), permissively licensed, has low install friction, and carries no known vulnerabilities. The main gotcha is that documentation is acknowledged as sparse\u2014you'll need to read examples and source code\u2014and the asyncio version lacks DCC support. For straightforward IRC automation or bot work, it's a solid choice."},"id":"irc","links":{"html":"https://skillfed.io/packages/irc","md":"https://skillfed.io/packages/irc.md","pypi":"https://pypi.org/project/irc/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2024-07-14","license_spdx":null,"license_treatment":"permissive","name":"irc","python_support":"supports_current","summary":"IRC (Internet Relay Chat) protocol library for Python"},"popularity":{"monthly_downloads":87073,"position":13815,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"20.5.0"}
