Truss helps you build go-kit microservices without having to worry about writing or maintaining boilerplate code.
Switch branches/tags
Clone or download
zaquestion Merge pull request #259 from MatthewHartstonge/master
remove protoc-gen-truss-protocast from windows install script.
Latest commit 7dc4d5d May 28, 2018

Truss Build Status

Truss handles the painful parts of services, freeing you to focus on the business logic.

Everything all the time forever


Currently, there is no binary distribution of Truss, you must install from source.

To install this software, you must:

  1. Install protoc 3 or newer. The easiest way is to download a release from github and add to $PATH. Otherwise install from source.

  2. Install Truss with

    go get -u -d
    cd $GOPATH/src/
    make dependencies

    On Windows, do the following instead:

    go get -u -d
    cd %GOPATH%/src/


Using Truss is easy. You define your service with gRPC and protoc buffers, and Truss uses that definition to create an entire service. You can even add http annotations for HTTP 1.1/JSON transport!

Then you open the handlers/handlers.go, add you business logic, and you're good to go.

Here is an example service definition: Echo Service

Try Truss for yourself on Echo Service to see the service that is generated:

truss _example/echo.proto

See and for more details.


See for details.