{"categories":[{"label":"Build Tools","url":"https://skillfed.io/packages/category/software-development-build-tools/5"}],"enrichment":{"capability":"Generates idiomatic Python code from Protobuf 3 and gRPC definitions, with built-in async/await support, type hints, and modern Python features like dataclasses and timezone-aware datetime objects.","skillfed_tags":["protobuf","grpc","code-generation"],"use_cases":["Generate async gRPC service stubs and client code without requiring additional plugins or manual async wrapping.","Create type-hinted, IDE-friendly Python dataclasses from Protobuf schemas for better developer experience and static analysis.","Build Pydantic-compatible models directly from Protobuf definitions for validation and serialization workflows.","Modernize Protobuf-based Python projects by replacing Google's protoc plugin with idiomatic, readable generated code.","Develop microservices that use Protobuf for serialization while leveraging Python's async/await and modern language features."],"what_it_does":"betterproto2-compiler is a code generator that transforms Protobuf 3 and gRPC definitions into readable, idiomatic Python code. It reimplements Google's protoc plugin from the ground up, prioritizing modern Python idioms\u2014dataclasses, async/await, type hints, and built-in datetime objects\u2014over legacy patterns. The generated code includes both binary and JSON serialization, supports Pydantic model generation, and produces importable modules with proper `__init__.py` files.\n\nThe package addresses long-standing limitations of the official protoc plugin: it adds native async support, full type checking and IDE completion, relative imports that work in Python 3, and avoids name-collision bugs. While the wire format remains compatible with standard Protobuf, the generated API differs\u2014using Pythonic method names and patterns instead of capitalized functions like `HasField()` or `SerializeToString()`. The project is actively developed but explicitly subject to breaking changes, and documentation is incomplete.","worth_installing":"Yes, with conditions. Install if you need async gRPC support, type hints, and idiomatic Python code generation from Protobuf 3 schemas. The low install friction, active maintenance, and MIT license support adoption. However, accept that the project is under active development with incomplete documentation and potential breaking changes\u2014unsuitable for production systems requiring stability guarantees."},"id":"betterproto2-compiler","links":{"html":"https://skillfed.io/packages/betterproto2-compiler","md":"https://skillfed.io/packages/betterproto2-compiler.md","pypi":"https://pypi.org/project/betterproto2-compiler/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-05-13","license_spdx":"MIT","license_treatment":"permissive","name":"betterproto2-compiler","python_support":"supports_current","summary":"Compiler for betterproto2"},"popularity":{"monthly_downloads":119230,"position":12079,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.10.1"}
