Search by

itaja / itaja-laravel

nemesix

Itaja for Laravel: declare what you sell in code, push it, receive webhooks as Laravel events.

Package info

github.com/itaja/itaja-sdks

Homepage

Language:TypeScript

pkg:composer/itaja/itaja-laravel

Statistics

Installs: 5

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 4

v0.3.0 2026-10-21 07:30 UTC

README

Every Itaja SDK, one package per language, in one repository. Each SDK offers the same four gestures — declare your catalogue in code, push it, mount one webhook route, react to typed events — as fixed by ADR 0015.

Package Registry Folder Status
@itaja/node npm packages/node 0.3.0
itaja PyPI packages/python 0.3.0
itaja pub.dev packages/dart planned
itaja/itaja-laravel Packagist packages/laravel 0.3.0

Shared contracts — spec/

Written once, read by every SDK. Never edit a copy inside a package.

File What it is Source
openapi.json The developer API itaja-services → backend/apps/dev-api/openapi.json
catalog.schema.json The canonical catalogue push sends itaja-services → backend/apps/dev-api/catalog.schema.json
signature-vectors.json Webhook deliveries signed by the backend's own signOutboundWebhook generated from itaja-services

Every SDK must accept every vector, and build a catalogue document the schema validates.

CI / CD

  • CI (.github/workflows/ci-<lang>.yml) runs only when its package or spec/ changes. A change to spec/ runs every SDK.
  • CD (.github/workflows/release-<lang>.yml) publishes one package on a prefixed tag — node-v0.1.0, python-v0.1.0 … — after its full test suite passes. Each SDK has its own semver. Nothing is ever published from a laptop.

Layout

spec/              shared contracts
packages/<lang>/   one SDK, with its own native tooling (pnpm, uv, dart, composer)
.github/workflows/ ci-<lang>.yml, release-<lang>.yml