luminix/frontend
Luminix Frontend gives Laravel apps a structured, component-driven frontend layer, pairing conventions and tooling that simplify view rendering, asset handling, and client-side integration so teams can build and maintain modern interfaces with less boilerplate.
ManifestService via Spatie\ModelInfo + Luminix Finder), with a single views/embed.blade.php entry point and a config/frontend.php surface. That makes it a candidate when deciding whether the UI should be driven by backend-declared schema (manifest → reducers → payload keys) rather than hand-written per-screen controllers.luminix/backend (hard dependency for ManifestService, Finder, ModelInfo) and the surrounding package family. That's a stack commitment, not a utility-library pick.skill/ tree (SKILL.md + references/) published into the host app via vendor:publish --tag=luminix-skill --force. This is a genuine differentiator for teams standardizing on coding agents: the contract lives in the repo the agent can read, and is versioned to the commit. It supports decisions like "can we let an agent wire up CRUD screens against this manifest without a human reading source?"ManifestService (and its runningInConsole() suppression) is a product-level authorization decision baked into the manifest — relevant when deciding where access rules live (model layer vs. frontend config).Consider it when:
luminix/backend is a hard requirement; loosening it "breaks the manifest, not just the models it describes."src/, one config, one view) and therefore cheap to read, fork, or abandon.Look elsewhere when:
luminix/backend and don't intend to be — ManifestService depends on its Finder facade and Spatie's ModelInfo; adapting it is a fork, not a config change.composer lint is declared but unusable (no phpstan in require-dev, no config), and composer.json carries a dead Luminix\Frontend\Tests\ → tests/ autoload-dev entry. Neither breaks runtime, but both signal a package still being cleaned up.To executives: This is a small, low-cost bet inside the Luminix ecosystem, not a platform replacement. It gives us one place where Eloquent models become a frontend manifest — config, one Blade embed, and a visibility filter — so screens stop being bespoke. The differentiated part is that the package ships its own machine-readable usage guide, so AI coding agents can integrate it correctly without reading source; that's a hiring-and-velocity argument more than a feature argument. The honest caveat: it's pre-traction (no stars, no dependents, single-vendor), so treat it as an experiment with an exit ramp, not an infrastructure standard.
To engineering: The product surface is deliberately tiny — src/, config/frontend.php, views/embed.blade.php. It's tested with orchestra/testbench against a throwaway host app, with a 10-job CI matrix across Laravel 11/12/13 × PHP 8.2–8.5, so the support claim is enforced rather than advertised. Two things to flag in review: ManifestService hard-depends on luminix/backend (Finder, and Spatie ModelInfo through it) — that's the real coupling. And the manifest suppresses the guest filter under runningInConsole(), so authorization tests need TestCase::simulateHttpContext(); it's an easy trap for anyone writing feature tests. Semver is derived mechanically from commit subjects, which means version bumps are predictable but also uncurated — pin deliberately. If we adopt, budget for contributing the English README and lint config back rather than absorbing them as internal debt.
How can I help you explore Laravel packages today?