--- id: connectrpc version: "0.11.1" license: Apache-2.0 license_treatment: permissive maintenance: active --- # connectrpc — Server and client runtime library for Connect RPC License: permissive · Maintenance: active · Downloads: 606.1K/mo ## What it is and what it does Connect is a runtime library that lets you build RPC APIs by defining your schema once in Protocol Buffers and generating type-safe server and client code automatically. It runs on standard Python web frameworks (WSGI/ASGI) and works with curl and HTTP clients out of the box, while also speaking gRPC and gRPC-Web protocols. The library handles the transport and serialization; you write only your business logic. It provides both synchronous and asynchronous client libraries, full streaming support (server, client, and bidirectional), built-in compression, and middleware hooks for logging and observability. The package depends on protobuf-py for message serialization and pyqwest for HTTP transport, and is actively maintained with support for modern Python versions. Use it for: - Build a type-safe microservice that speaks both HTTP/JSON and gRPC without writing serialization code. - Generate matching client libraries for multiple languages from a single Protobuf schema. - Add streaming RPC endpoints to an existing ASGI or WSGI application alongside other routes. - Implement server and client interceptors for distributed tracing, authentication, or request logging. - Migrate from gRPC while maintaining protocol compatibility and reusing existing Protobuf definitions. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Connect is a runtime library for building and consuming RPC APIs using Protocol Buffers, supporting both server (WSGI/ASGI) and client (sync/async) implementations with interoperability for gRPC and gRPC-Web. Yes, if you are building new RPC APIs and want to avoid writing serialization and type definitions twice. The low install friction, active maintenance, permissive license, and support for current Python versions make it a solid choice. The Beta status means the API may evolve, so pin versions in production. Not necessary if you already have a working gRPC or REST setup and don't need the code-generation workflow. ## Install pip install connectrpc uv add connectrpc poetry add connectrpc ## Installing connectrpc Before you install: Low friction: pure Python wheel with only two runtime dependencies (protobuf-py and pyqwest). Active maintenance with a release within the last month and recent commits; project is in Beta status and supports current Python versions (3.10–3.14). License in practice: Apache-2.0 permissive license allows use in commercial and open-source projects with minimal restrictions; attribution required but no copyleft obligations. Quickstart: pip install connectrpc from connectrpc.request import RequestContext # Server: subclass generated service and serve with ASGI # Client: instantiate generated client and call methods # See docs for generated stub imports after running buf codegen Requires Python 3.10 or later; code generation via buf and protoc plugins is a separate prerequisite step before runtime usage. Verify before relying: - Performance characteristics compared to gRPC or other RPC frameworks under typical load. - Production readiness: Beta status suggests API stability may still evolve. - Ecosystem maturity: tooling and third-party middleware availability beyond what's documented. - Specific compression algorithm performance (gzip, brotli, zstd) in real-world scenarios. ## Package facts - License: Apache-2.0 (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 606.1K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags protobuf rpc framework, grpc alternative python, http api code generation, type-safe rpc client server, connect protocol implementation, asgi wsgi rpc framework, streaming rpc library, rpc-framework, protobuf, code-generation [View on SkillFed](https://skillfed.io/packages/connectrpc) · [View on PyPI](https://pypi.org/project/connectrpc/)