This is the first stable release 🎉 of Sinja!
It conforms to {json:api} v1.0-stable and is compatible with Sinatra 1.4 and 2.0. It includes a role-based authorization scheme; side-loading and unloading; support for client-generated IDs, patchless clients, and coalesced find requests; error handling and validation error formatting; hooks for filtering, sorting, and paging; a comprehensive test suite and Dockerized demo app; and more.
An extension that configures Sinja for Sequel is available as a separate gem.
Go forth and ship!