Tool

Protobuf Decoder

Pawit Pornkitprasan's React web application for decoding Protocol Buffers data without the original .proto files, offered as a hosted page or run locally, with all decoding done in the browser. Pasted hex or base64 input, or an uploaded file, is split into a table of byte ranges, field numbers, wire types and contents: varints are shown as unsigned, two's-complement and zigzag integers, fixed32 and fixed64 values as integers and floating-point numbers, and length-delimited fields as nested messages when they parse cleanly, otherwise as UTF-8 strings or bytes. It skips a leading gRPC message header and can optionally split a stream of varint length-delimited messages.

Targets
Protocol
Category
Protocol analysis tools
Relationship
Foundation tool
Sources reviewed

Requirements & limits

  • No releases or tags; package.json declares a private 0.1.0 package. The reviewed master commit of 2026-10-17 is a Dependabot dependency bump, and the most recent functional changes added file upload in 2024 and varint length-delimited input in 2025. CircleCI runs the Vitest unit tests on Node 20.11 and uploads coverage to Codecov.
  • The hosted page at protobuf-decoder.netlify.app needs only a browser, and the app states that all decoding is done locally in JavaScript. Running it locally needs Node.js and npm: npm install, then npm start for the Vite development server, or npm run build for a static build.
  • Decoding is schema-less and heuristic: field names and declared types are not recovered, each length-delimited field is guessed to be a nested message, string or bytes, the source marks repeated-field support as a TODO, and the group wire types are not handled, so decoding stops there and the remaining input is shown as left-over bytes. It only decodes; there is no editing, re-encoding or proxy integration, and users supply their own captured messages.
  • MIT (Copyright 2019 Pawit Pornkitprasan). No messages were decoded for this entry, and the reviewed sources establish no REA connection.

About this entry

The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · pawitp/protobuf-decoder · Revision 7d0b5ed
  2. src/App.jsx GitHub · pawitp/protobuf-decoder · Revision 7d0b5ed
  3. src/protobufDecoder.js GitHub · pawitp/protobuf-decoder · Revision 7d0b5ed
  4. src/protobufPartDecoder.jsx GitHub · pawitp/protobuf-decoder · Revision 7d0b5ed
  5. src/ProtobufPart.jsx GitHub · pawitp/protobuf-decoder · Revision 7d0b5ed
  6. package.json GitHub · pawitp/protobuf-decoder · Revision 7d0b5ed
  7. .circleci/config.yml GitHub · pawitp/protobuf-decoder · Revision 7d0b5ed
  8. LICENSE GitHub · pawitp/protobuf-decoder · Revision 7d0b5ed
  9. https://protobuf-decoder.netlify.app/

More in Protocols

All 66 entries in Protocols