Skip to main content

A tool to visualize .proto file hierarchies

Project description

Proto Explorer

A lightweight, interactive browser for exploring Protobuf/gRPC hierarchies

Python Streamlit Protobuf

Proto Explorer lets you visually explore Protobuf message hierarchies (*.proto files) using only the compiled Python files (*_pb2.py). No .proto files or regeneration required.

✅ Expand nested message fields
✅ Show oneof group hierarchy
✅ Correctly detect map<key, value> fields
✅ Load _pb2.py from custom paths
✅ No server or DB needed — runs locally


🌟 Demo Screenshot

Coming soon – add screenshot here once UI finalized You can insert a screenshot like:

Proto Explorer Screenshot


🔧 Installation

Clone the repository and install dependencies:

pip install proto-explorer

▶️ Run the App

proto-explorer --proto_module <compiled_protobuf_pb2_module> [--load_path </path/to/compiled/protobuf>]

Example:

  1. Clone a test Protobuf set (example: Google Pub/Sub):
git clone https://github.com/googleapis/googleapis.git
cd googleapis
  1. Compile the .proto files to _pb2.py:
python -m grpc_tools.protoc \
  --proto_path=. \
  --python_out=. \
  google/pubsub/v1/*.proto \
  google/api/*.proto

Confirm that the following _pb2.py file exists:

google/pubsub/v1/pubsub_pb2.py
  1. Launch Proto Explorer:
proto-explorer --proto_module google.pubsub.v1.pubsub_pb2 --load_path .
Launching Proto Explorer...

  You can now view your Streamlit app in your browser.

  Local URL: http://localhost:8501

Now open your browser and go to: http://localhost:8501/ Enjoy exploring your Protobuf message hierarchy!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

proto_explorer-0.2.1.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

proto_explorer-0.2.1-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

Details for the file proto_explorer-0.2.1.tar.gz.

File metadata

  • Download URL: proto_explorer-0.2.1.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.4 CPython/3.12.3 Linux/6.6.87.2-microsoft-standard-WSL2

File hashes

Hashes for proto_explorer-0.2.1.tar.gz
Algorithm Hash digest
SHA256 bdc518767e9769e33539832e1905e2dff9066dbc80b9a55eba490ad52803169a
MD5 4fd684f426ba2afbf2aa1449f0018122
BLAKE2b-256 1f2cbe8b7399693bf5de5757bb0b652496463c779d39748409e165b36341ba1e

See more details on using hashes here.

File details

Details for the file proto_explorer-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: proto_explorer-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 6.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.4 CPython/3.12.3 Linux/6.6.87.2-microsoft-standard-WSL2

File hashes

Hashes for proto_explorer-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e7c84e735e7a4f78d5c137614208d9bfb03e5f8e5c5f4cb31d5c533735236e0f
MD5 a6f064e06128b4f95c72cd576905c715
BLAKE2b-256 0d066751469208e0ac0e41bdc9e45853e266ced0d2c4fc061c0aadc8b993737f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page