This document provides an overview of the essential directories and important files at the root level of the Instructor PHP monorepo.
Contains all independent PHP packages that make up the Instructor ecosystem. Each package has its own composer.json, tests, and documentation. Current packages include:
- Core:
instructor,config,events,messages,utils,schema,templates - Extended functionality:
addons,auxiliary,polyglot,setup,hub,tell,dynamic - Development tools:
evals,experimental,doctor - HTTP client:
http-client - Pipeline processing:
pipeline
Comprehensive collection of working examples demonstrating various features, complexity levels, API integrations, and prompting techniques. Examples are organized by topic and difficulty to help users learn and implement different patterns.
Development and maintenance automation scripts:
publish-ver.sh- Release management and version publishingsync-ver.sh- Synchronize versions across all packagesload-packages.sh- Load centralized package configurationgenerate-split-matrix.sh- Generate GitHub Actions matrix from package configupdate-split-yml.sh- Update split.yml with centralized package configurationrun-all-tests.sh- Execute tests for all packagescomposer-*-all.sh- Composer operations across packagescreate-package.php- Generate new package structure
Documentation website skeleton and root-level files. These are merged with documentation files from ./packages/*/docs/ to build the complete documentation distribution in ./docs-build/.
Executable CLI tools:
instructor-hub- List, view, and execute runnable code samples from the./examples/foldertell- Interactive CLI assistantinstructor-setup- Project setup wizard
Evaluation and testing frameworks for model performance assessment with different complexity levels and extraction scenarios.
Default configuration files for various components (debug, HTTP, LLM, prompts, structured output).
composer.json/composer.lock- Main project dependencies and autoloadingphpstan.neon/psalm.xml- Static analysis configurationsphpunit.xml- Test configuration
README.md- Main project documentation and getting started guideCONTRIBUTOR_GUIDE.md- Comprehensive guide for contributors and developersLICENSE- Project license information
packages.json- Centralized package configuration for monorepo managementpackage-config.example.json- Template for creating new packagesmkdocs.yml- Documentation site configuration
archived/- Legacy code and deprecated implementationsnotes/- Development notes, ideas, and planning documentsscratchpad/- Experimental code and proof-of-concepts
vendor/- Composer dependenciestmp/- Temporary files and build artifactsdocs-build/- Generated documentation files (built from./docs/+./packages/*/docs/)prompts/- Template files for prompts (Twig, Blade)tests/- Root-level test files and configuration