craftile/core
Craftile Core is the foundational Laravel/PHP package for the Craftile ecosystem, providing shared utilities, service provider wiring, configuration defaults, and common building blocks. Use it as the base dependency for Craftile-powered applications and extensions.
craftile/core is a read-only subtree split of the monorepo at craftile/php. Treat this repo as a reading surface, not an install target.
composer require craftile/core. The canonical composer.json, tags, issue tracker, and PR flow live in craftile/php. Requiring the split directly gives you a package with no issues, no PRs, and version tags that may lag the parent. Install via composer require craftile/php (verify the exact install line against the parent README — the split provides no require hints of its own).craftile/php README and CHANGELOG, then the src/ tree of this split for the concrete class layout. The split is genuinely the fastest place to git log a diff of what changed in core between two versions — the folder history is cleaner here than in the monorepo.php artisan vendor:publish --provider="Craftile\...") and any migrations the parent docs mention. Confirm the service provider registers via auto-discovery; if it doesn't, add it to bootstrap/providers.php (Laravel 11+) or config/app.php.Post or Product. Define the resource, point it at its model, and confirm you get a route, an index table, and a create/edit form out of the box. That single vertical slice tells you more about fit than reading the whole source tree.Craftile is declarative — you describe what a resource is, and it produces the routing, tables, forms, and validation. Day-to-day work happens almost entirely in resource classes plus a bit of panel configuration.
BlockRepository, ContentRenderer, or resource-registrar equivalents) that your app code calls. Craftile sits behind them. This is the difference between a breaking upstream change costing you an afternoon and costing you a sprint.craftile/php. Pin exact versions in composer.json — pre-1.0 with unproven semver means a caret range can bite you on a patch bump.src/. They aren't. Stay on the public surface, wrap it, and treat anything not exposed in the parent docs as subject to change without notice.How can I help you explore Laravel packages today?