--- id: grpclib version: "0.4.9" license: BSD-3-Clause license_treatment: permissive maintenance: aging --- # grpclib — Pure-Python gRPC implementation for asyncio License: permissive · Maintenance: aging · Popularity: top 1,000 on PyPI ## Install pip install grpclib uv add grpclib poetry add grpclib ## Description Pure-Python gRPC implementation for asyncio =========================================== .. image:: https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/7e1631d13476f1e870af0d5605b643fc14471a6d/banner-direct-single.svg :target: https://savelife.in.ua/en/ |project|_ |documentation|_ |version|_ |tag|_ |downloads|_ |license|_ This project is based on `hyper-h2`_ and **requires Python >= 3.10**. .. contents:: :local: Example ~~~~~~~ See `examples`_ directory in the project's repository for all available examples. Client ------ .. code-block:: python3 import asyncio from grpclib.client import Channel # generated by protoc from .helloworld_pb2 import HelloRequest, HelloReply from .helloworld_grpc import GreeterStub async def main(): async with Channel('127.0.0.1', 50051) as channel: greeter = GreeterStub(channel) reply = await greeter.SayHello(HelloRequest(name='Dr. Strange')) print(reply.message) if __name__ == '__main__': asyncio.run(main()) Server ------ .. code-block:: python3 import asyncio from grpclib.utils import graceful_exit from grpclib.server import Server # generated by... ## AI interpretation — verify before relying Pure-Python gRPC client and server implementation for asyncio applications, enabling asynchronous remote procedure calls without compiled dependencies. Verdict: Stable, permissively licensed pure-Python gRPC implementation suitable for asyncio projects. Low install friction and no known vulnerabilities, but maintenance is aging—last release was 242 days ago. Best for teams already committed to asyncio and protobuf workflows. [View on SkillFed](https://skillfed.io/packages/grpclib) · [View on PyPI](https://pypi.org/project/grpclib/)