Better APIs with Pliny
summary
Pliny is a Sinatra-based API framework extracted from Heroku’s API that codifies logging, configuration, API versioning and JSON Schema-powered contracts so services stay consistent as they split. It uses Postgres and Jeremy Evans’ SQL library, supports request-id tracing, Range-header pagination, and first-class serializers plus mediator objects for business logic. Example app Telex is open source and demonstrates generation of clients (hk), Puma/Rollbar ops wiring, and a production-ready pattern set that Heroku uses successfully.
AI-written summary · about
chapters (28)
- 0:00Intro
- 1:15Planning
- 1:50Planet Beer
- 3:05Why services
- 4:04Single purpose
- 4:39Conways Law
- 5:46Team Structure
- 5:58Microservices
- 9:29Deployment Story
- 10:21API Considerations
- 12:48URL
- 13:15Pliny History
- 14:50API Decisions
- 16:29Cobbx
- 17:35Transfer A2
- 17:54Pliny in Ruby
- 18:09Pliny in Production
- 19:32Postgres
- 20:11Sequel
- 21:36JSON Schema
- 21:49Pliny API
- 22:23Generate clients
- 22:55Tests
- 23:44Serializers
- 24:33Versions
- 26:01Example of mediators
- 26:57Overkill
- 27:27Other features
related talks
32mRefactoring Legacy Apps with APIs and Messages
41mThe GraphQL Way: A new path for JSON APIs
39mAPI Development in 2017
37mDeveloping and Maintaining a Platform With Rails and Lotus
24mBuild The API First
35mGo Pro with POROs
24mOptimizing for API Consumers with GraphQL
43mUsing Rails Engines to Supercharge Your Team
