optix/eloquent-draftable
A Laravel package that adds draft and published states to Eloquent models, letting you save work-in-progress records and publish them later. Drafts stay separate from live content, so unfinished entries remain hidden from your application's normal queries until you're ready.
UPDATE model and a versioned model where the last published state persists until an explicit publish action. Relevant for any product with an audit/compliance or "don't break the live page" requirement.published_at/state column, query scoping to hide drafts, preview routes).To executives: A small open-source add-on for our Laravel stack that lets content models hold a "draft" copy alongside the published version — the capability behind "edit without changing the live page." The idea is valuable and maps directly to our content/publishing roadmap. The package got a fresh release (v2.1.0, adding Laravel 8 support and dropping old PHP 7.2), so it isn't dead — but it's still low-maturity (limited adoption, no modern-framework support beyond Laravel 8, no meaningful dependent ecosystem). Recommendation holds: treat it as a design reference and build the behavior in-house with a few days' engineering rather than adopting a dependency that trails the framework. Net: low effort, low risk, high alignment with the content-workflow roadmap; no licensing cost (MIT).
To engineering: The package demonstrates a draftable-model pattern — a state/published_at column plus query scoping and preview resolution. v2.1.0 confirms it targets Laravel 8 (and drops PHP 7.2), so it's installable on an L8 baseline but nothing newer; if you're on L9+, expect to adapt it. It remains effectively a one-person, low-activity project. Recommendation: borrow the pattern, implement a lightweight internal trait we own, add tests for relationship and preview edge cases, and keep the dependency surface clean.
How can I help you explore Laravel packages today?