DEV Community

Daniel Azuma
Daniel Azuma

Posted on • Originally published at daniel-azuma.com on

Yes, you should provide a client library for your API! (RubyConf 2018)

On Nov 13, 2018, I spoke on "Yes, you should provide a client library for your API!" at RubyConf in Los Angeles, CA. The talk discussed the benefits of providing client libraries for HTTP-based APIs, and some techniques for writing them.

Here’s a small list of resources that I either mentioned in the talk or are closely related. Feel free to share more in the comments!

Talk resources

Code generation frameworks

  • OpenAPI is an open standard that works well for REST APIs.
  • gRPC is a high-performance RPC framework originally developed by Google, that uses HTTP/2 and protocol buffers.
  • Apache Thrift is an RPC framework originally developed by Facebook.

Resources related to OpenAPI

Resources related to gRPC

Related resources

Other API design resources

  • Google’s API design guide is public, and describes Google’s API design principles, some of which are specific to Google, but most of which should apply broadly to APIs in general.

Thanks

Thanks to Jeff who did a bunch of preliminary research and presented an earlier version of this talk at CodeBEAM, and to Graham for reviewing and providing suggestions. Thanks to Google for sponsoring my appearance at RubyConf this year.

Discussion (0)