amethyst/data-builder
Amethyst Data Builder gives Laravel and PHP developers a fluent, chainable API for constructing datasets. Compose queries, filters, and transformations in one expressive builder, keeping data logic reusable, readable, and easy to test across your application.
Consider it only as a reference implementation or a vendored fork. The available signals are weak: 0 stars, 0 dependents, no community, no downstream users to validate it in production. That does not mean the code is bad — it means nobody has vouched for it, and there is no CVE watch, no issue triage, and no Stack Overflow corpus to draw on.
Concretely, evaluate it when:
Look elsewhere when:
spatie/laravel-data for DTOs, native readonly classes and named constructors on modern PHP, or your existing factory conventions. These carry community validation this package does not.To executives (30 seconds): This is a small, MIT-licensed PHP utility for constructing data objects in a readable, chainable way. It has no adoption — no stars, no dependent projects — so it is not a platform bet and carries no lock-in, but it also carries no assurance of maintenance. Recommendation: do not add it as a production dependency. Approve a one-day engineering spike to read the source and decide whether to borrow the pattern internally. Expected cost of the spike is trivial; expected benefit is either a small productivity gain in test authoring or a clean "no" with a documented rationale.
To engineering leadership: The value here is the pattern, not the package. Builder-style construction reduces boilerplate in tests and seed data and makes domain objects easier to assemble correctly. Adopting unmaintained third-party code for that is a poor trade when the pattern is ~100 lines to own outright. If the spike shows the implementation is clean, fork it, vendor it, add it to our internal namespace, and treat it as first-party code with a named owner. Ownership cost is roughly half an engineer-day per year for a utility this size.
Decision requested: a timeboxed evaluation, not an adoption. Success criteria for the spike: source audit passes, API demonstrably reduces test boilerplate versus our current conventions, and we are comfortable owning the code. If any of those fail, we document the pattern in our engineering guidelines and move on.
How can I help you explore Laravel packages today?