--- id: autobahn version: "26.7.1" license: MIT license_treatment: permissive maintenance: active --- # autobahn — WebSocket client & server library, WAMP real-time framework License: permissive · Maintenance: active · Downloads: 7.1M/mo ## What it is and what it does Autobahn is a mature WebSocket and WAMP framework for Python that runs on both Twisted and asyncio. It implements RFC6455 WebSocket and the WAMP protocol, which layers remote procedure calls and publish-subscribe messaging on top of WebSocket. You use it to build real-time client and server applications that need bidirectional communication—either plain WebSocket for simple messaging or WAMP when you need structured RPC and pub-sub patterns. The library supports both CPython and PyPy, includes TLS and proxy support, and passes the Autobahn Testsuite for standards conformance. The package has 9 runtime dependencies, including cryptography, cffi, msgpack, and cbor2, which add moderate install friction but provide serialization and security features out of the box. It requires Python 3.11 or later and is actively maintained with recent releases. The MIT license is permissive for commercial use. Use it for: - Build real-time chat or notification systems where clients and servers exchange messages over a persistent WebSocket connection. - Implement distributed RPC and pub-sub messaging using WAMP when you need a routed protocol with a central message broker. - Create live dashboards or monitoring tools that push updates to multiple clients simultaneously without polling. - Develop IoT applications where devices communicate asynchronously with a central server or peer-to-peer. - Integrate WebSocket support into existing Twisted or asyncio applications for bidirectional communication. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Autobahn provides WebSocket and WAMP (Web Application Messaging Protocol) implementations for Python, enabling bidirectional real-time messaging and remote procedure calls over WebSocket on Twisted and asyncio. Yes. Autobahn is a stable, actively maintained library with no known vulnerabilities, permissive licensing, and broad platform support. Install it if you need WebSocket or WAMP for real-time messaging. The 9 dependencies add moderate friction, but wheels are available for modern Python versions. Be aware that versions after v25.6.1 may include AI-assisted code—review the AI policy if that is a concern for your project. ## Install pip install autobahn uv add autobahn poetry add autobahn ## Installing autobahn Before you install: Medium install friction due to 9 runtime dependencies including cryptography and cffi, but wheels are available for modern Python versions (3.11–3.14) across common platforms. Maintenance is active with a release 30 days old and 2541 repository stars. License in practice: MIT license is permissive, allowing use in commercial and proprietary projects with minimal restrictions. Quickstart: pip install autobahn from autobahn.twisted.websocket import WebSocketServerProtocol class MyServerProtocol(WebSocketServerProtocol): def onMessage(self, payload, isBinary): self.sendMessage(payload, isBinary) Requires Python 3.11 or later; Twisted or asyncio event loop must be configured to run the server. Verify before relying: - Performance characteristics and throughput limits under typical production loads. - Compatibility guarantees with specific versions of Twisted and asyncio. - Details on the AI policy change in versions after v25.6.1 and its impact on code quality or licensing. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: medium - Maintenance: active - Downloads: 7.1M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags websocket server client library, wamp messaging protocol, real-time bidirectional communication, asyncio twisted websocket, rpc publish subscribe, websocket rfc6455, wamp router client, websocket, wamp, real-time-messaging [View on SkillFed](https://skillfed.io/packages/autobahn) · [View on PyPI](https://pypi.org/project/autobahn/)