coursera / courier   3.0.0

Apache License 2.0 Website GitHub

Data interchange for the modern web + mobile stack.

Scala versions: 2.12 2.11 2.10
sbt plugins: 1.0 0.13

Build Status


Modern data interchange system for web + mobile stacks that combines an expressive schema language with language idiomatic data binding generators.

Website | Getting Started | Schema Language | Data Protocols

Why Courier?

Courier is the only comprehensive, schema based data system centered around JSON. Binary protocols, such as Protobuf and Thrift have proven that data schemas are an excellent way to share the structure of data messaged between multiple systems and programming languages. For JSON, however, there are few systems that take a schema driven approach and none that provide satisfactory type systems. Courier's solves this problem, providing a type safe, schema driven way of sharing JSON data between backends, web and mobile.

To learn more, see


Courier is Apache 2.0 Licensed.


For development and submitting pull requests, please see the Contributing document.