docuccino / core
Framework-agnostic UIR model, canonicalizer, identity, validator and emitters.
Package info
pkg:composer/docuccino/core
Requires
- php: ^8.3
- composer-runtime-api: ^2
- docuccino/attributes: v0.1.1
- nikic/php-parser: ^5
- opis/json-schema: ^2.4
- phpstan/phpdoc-parser: ^2
- psr/container: ^1.1 || ^2.0
- symfony/yaml: ^7.0 || ^8.0
README
This repository is a read-only subtree split of docuccino/docuccino. Open issues and pull requests on the monorepo — commits pushed here are overwritten.
The framework-agnostic heart of Docuccino: the UIR
document model, canonicalizer, identity/hashing, JSON-Schema validator, the
OpenAPI / UIR emitters and the phpdoc type grammar every adapter reads type
strings and docblocks with. It has no framework dependency — and no
static-analysis dependency — and is consumed by the framework adapters (e.g.
docuccino/laravel).
Install
composer require docuccino/core
Usage
Emit a canonical OpenAPI 3.2 document from a built UIR document:
use Docuccino\Core\Emit\EmitOptions; use Docuccino\Core\Emit\OpenApi32Emitter; $json = (new OpenApi32Emitter())->emit($uirDocument, new EmitOptions());
Documentation
Full documentation is at https://docs.docuccino.app. See especially the UIR format overview and spec hosting; the versioned UIR JSON Schema is served at https://spec.docuccino.app/uir/1.0/schema.json.
License
MIT. See LICENSE.