vitisstudio / restdb-contracts
Contracts, value objects, and capability primitives for the RestDB Eloquent driver
v0.1.2
2026-08-06 17:33 UTC
Requires
- php: ^8.2
- illuminate/http: ^12.0||^13.0
README
The SPI for the RestDB Eloquent driver: contracts, immutable value objects, and capability primitives. Depends on nothing from the driver — implement these to build an adapter.
- Contracts —
Adapter,RequestCompiler,ResponseParser,Paginator,Authenticator/RefreshableAuthenticator,ResolvesEndpoints,FilterDialect,SpecParser, and theRestDBExceptionmarker. - Values — intents (
SelectIntent,InsertIntent,UpdateIntent,DeleteIntent), filters (FilterGroup,Condition), paging (PageRequest,PageInfo), wire shapes (CompiledRequest,ApiResponse,ResultPage,WriteResult,ErrorBag,EmptyResult), andConnectionConfig. - Capabilities — the
CapabilityandOperatorenums, the immutableCapabilitySet, and theCapabilityGatewhose exceptions name the connection, capability, model, method, and fix.
An adapter is a factory of strategies — compiler, parser, paginator, endpoint
resolver, capability baseline. Validate yours against
Vitis\RestDB\Testing\AdapterConformanceKit (shipped with vitisstudio/restdb).