Third-party libraries: goprotobuf and beyond
20 Apr 2010
Tags: protobuf, community

Andrew Gerrand

* Introduction

On March 24, Rob Pike announced [[http://code.google.com/p/goprotobuf/][goprotobuf]],
the Go bindings of Google's data interchange format [[http://code.google.com/apis/protocolbuffers/docs/overview.html][Protocol Buffers]],
called protobufs for short.
With this announcement, Go joins C++, Java,
and Python as languages providing official protobuf implementations.
This marks an important milestone in enabling the interoperability between
existing systems and those built in Go.

The goprotobuf project consists of two parts:
a 'protocol compiler plugin' that generates Go source files that,
once compiled, can access and manage protocol buffers;
and a Go package that implements run-time support for encoding (marshaling),
decoding (unmarshaling), and accessing protocol buffers.

To use goprotobuf, you first need to have both Go and [[http://code.google.com/p/protobuf/][protobuf]] installed.
You can then install the 'proto' package with [[https://golang.org/cmd/goinstall/][goinstall]]:

	goinstall goprotobuf.googlecode.com/hg/proto

And then install the protobuf compiler plugin:

	 cd $GOROOT/src/pkg/goprotobuf.googlecode.com/hg/compiler
	 make install

For more detail see the project's [[http://code.google.com/p/goprotobuf/source/browse/README][README]] file.

This is one of a growing list of third-party [[http://godashboard.appspot.com/package][Go projects]].
Since the announcement of goprotobuf, the X Go bindings have been spun off
from the standard library to the [[http://code.google.com/p/x-go-binding/][x-go-binding]] project,
and work has begun on a [[http://www.freetype.org/][Freetype]] port,
[[http://code.google.com/p/freetype-go/][freetype-go]].
Other popular third-party projects include the lightweight web framework
[[http://github.com/hoisie/web.go][web.go]],
and the Go GTK bindings [[http://github.com/mattn/go-gtk][gtk-go]].

We wish to encourage the development of other useful packages by the open source community.
If you're working on something, don't keep it to yourself - let us know
through our mailing list [[http://groups.google.com/group/golang-nuts][golang-nuts]].
