Paul Verest
Paul Verest

Reputation: 63912

Visualize gRPC and Protocol Buffers

We are close to 100 .proto files, where every may define around 10 IDL structures (like service or message).

Is there a way to visualize of of them, including references (from one file to other). For example similar to UML class diagram.

Possibly there are configurable visualizer for Java/C++.

Quote from https://developers.google.com/protocol-buffers/docs/overview

Protocol buffers are now Google's lingua franca for data – at time of writing, there are 48,162 different message types defined in the Google code tree across 12,183 .proto files.

I wonder how they handle this.

Upvotes: 29

Views: 17160

Answers (2)

grundic
grundic

Reputation: 4921

I have similar problem: I'm trying to read huge amount of protobufs and understand relation between them. It would be very useful to build a visual representation of them to see what's available and how they're connected to each other.

I've found several projects, maybe they would help someone:

Though, for me they didn't worked well for different reasons, but you can try them.

Upvotes: 18

grayhemp
grayhemp

Reputation: 421

https://github.com/seamia/protodot

  • Super easy to use and pretty powerful tool
  • Generates .dot (and .svg/.png if graphviz is installed) files from .proto
  • Discovers all the dependencies and doesn't require all of them to be present
  • Filters by specified resources (messages, rpcs, services, enums)
  • Can generate import dependency graph

Upvotes: 28

Related Questions