Skip to content

A Go library that makes it easy to build a flexible and (mostly) unopinionated REST API with little ceremony.

License

Notifications You must be signed in to change notification settings

Workiva/go-rest

Repository files navigation

go-rest

The goal of go-rest is to provide a framework that makes it easy to build a flexible and (mostly) unopinionated REST API with little ceremony. It offers tooling for creating stable, resource-oriented endpoints with fine-grained control over input and output fields. The go-rest framework is platform-agnostic, meaning it works both on- and off- App Engine, and pluggable in that it supports custom response serializers, middleware and authentication. It also includes a utility for generating API documentation. Refer to documentation.md for more of the motivation behind go-rest.

See the examples to get started. Additionally, the rest package contains a simple client implementation for consuming go-rest APIs.

For documentation, see godoc.

Installation

go get github.com/Workiva/go-rest/rest

Contributing

Requirements to commit here:

  • Branch off master, PR back to master.
  • gofmt your code. Unformatted code will be rejected.
  • Follow the style suggestions found here.
  • Unit test coverage is required.
  • Good docstrs are required for at least exported names, and preferably for all functions.
  • Good commit messages are required.

About

A Go library that makes it easy to build a flexible and (mostly) unopinionated REST API with little ceremony.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages