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 Modular Api Laravel Package

tetes-de-pioche/laravel-modular-api

Laravel Modular API helps you build Laravel APIs from self-contained, reusable modules. Keep routes, controllers, models, and services organized per module for cleaner code, easier maintenance, and scalable structure. Ideal for teams splitting large APIs into independent feature packages.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for API scaffolding. laravel-modular-api sits in the "conventions + code generation" layer rather than the runtime layer. The decision it informs is not "can Laravel do this?" (it can) but "do we want to own an internal module/API generator, or adopt and shape an existing one?" That is a real cost line: an internal generator is typically 2–6 weeks of initial build plus permanent maintenance drag every time Laravel ships a major version.
  • Standardizing API module structure across teams. Packages like this earn their keep when you have several API surfaces (public, partner, internal, admin) and want one opinionated layout for routing, versioning, and request/response typing. The value is convention enforcement, not features — the thing you're buying is "every module looks the same," which pays out in onboarding time and PR review churn.
  • Roadmap sequencing for platform/API work. If the roadmap includes versioned public APIs or splitting a monolith into modules, evaluating this package belongs in the discovery spike before you commit to a folder structure. Retrofitting a module convention onto an existing codebase is materially more expensive than starting with one.
  • Greenfield vs. retrofit calls. This is a greenfield-first tool. Adoption cost is low on a new service and high on a mature codebase with entrenched structure.
  • The v1.0.3 fix specifically: the patch corrects API type identification / extraction. Translation for planning purposes: the generation or introspection step that decides what "type" an API endpoint is was producing incorrect results in some cases. That is a correctness bug in the scaffolding path, not a cosmetic one — it means output generated on v1.0.2 could be subtly wrong and may need regeneration. Any pilot started before this release should re-run generation and diff the output before drawing conclusions about the tool's quality. Set the floor at ^1.0.3.
  • Signals about maturity. A 1.0.x line still shipping type-extraction fixes tells you the core abstraction is settling but not settled. Plan for churn in generated output over the next few minors; do not hand-edit generated files in ways you can't re-apply.

When to Consider This Package

Adopt when:

  • You are standing up a new Laravel service with more than one API surface, or with an anticipated versioning need (v1/v2 coexistence).
  • You have three or more engineers touching API code and inconsistent module structure is already causing review friction or duplicated boilerplate.
  • You want the convention codified rather than documented in a wiki nobody reads.
  • You are comfortable with a single-maintainer, early-1.x dependency and can pin the version, review generated output in PRs, and vendor/fork if the maintainer goes quiet.
  • The escape hatch matters to you: generated artifacts are ordinary Laravel code, so lock-in is low — you can stop using the generator and keep the code. This is the single strongest argument in the package's favor and should be verified in the spike.

Look elsewhere when:

  • You have one small API. The convention overhead exceeds the benefit; Laravel's own routing and resources are enough.
  • Your workflow is contract-first / OpenAPI-first. If specs are the source of truth and code is generated from them, a Laravel-side module generator is a second, competing source of truth and will fight your pipeline.
  • You need vendor support, an SLA, or security review artifacts. Early-stage single-maintainer packages rarely clear enterprise procurement without an internal owner willing to sponsor it.
  • Your team is heavily invested in a different modular architecture (DDD bundles, Laravel Modules, domain packages). Two overlapping conventions is worse than either alone.
  • Your target Laravel version is outside the package's tested matrix — verify this explicitly; it is not established by the release notes and must be checked against the package's composer.json and CI before the spike begins.

Before committing, run a bounded spike: one module, one endpoint, timeboxed to a few days. Measure (a) time to first working endpoint versus your baseline, (b) how much generated output a reviewer wants to change, (c) whether regeneration is stable and diffable. If reviewers consistently rewrite generated code, the convention is wrong for your team and no amount of adoption discipline fixes it.

How to Pitch It (Stakeholders)

For executives (one paragraph): We're evaluating a small open-source Laravel package that standardizes how we structure and generate API modules. The business case is throughput and consistency, not new capability — it reduces the boilerplate and structural drift that slows down API work as we add endpoints and teams. The financial exposure is minimal: it's free, the output is plain Laravel code we keep even if we drop the tool, so there is no meaningful lock-in and no migration cliff. The real risk is maintenance maturity — it's an early-1.x, effectively single-maintainer project — which we mitigate by pinning a version and assigning an internal owner. Recommendation: fund a short, timeboxed pilot on one module with clear success criteria (time-to-endpoint and review churn), then decide.

For engineering leadership: This buys us an enforced module convention and less repetition across API surfaces. It is additive — it does not replace routing, Eloquent, or our test stack. Adoption cost is front-loaded and small on greenfield work; it is a poor fit for retrofitting the existing monolith. The current release, v1.0.3, is a patch that fixes a correctness bug in how API types are identified and extracted — meaning anything generated on v1.0.2 may be subtly wrong. Pin to ^1.0.3 or later and regenerate rather than hand-patching.

For the engineers doing the work: Treat generated code as a reviewed artifact, not an oracle. The v1.0.3 fix shows the type-extraction logic is still maturing, so expect further corrections across the 1.x line: keep generated files free of hand-edits you can't re-apply, keep regeneration diffs small and in their own commits, and route any recurring bug upstream rather than into a local fork. Verify the Laravel version support matrix and the package's test coverage yourself before the spike — that information is not in the release notes, and this assessment is based on the v1.0.3 changelog alone, so treat the maturity read as provisional until someone has read the source.

For security/procurement: New dependency, early-1.x, small maintainer base. Requires the standard intake: license check, dependency-tree review, and an identified internal owner accountable for upgrades. Not a candidate for anything on a regulated or customer-data-critical path without that owner in place.

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.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource