A tool to visualize .proto file hierarchies
Project description
Proto Explorer
A lightweight, interactive browser for exploring Protobuf/gRPC hierarchies
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
oneofgroup hierarchy - Correctly detect
map<key, value>fields - Load
_pb2.pyfrom custom paths - Runs locally; no server or DB needed
🌟 Demo Screenshot
🔧 Installation
Clone the repository and install dependencies:
pip install proto-explorer
▶️ Run the App
proto-explorer -m <compiled_protobuf_pb2_module> [-p </path/to/compiled/protobuf>]
️✍️ Example
- Clone a test Protobuf set (example: Google Pub/Sub):
git clone https://github.com/googleapis/googleapis.git
cd googleapis
- 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
- Launch Proto Explorer:
proto-explorer -m google.pubsub.v1.pubsub_pb2 -p .
Launching Proto Explorer...
You can now view your Streamlit app in your browser.
Local URL: http://localhost:8501
Press 'q' then Enter to quit Proto Explorer.
Now open your browser and go to: http://localhost:8501/ Enjoy exploring your Protobuf message hierarchy!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file proto_explorer-0.5.0.tar.gz.
File metadata
- Download URL: proto_explorer-0.5.0.tar.gz
- Upload date:
- Size: 10.3 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
21a5b6b075b6fe5257bdba52ef7e7a3a4e16873e3ffaf7615fb585923ece49db
|
|
| MD5 |
2a0787c26d38453b985271a8d4fb80f7
|
|
| BLAKE2b-256 |
4f7b9b49dac901fc36fb043214752aba3a25e2172da00bfaec890885d264f620
|
File details
Details for the file proto_explorer-0.5.0-py3-none-any.whl.
File metadata
- Download URL: proto_explorer-0.5.0-py3-none-any.whl
- Upload date:
- Size: 12.9 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
326f49b3a0be8edddf1c68eefcde21317652fbbcc4edf37cb9a045fa1e99acd0
|
|
| MD5 |
d2324a24970bd43e84c31fe88c55b95f
|
|
| BLAKE2b-256 |
df8f3f1a0dad64f7996eb548fd0a34ea15433cb04cff0fe50dc27fc6b5218960
|