{"categories":[{"label":"Networking","url":"https://skillfed.io/packages/category/system-networking/2"}],"enrichment":{"capability":"Serialx provides synchronous and native asynchronous APIs for serial port communication across Linux, macOS, and Windows, with support for modem pin control and ESPHome device integration.","skillfed_tags":["serial-io","async-first","cross-platform"],"use_cases":["Building cross-platform embedded device communication tools that work identically on Windows, macOS, and Linux without conditional imports.","Integrating ESPHome-exposed serial devices into Python applications via the serialx ESPHome transport layer.","Migrating legacy pyserial code to async/await patterns while maintaining synchronous fallback support.","Implementing protocol handlers that need low-level asyncio transport control for serial devices.","Controlling modem pins (RTS, DTR) on serial devices for handshake and reset sequences."],"what_it_does":"Serialx is a cross-platform serial communication library that unifies synchronous and asynchronous APIs for Python on Linux, macOS, and Windows. It offers multiple usage patterns: a familiar synchronous context-manager interface, a native async equivalent, asyncio StreamReader/StreamWriter pairs, and low-level protocol transports for advanced consumers. The library handles modem pin state queries and control, and integrates with ESPHome for communicating with remote serial devices through the ESPHome API.\n\nThe package targets developers who need reliable serial I/O without platform-specific code paths. Its three runtime dependencies (typing-extensions, async-timeout, pywin32) are lightweight and widely maintained. The library is actively maintained with recent releases and no known security vulnerabilities.","worth_installing":"Yes. Serialx is actively maintained, has no security vulnerabilities, low install friction, and offers a modern dual sync/async API for serial communication across all major platforms. It is suitable for new projects and for migrating from older serial libraries. The permissive Apache-2.0 license poses no restrictions."},"id":"serialx","links":{"html":"https://skillfed.io/packages/serialx","md":"https://skillfed.io/packages/serialx.md","pypi":"https://pypi.org/project/serialx/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-06-12","license_spdx":"Apache-2.0","license_treatment":"permissive","name":"serialx","python_support":"supports_current","summary":"Serial library with native sync and async support for Windows, Linux, macOS, and other platforms"},"popularity":{"monthly_downloads":155142,"position":10831,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.8.2"}
