- What is tdwesten/statamic-builder used for?
- It is a Statamic addon that lets you define blueprints, fieldsets, collections, navigations, and taxonomies as PHP classes instead of hand-written YAML files. The package is a developer-experience layer that keeps your content model inside the PHP application boundary, which can improve readability, IDE autocompletion, and diffs. It does not change front-end rendering or the control panel data model by itself.
- How do I install tdwesten/statamic-builder in a Laravel project?
- Install it with Composer and register the package service provider as you would for a standard Statamic addon. Your project must already use Laravel and a compatible Statamic version, and you should pin both the package and Statamic together. Where possible, install it as a dev dependency and establish a generate or verify step before relying on it for production content types.
- Which Statamic versions are supported by statamic-builder?
- The provided package overview does not list explicit Statamic version constraints, so check the package composer.json and release notes before adopting it. Statamic changes blueprint and fieldset schemas across major versions, so an unsupported major can block your upgrade path. Pin Statamic and the builder together and treat them as a coupled upgrade unit.
- Does Statamic Builder generate YAML files or override Statamic config at runtime?
- This is the key architectural question to answer before adoption: a build-time generator that writes YAML keeps the blast radius low, while a runtime override that intercepts Statamic config loading makes every request depend on the package. The provided overview leaves this unresolved, so inspect the source or test behavior on a branch. Your production risk assessment should change materially based on the answer.
- Can I use Statamic Builder with existing YAML blueprints?
- Yes, but migrate incrementally rather than doing a big-bang conversion. Pilot one new collection and one taxonomy, then convert two or three existing blueprints in a branch and diff the generated output against the current YAML byte-for-byte modulo formatting. Only expand after equivalence is proven and you have frozen control panel editing for those content types.
- What happens when an editor changes a blueprint in the Statamic control panel?
- If both PHP builder classes and control panel edits can mutate the same blueprint, you create dual sources of truth and potential drift. Depending on whether the package overwrites on the next generate or detects drift, CP changes may be lost or may silently diverge from the builder definition. Freeze CP-side blueprint editing once a content type is under builder control and add a CI guard that fails when generated artifacts drift from committed state.
- Does statamic-builder support Bard, Replicator, Grid, sets, and imported fieldsets?
- Complex fieldtype coverage is not documented in the provided overview, and this is a practical adoption blocker if your content model depends on Bard, Replicator, Grid, sets, tabs, or imported fieldsets. Verify that the builder API can express every fieldtype you use, including fieldtypes from third-party Statamic addons, before committing. Start the pilot with real complex fields rather than primitives alone.
- Does Statamic Builder support multi-site and localization?
- Multi-site and localization support for blueprints and collections is listed as an open question in the package assessment and is not confirmed by the provided overview. If your project uses multiple sites or localized content models, test those cases explicitly in a branch before standardizing on the builder. Treat missing multi-site coverage as a hard blocker for any content type that needs it.
- Is tdwesten/statamic-builder safe for production use?
- Treat it as promising but low-maturity: the package has limited production exposure and a single maintainer, which is a structural dependency risk when coupled to Statamic's evolving schema. Verify the reported last release date, because the overview flags it as anomalous, and use release cadence as your best maintenance-health signal. Safe production use depends on version pinning, a CI drift guard, and a documented upgrade policy tied to Statamic releases.
- What are alternatives to defining Statamic blueprints in PHP classes?
- The main alternatives are hand-written YAML blueprints and fieldsets managed in the Statamic control panel, or building your own small generator around Statamic's native configuration. Hand-authored YAML is the default and has no dependency risk, but it lacks IDE support, composition, and clean diffs. Teams that want PHP-first configuration without a third-party package can write an internal scaffolding command tailored to their own fieldtype surface.