Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Dev Tool Laravel Package

juzaweb/dev-tool

JuzaWeb Dev Tool is a Laravel development toolkit for the JuzaWeb CMS. It provides artisan commands and scaffolding helpers to quickly generate plugins, themes, controllers, models, and CRUD modules, speeding up addon development and simplifying common backend tasks for package authors.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Developer-velocity roadmap. This is a dev-only toolkit, so it belongs in the "internal productivity" line of your roadmap rather than the customer-facing one. It directly supports decisions about how much boilerplate your team writes by hand versus generates: page blocks, modules, agents, files/stubs, assets, and GitHub releases are all one command away. If your team repeatedly scaffolds the same structures, this package is evidence that the work is commoditised and shouldn't be estimated as bespoke engineering.
  • Build vs buy for internal tooling. Adopting juzaweb/dev-tool is a decision not to build a homegrown generator suite. For a Juzaweb-based product, that's usually the right trade: the generators encode CMS conventions you'd otherwise have to reverse-engineer and document yourself. The counter-decision — building your own — is only justified if you need materially different arguments, output layouts, or non-Juzaweb targets.
  • Standardisation and onboarding. Scaffolding helpers are a lever on consistency, not just speed. Generated code follows the same shape every time, which reduces review variance, shortens onboarding for new engineers, and makes conventions enforceable rather than tribal knowledge. This directly supports decisions about how you document and enforce engineering standards.
  • Release process decisions. GithubReleaseModuleCommand supports a decision to automate releases from CI on tag push with a repo-scoped token. That's a process choice (no laptop publishing, no manual changelog steps) that a PM cares about because it affects release cadence and incident risk.
  • CI quality-gate investment. The 2.0.5 release adds Pint style checks and fixes .stub formatting — a signal that generated code and stubs are a real source of style drift. This supports a decision to run pint --test in your pipeline and to exclude .stub files from normal formatting.
  • Use cases worth validating first. Module/page-block scaffolding in a Juzaweb CMS app, setup scripts that fetch and cache styles (DownloadStyleCommand used as a build step, not ad hoc), and thin wrapper commands (app:make-block) that hide package flags from developers. If none of these map to your backlog, the package has no product surface for you.

When to Consider This Package

Adopt when all of the following hold:

  • You are building on Juzaweb CMS or a Juzaweb-style module/package architecture. The package's value is explicitly tied to those conventions.
  • Your team repeatedly scaffolds the same structures and the repetition is showing up as inconsistency or wasted effort in estimates.
  • You want a dev-only, require-dev addition with no production runtime footprint — it's Artisan commands and helpers, not a runtime library.
  • You have the discipline to pin to ^2.0, let low-risk patches through, and keep an exit plan. This is a single-maintainer, low-star package; treat it as a convenience layer, not a foundation.
  • You're comfortable customising via config and published stubs rather than overriding package classes. The frequent small releases make class overrides brittle.

Look elsewhere or skip when:

  • You're not on Juzaweb. The generators encode ecosystem-specific conventions; outside that context you're paying adoption cost for little return.
  • You need vendor-grade support, SLAs, or a large contributor base. One star and a single maintainer is a real bus-factor risk for anything load-bearing.
  • Your scaffolding needs are already solved by Laravel's own make:* commands, a mature generator package, or an in-house tool with your exact conventions.
  • Any part of it would boot in production. Dev tooling leaking into production registration is a security and stability concern; if you can't gate it to local/testing, don't adopt it.
  • You'd have to fork commands to get the output you need. At that point you own the maintenance and the buy-vs-build calculus flips.

Specific risks to weigh in the decision: command-name collisions (dump, make:*) with framework or other packages' commands — verify with php artisan list after install; stale-cache failure modes in DownloadStyleCommand since PR #23 added content caching, which makes a bad first download persist; and the need to re-verify published stubs after upgrades because .stub/Pint interactions changed in 2.0.5.

How to Pitch It (Stakeholders)

To executives: This is a small, free, dev-only dependency that removes repetitive boilerplate from our engineering workflow. It costs nothing at runtime, ships no customer-facing code, and is installed as a development dependency — so the risk profile is low and the upside is measured in developer hours and consistency, not in new features. The trade-off is ecosystem lock-in: it's built for Juzaweb projects and maintained by a single author, so we should treat it as a convenience, pin the version, and keep it out of anything critical. Recommendation: pilot it on one module-scaffolding workflow, measure whether generated output actually saves review and writing time, then decide whether to make it standard.

To engineering: It gives us Artisan generators for page blocks, modules, and agents, plus file/stub generation helpers, an asset downloader with content caching, a dump command, and GitHub release automation. The right way to use it is: customise stubs and config, wrap the generators in our own thin task commands so developers don't memorise flags, run pint --test in CI so generated output matches house style (and keep .stub out of Pint's normal formatting), and drive GithubReleaseModuleCommand from CI on tag push with a repo-scoped token — never from a laptop. Gate registration to local/testing so nothing boots in production. 2.0.5 is tests, refactors, caching, and CI only — no breaking changes, no new user-facing behaviour — so it's a safe patch bump. Upgrade cadence: pin ^2.0, let patches through, and re-check published stubs after each upgrade since the .stub/Pint interaction changed. Treat generated code as a starting point and review the diff; never commit generator output unreviewed.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
tequilarapido/trackit
gregsphotography/site-builder-filament
cabaoctavio/laravel-query-log
gregsphotography/site-builder-components
io-digital/clickatell
snowsoft/laravel-admin
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator
equipc/laravel-email-database-log
adedsec/nova-translated-labels
wazza/laravel-db-encryption
hokny/laravel-generator
vonsogt/backup
jengo/queues
jeremykenedy/laravel-observability
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums