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

Laravel Package Tools Laravel Package

beyondcode/laravel-package-tools

Laravel Package Tools streamlines package development with a fluent PackageServiceProvider base class that auto-registers config, migrations, commands, views, translations, routes, and assets. Cut boilerplate and ship Laravel packages faster with less setup code.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy vs. borrow for Laravel package scaffolding. beyondcode/laravel-package-tools is a thin convention layer over Laravel's native ServiceProvider primitives — config merging, view/translation loading, migration registration, publish groups, and command discovery are all wrapped behind a fluent Package object and a PackageServiceProvider base class. The PM decision this informs is not "which library" but "do we standardize package scaffolding at all, and if so do we depend on a helper, copy the pattern into an internally owned base class, or adopt the maintained successor?" Because the repo is archived, last released 2019-03-05, with 74 stars, 0 dependents, and an MIT license, the practical answer is harvest the pattern, own the code — not "install this dependency."
  • Roadmap sizing for package, SDK, and plugin ecosystems. If the roadmap includes multiple first-party Laravel packages, modular-monolith extraction, internal SDKs, connector packages, or a partner-facing plugin architecture, package tooling is the line item that sets the recurring engineer-days cost per package. Ten packages × roughly half a day of boilerplate each is the number worth solving once. This package is the reference point that lets you size that cost before committing headcount.
  • Extensibility and partner-integration strategy. A plugin or package architecture is a distribution decision. Scaffolding ergonomics set the barrier to entry for internal teams and external partners. This package is useful prior art for validating developer experience cheaply before funding a bespoke plugin SDK.
  • Technical debt and maintenance-risk triage. The real decision is a risk-acceptance call, not a feature call: are we willing to carry an unmaintained dev-time dependency on the boot path of every package that extends it? The unit of risk is "all internal packages," not "one tooling script" — that reframing is what turns a minor convenience choice into a governance item that needs an owner and a documented exception.
  • Use cases it maps to: internal Laravel package templates, starter kits for modular codebases, customer/partner plugin SDKs, and standardized scaffolds for teams repeatedly creating Laravel packages. It is not relevant for a team shipping a single Laravel application that merely consumes third-party packages.

When to Consider This Package

Consider the pattern — not necessarily the archived package — when:

  • You are building more than a handful of Laravel packages and each one re-implements the same service-provider wiring, config publishing, migration loading, view/translation registration, and command setup.
  • You want an opinionated internal convention so package structure is predictable across teams and code review of new packages is faster.
  • You are prototyping a plugin architecture and want to validate developer experience before funding a bespoke solution.
  • You need reference material for a small in-house base ServiceProvider your team owns and maintains.

Look elsewhere — and for most production decisions, that is likely the call — when:

  • You need maintained code. The package is archived, has had no release since 2019-03-05, and predates multiple Laravel major versions and the PHP 8.x line. Much of this ergonomics has since been absorbed upstream; a maintained successor (e.g. spatie/laravel-package-tools, conceptually aligned) or a small internally owned base class is safer.
  • You cannot tolerate zero ecosystem support. With 0 dependents there is effectively no community validation, no upstream patch path, no maintainer, no issue triage, no security advisories, and no compatibility matrix. Any bug or upgrade breakage becomes internal work.
  • The scope is trivial. For one or two packages, hand-rolling a small base class is cheaper than adopting, learning, and eventually owning a dead library.
  • The work is security-, payments-, or compliance-adjacent. An unmaintained boot-path dependency in those areas needs an explicit exception and sign-off.
  • You are starting new work. Do not adopt the archived package for new packages; use it as prior art, or migrate to a maintained alternative.

Bottom line for a PM: treat this as reference material and a design pattern to copy, not a dependency to install. The useful value has largely been extracted already — read it, replicate the relevant parts into a small internal helper you control, and avoid inheriting a dead dependency.

How to Pitch It (Stakeholders)

To executives: This is a small, free developer-convenience library for engineers who build Laravel packages. It does not touch customers, revenue, or runtime behavior — it only affects how quickly teams can stand up new packages and integrations. The strategic question it surfaces is whether the roadmap needs a package or plugin ecosystem. If yes, we should standardize tooling — but build or adopt a small maintained solution rather than depend on an archived project. The cost to do that is low: days, not weeks. The cost of ignoring it while package count grows is repeated boilerplate, inconsistent conventions across teams, and a future forced migration across every dependent package at once.

To engineering: The library is archived, last released March 2019, with 74 stars, 0 dependents, and an MIT license. It predates Laravel 7 through 11 and the PHP 8.x line, and carries no maintainer, no release cadence, no security-response process, and no compatibility matrix. Its intrinsic security risk is low — it performs no I/O and no network access — but the lifecycle risk is high: it sits on the boot path of every package that extends it, and stale Composer constraints can block framework upgrades org-wide. Recommendation: harvest, don't adopt. Use it as a reference implementation for our own small base ServiceProvider/package helper checked into our codebase, or migrate to the maintained successor, whose method mapping is close to one-to-one (hasConfigFile, hasViews, hasMigrations, hasTranslations, hasRoute, hasCommands) and whose path/publish-tag conventions are preserved — the diff is typically tens of lines per provider. If a team insists on installing it anyway, treat that as a deliberate risk acceptance: verify compatibility against the full PHP × Laravel matrix, document it as a known-unmaintained dev dependency in the ADR, assign an owner for eventual migration, and add a CI dependency-review gate so it cannot spread. Evaluation effort is an afternoon and switching cost is low, so this is a cheap decision to make quickly rather than debate. Watch specifically for partial migration — two base classes in one codebase cause silent behavioral drift in publish tags, migration loading, and boot-order hook timing.

One-line summary for a decision log: "Useful prior art for Laravel package scaffolding; unmaintained since 2019 — borrow the pattern, own the code, don't take the dependency."

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.
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle