Sinja is a Sinatra extension for quickly building RESTful, {json:api}-compliant web services, leveraging the excellent JSONAPI::Serializers gem for payload serialization. It enhances Sinatra's DSL to enable resource-, relationship-, and role-centric API development, and it configures Sinatra with the proper settings, MIME-types, filters, conditions, and error-handling. There are many parsing (deserializing), rendering (serializing), and other "JSON API" libraries available for Ruby, but relatively few that attempt to correctly implement the entire {json:api} server specification, including routing, request header and query parameter checking, and relationship side-loading. Sinja lets you focus on the business logic of your applications without worrying about the specification, and without pulling in a heavy framework like Rails. It's lightweight, ORM-agnostic, and Ember.js-friendly!
Required Ruby Version
>= 2.3.0
Authors
Mike Pastore
Versions
- 1.3.0 October 27, 2017 (39.5 KB)
- 1.2.5 March 08, 2017 (38.5 KB)
- 1.2.4 February 13, 2017 (38 KB)
- 1.2.3 January 11, 2017 (37 KB)
- 1.2.2 December 18, 2016 (36.5 KB)