Protobuf Schema Viewer
Paste a .proto message to view field names, types, rules, and tag numbers, catch duplicate tags, and export parsed fields as JSON in your browser.
🔒 This tool runs entirely in your browser. Your files are never uploaded to a server.
Developer
Protobuf Schema Viewer
Edit the schema and parse it to refresh the table.
Message fields
| Field | Type | Rule | Tag |
|---|
How it works
- Paste a Protocol Buffers definition containing a flat message.
- Parse it to see each field's name, type, rule, and tag, with duplicate-tag warnings.
- Copy the field table or download the parsed fields as JSON for docs or a code review.
FAQ
What does this actually show?
A readable field table - name, type, rule, and tag number - extracted from the first flat message in a Protocol Buffers definition, so you do not have to scan raw .proto syntax line by line.
Does it support nested messages and enums?
This lightweight preview focuses on the first flat message. For deeply nested messages, oneofs, imports, or full compiler validation, use protoc, buf, or your IDE's protobuf plugin.
Is my schema uploaded anywhere?
No - everything happens in your browser. Your .proto content is never sent to a server.
Does it work with proto2 as well as proto3 syntax?
Yes. Field parsing looks for the type name = number; pattern used by both proto2 and proto3, including proto2's optional and required keywords, regardless of the syntax declaration at the top of the file.
Does this convert my proto message into a JSON payload?
No. It exports the parsed field table (name, type, rule, tag) as JSON, not a sample data payload. For a mock JSON payload with placeholder values, use the gRPC Proto to JSON Sample tool.
How we compare
| Feature | Online Tool Store | protoc or buf | Reading the .proto file directly |
|---|---|---|---|
| No compiler toolchain needed | Yes | No | Yes |
| Readable field table | Yes | Sometimes | No |
| Duplicate tag warning | Yes | Yes | Manual |
| JSON field export | Yes | No | No |
For a quick local view of a flat message during review, this is faster than scanning raw syntax or setting up a compiler toolchain.