--- id: rel version: "0.4.9.27" license: MIT License license_treatment: permissive maintenance: active --- # rel — Registered Event Listener. Provides standard (pyevent) interface and functionality without external dependencies License: permissive · Maintenance: active · Downloads: 139.0K/mo ## What it is and what it does rel provides a unified interface for asynchronous event handling across different operating systems by abstracting over platform-specific notification mechanisms. It attempts to use the most efficient method available on your system—epoll on Linux, kqueue on BSD/macOS, poll or select as fallbacks—without requiring external C dependencies. The library is designed primarily for network applications that need to handle multiple concurrent connections or events. You initialize rel with your preferred methods in order of preference, and it automatically selects the first available one. If you don't call initialize(), it tries the default sequence. This makes it useful for developers building network servers or event-driven applications who want portability without the overhead of larger frameworks. Use it for: - Building network servers that handle many concurrent connections across Linux, BSD, and macOS - Creating event-driven applications that need to react to I/O readiness without external dependencies - Porting existing pyevent-based code to a dependency-free alternative - Implementing custom event loops for specialized networking tasks ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. rel is a cross-platform asynchronous event dispatcher that selects from available system notification methods (epoll, kqueue, poll, select, pyevent) to handle network events efficiently. Yes, if you need a lightweight, dependency-free event dispatcher for network applications and are comfortable with its callback-based interface. The permissive MIT license, zero runtime dependencies, and active maintenance make it low-risk. However, verify first whether its API and performance characteristics match your use case—asyncio or other modern frameworks may be more suitable for new projects. ## Install pip install rel uv add rel poetry add rel ## Installing rel Before you install: Low install friction with no runtime dependencies. Active maintenance status with a recent release. License in practice: MIT License permits commercial and private use with minimal restrictions; suitable for most projects. Quickstart: pip install rel import rel rel.initialize(['epoll', 'kqueue', 'poll', 'select']) # Use rel's event handling in your network application Verify before relying: - Whether the package supports modern async/await syntax or is limited to callback-based patterns - Performance characteristics compared to asyncio or other event loop implementations - Current user base and adoption rate beyond download statistics ## Package facts - License: MIT License (permissive) - Python support: unspecified - Install friction: low - Maintenance: active - Downloads: 139.0K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags async event dispatcher, event notification system, network event handling, cross-platform event loop, epoll kqueue poll select, asynchronous event listener, event-driven networking, event-loop, networking, async [View on SkillFed](https://skillfed.io/packages/rel) · [View on PyPI](https://pypi.org/project/rel/)