The Ruby SDK generator is now generally available, with modern type system support and a minimal-dependency design that feels right at home in the Ruby ecosystem.
Sorbet: Each SDK includes comprehensive RBI annotations, including enums and aliases, without a dependency on
sorbet-runtime
.RBS: Each SDK also includes Ruby 3’s
RBS
type annotations, compatible with thesteep
typechecker.YARD: Full YARD docs support for methods and types, with navigable links between related objects, published to Gemdocs automatically.
Tooling support: Great auto-completion for ecosystem tool chains, including generics for pagination & streaming for all supported language services.
File uploads & downloads: Full lazy upload and download support with conveniences like Pathname support.
Type conversions: Automatic conversions to
Time
,Integer
and so on as appropriate.Pattern matching: All data containers support Ruby 3 pattern matching.
Minimal dependencies: The SDKs use stdlib
net/http
for requests, relying only onconnection_pool
.Introspection: Pretty printing is supported for all internal types, for both classes and instances.
Streaming: Support for SSE & JSON-L streams as ruby Enumerators, allowing for convenient
.map
,.filter
, and so on, with automatic closing during GC.Advanced use cases: Raw and undocumented request support.
We plan to add support for middleware soon, along with other conveniences; if there’s more you’d like to see, please share: [email protected].