docuccino / inference-phpstan
PHPStan and Larastan type inference for Docuccino: infers response and exception shapes from the real types in your code.
Requires
- php: ^8.3
- docuccino/attributes: v0.16.0
- docuccino/core: v0.16.0
- larastan/larastan: ^3.10
- nikic/php-parser: ^5
- phpstan/phpstan: ~2.2.0 || ~2.3.0
Requires (Dev)
- pestphp/pest: ^4.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-09-10 08:21:15 UTC
README
PHPStan and Larastan type inference for Docuccino — it reads the real types in your code to infer what your endpoints return and which exceptions they throw.
This is what makes documentation reflect your application rather than your annotations. It analyzes
controllers, actions and the types they hand back, narrows thrown types so instanceof branches
resolve, and reports response and exception shapes behind core's TypeEngine contract. There is no
Docuccino-specific type system to learn: your own PHPStan extensions improve your documentation for
free.
You do not normally use this package directly —
docuccino/laravel wires it in — but any
adapter built on docuccino/core can consume it.
Install
Analysis is a build-time job, so install it as a dev dependency:
composer require --dev docuccino/inference-phpstan
It brings PHPStan and Larastan with it. docuccino/laravel finds it at runtime and falls back to
docblock- and attribute-only documentation — with a warning on every export — when it is absent, so
a production install that ships neither package still boots.
Usage
The engine is constructed behind the core TypeEngine interface and queried by the pipeline:
$analysis = $typeEngine->analyzeAction($actionRef); // ReturnSite[], ThrownException[], …
See docuccino/laravel for the wired-up
integration.
Part of Docuccino
| Package | Role |
|---|---|
docuccino/laravel |
The Laravel adapter: provider, config, commands, viewer, integrations. Start here. |
docuccino/core |
Framework-agnostic document model, canonicalizer, identities, emitters, diff. |
docuccino/inference-phpstan ← you are here |
PHPStan + Larastan type inference. Install as a dev dependency. |
docuccino/attributes |
Dependency-free PHP attribute classes. |
Documentation
Full documentation is at docs.docuccino.app; see getting started for how the engine is wired in and how it degrades when it cannot boot.
Issues and contributing
This repository is a read-only subtree split of docuccino/docuccino. Open issues and pull requests on the monorepo — commits pushed here are overwritten. See CONTRIBUTING.md.
License
MIT. See LICENSE.