/protobuf.js

Protocol Buffers for JavaScript. Finally.

Primary LanguageJavaScriptApache License 2.0Apache-2.0

protobuf.js - Protocol Buffers for JavaScript. Finally.

Protocol Buffers are a language-neutral, platform-neutral, extensible way of serializing structured data for use in communications protocols, data storage, and more, originally designed at Google (see).

protobuf.js is a pure JavaScript implementation on top of bytebuffer.js including a .proto parser, message class building and simple encoding and decoding. There is no compilation step required, it's super easy to use and it works out of the box on .proto files!

Build Status Donate

Getting started

Features

  • RequireJS/AMD compatible
  • node.js/CommonJS compatible, also available via npm
  • Browser compatible
  • Closure Compiler compatible (fully annotated, externs)
  • Fully documented using jsdoc3
  • Well tested through test.js
  • bytebuffer.js is the only production dependency
  • Fully compatible to the official implementation including advanced features
  • proto2js command line utility

Documentation

Tests

Downloads

CDN usage

<script src="//cdn.rawgit.com/dcodeIO/protobuf.js/VERSION/dist/protobuf.js"></script>

With VERSION replaced by a valid tag or just master for testing the latest master build.

Contributors

Daniel Wirtz (maintainer), Frank Xu, Dretch, shirmin, Nikolai Vavilov

License: Apache License, Version 2.0 - Logo derived from W3C HTML5 Logos (CC A 3.0)