{"categories":[{"label":"Software Development","url":"https://skillfed.io/packages/category/software-development/7"}],"enrichment":{"capability":"Parses and generates Protobuf schema files (.proto) to and from an abstract syntax tree, supporting proto2, proto3, and protobuf editions 2023 and 2024.","skillfed_tags":["protobuf","parser","code-generation"],"use_cases":["Build a code generator that reads .proto files and emits client libraries in a custom language","Validate Protobuf schemas against organizational naming or structure conventions","Extract documentation or metadata from .proto files for API documentation systems","Transform or migrate Protobuf schemas between proto2, proto3, and edition syntax","Analyze message definitions to enforce backward compatibility rules","Generate type stubs or schema diagrams from Protobuf definitions"],"what_it_does":"Proto Schema Parser is a pure-Python library that reads Protobuf schema files and converts them into an abstract syntax tree (AST) for programmatic inspection and manipulation. It uses ANTLR4-based lexer and parser rules autogenerated from Buf's grammar files to handle the conversion. The library also provides a Generator class to write AST objects back to valid Protobuf schema strings, making it useful for tools that need to read, analyze, or transform .proto files without invoking the official protoc compiler.\n\nThe package supports proto2 and proto3 syntax, as well as the newer protobuf editions (2023 and 2024). It preserves comments, handles all major schema constructs (messages, fields, enums, services, imports, options), and works with advanced features like oneof, map types, groups, and stream RPC definitions. A developer would use this when building code generators, schema validators, documentation tools, or any system that needs to parse and understand Protobuf schemas as data structures.","worth_installing":"Yes, if you need to programmatically parse or generate Protobuf schemas. The package is stable, has no known vulnerabilities, and handles modern Protobuf syntax including editions. The aging maintenance status (282 days since last release) is a minor concern for long-term support, but the core functionality is mature and unlikely to require frequent updates unless Protobuf itself introduces breaking changes."},"id":"proto-schema-parser","links":{"html":"https://skillfed.io/packages/proto-schema-parser","md":"https://skillfed.io/packages/proto-schema-parser.md","pypi":"https://pypi.org/project/proto-schema-parser/"},"maintenance":{"status":"aging"},"meta":{"latest_release":"2025-11-05","license_spdx":null,"license_treatment":"permissive","name":"proto-schema-parser","python_support":"supports_current","summary":"A Pure Python Protobuf .proto Parser"},"popularity":{"monthly_downloads":630224,"position":5663,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"2.1.0"}
