aristaproto
Arista Protobuf / Python gRPC bindings generator & library
Decision gist · record as of 2026-08-14
Yes. Aristaproto is actively maintained, has low install friction, carries no known vulnerabilities, and is licensed permissively under MIT. It is suitable for projects needing Protocol Buffer code generation and async gRPC support in Python 3.9+. Install the [compiler] extra only if you need to generate code from .proto files; the base package alone suffices to use pre-generated message and service classes.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.9 or later.
- Generating code from .proto files requires protoc and grpcio-tools installed separately.
- Low install friction with a pure-wheel distribution.
License · maintenance · safety
MIT (permissive) — MIT license permits commercial and private use with minimal restrictions; suitable for most projects.
last release 2026-06-09 (66 days) · last repo commit 2026-08-10 · 1 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 199,721 downloads/mo, #9,701 on PyPI
Alternatives
Verify before relying
# Install library only (to use generated code)
pip install aristaproto
# Or install with compiler to generate from .proto files
pip install "aristaproto[compiler]"
# Use generated message class
import aristaproto
greeting = aristaproto.Message()
serialized = bytes(greeting)
deserialized = aristaproto.Message().parse(serialized)
print(deserialized.to_json())- Whether the nanosecond-precision Timestamp subclass is compatible with all datetime-expecting code paths in downstream libraries.
- Performance characteristics compared to the original betterproto fork or official protobuf compiler output.
- Scope and stability of cherry-picked changes from betterproto beyond the documented list.
What it is and what it does
Aristaproto is a Protocol Buffer compiler and runtime library for Python that generates gRPC service stubs and message classes from .proto definitions. It is a maintained fork of betterproto, dropping support for Python versions below 3.9 and adding nanosecond precision to Timestamp fields by subclassing datetime. The package supports both synchronous and asynchronous gRPC clients and servers via grpclib, with built-in JSON and dictionary serialization, one-of field handling, and introspection utilities.
You can use it in two ways: install the full package with the [compiler] feature to generate code from .proto files using protoc, or install just the library to use pre-generated code. Generated message classes inherit from aristaproto.Message and support serialization to bytes, JSON, and dicts. The async gRPC stubs are compatible with grpclib and provide type hints for better IDE support.
Use it for
- Generate Python gRPC client and server stubs from .proto definitions for microservice communication.
- Serialize and deserialize Protocol Buffer messages to JSON or Python dicts in REST API bridges.
- Build async gRPC services with type-checked stubs and automatic message validation.
- Preserve nanosecond precision in timestamp fields when converting between Protobuf and Python datetime objects.
- Implement one-of field logic with pattern matching on Python 3.10+ or explicit field introspection.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
Aristaproto is actively maintained, has low install friction, carries no known vulnerabilities, and is licensed permissively under MIT. It is suitable for projects needing Protocol Buffer code generation and async gRPC support in Python 3.9+. Install the [compiler] extra only if you need to generate code from .proto files; the base package alone suffices to use pre-generated message and service classes.
Install
aristaproto on PyPI
Before you install
Low install friction with a pure-wheel distribution. Actively maintained with a recent release (66 days ago) and current Python version support (3.9–3.13). Three runtime dependencies are all stable, widely-used libraries.
Requires Python 3.9 or later. Generating code from .proto files requires protoc and grpcio-tools installed separately.
License in practice
MIT license permits commercial and private use with minimal restrictions; suitable for most projects.
Quickstart
# Install library only (to use generated code)
pip install aristaproto
# Or install with compiler to generate from .proto files
pip install "aristaproto[compiler]"
# Use generated message class
import aristaproto
greeting = aristaproto.Message()
serialized = bytes(greeting)
deserialized = aristaproto.Message().parse(serialized)
print(deserialized.to_json())
Verify before relying
- Whether the nanosecond-precision Timestamp subclass is compatible with all datetime-expecting code paths in downstream libraries.
- Performance characteristics compared to the original betterproto fork or official protobuf compiler output.
- Scope and stability of cherry-picked changes from betterproto beyond the documented list.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release <4.0,>=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 3 packagesgrpclibpython-dateutiltyping-extensions |
| Maintenance | Actively maintained 66 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 199,721 / month, #9,701 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9 |
Evidence: aristaproto-0.1.5-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “python grpc stub generator”
- aristaprotoGenerates Python gRPC stubs and message classes from Protocol Buffer…
- betterproto-fwGenerates idiomatic Python code from Protobuf 3 and gRPC definitions,…
- betterprotoGenerates idiomatic Python code from Protobuf 3 and gRPC definitions,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also betterproto · betterproto-fw · protoletariat · grpclib · protobuf_to_pydantic · grpcio-tools · betterproto2-compiler · isolate-proto · hatch-protobuf · betterproto2