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

App Laravel Package

devdojo/app

DevDojo's Laravel application scaffold, intended as a starting point for apps built on the DevDojo stack. Adoption is minimal and documentation is sparse, so it suits experimentation and reference rather than production use.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. devdojo/app is a Laravel package — meaning it is designed to be pulled in via Composer and registered through a service provider that boots routes, migrations, config, views, and possibly auth scaffolding into a host application. That is the right shape for a modular Laravel product, but the fit only holds if the host app matches the assumptions baked into the package: the same Laravel major version, the same auth/guard model, the same naming conventions for tables and routes, and the same expectation of a single-tenant DevDojo-style product shell. Nothing in the repo metadata suggests those assumptions are documented, versioned, or configurable.

Integration feasibility. Mechanically, integration is a one-line composer require devdojo/app plus optional vendor:publish. Practically, feasibility is low-to-unknown. With 2 stars, 0 dependents, and a last release of 2018-10-19, there is no evidence of anyone outside the originating team having integrated this successfully. The realistic path is not "install the package" but "read the source and decide what to take" — a source-audit exercise, not a dependency decision.

Technical risk. High, on every axis:

  • Version lock. A 2018 release targets the Laravel 5.6/5.7 and PHP 7.1/7.2 era. Modern Laravel (10/11/12) will almost certainly fail Composer resolution on illuminate/* constraints, and will fail at runtime on container bindings, facades, and string/helper APIs that were removed.
  • No compatibility signalling. No CI badges, no test suite visible, no changelog discipline implied by a single 2018 release. There is no way to assert what "works" means.
  • Coupling to a product, not a contract. The description ("the repo for the DevDojo products application package") reads as an internal extraction for their own product line. Internal packages routinely ship with hard-coded config, opinionated table names, and assumptions about the surrounding app that are invisible from the outside.
  • Ecosystem void. Zero dependents means zero community bug reports, zero Stack Overflow surface, zero forks fixing the Laravel 9 upgrade. Every defect is yours to find.

Key questions for the maintainer / repo owner.

  1. Is this package intended for public consumption at all, or is it an internal artifact published only because Composer required it?
  2. What is the supported Laravel/PHP matrix, and is there a branch or tag that targets current Laravel?
  3. What is the license, and does it permit forking and internal maintenance? (Verify LICENSE explicitly — an absent license is legally worse than a restrictive one.)
  4. Does it own database migrations and auth guards? If so, what is the collision surface with an existing app's users/tenants tables?
  5. Is there any documentation, or must scope be derived entirely from reading src/?
  6. Is there a named owner with capacity to merge a Laravel-upgrade PR, or is the repo effectively frozen?
  7. What does it depend on privately — internal packages, proprietary APIs, DevDojo-hosted services?

Verdict. Treat devdojo/app as a reference codebase, not a dependency candidate. The 0.07 score and 2 stars are directionally correct: this is not a package with an adoption path, it is a package with a source tree.

Integration Approach

Stack fit. Fits only a Laravel monolith on the 5.6–5.7 line running PHP 7.1/7.2. If the target application is on Laravel 8+, the package is not installable without a fork-and-port; if the target is not Laravel at all, it is not applicable. Confirm the host app's composer.json constraints before any further evaluation — this is a 15-minute gate, not a sprint.

Migration path. There are three realistic options, in ascending cost:

  1. Do not integrate. Mine the repo for domain design — how they modelled products, plans, entitlements, and checkout flows — and reimplement against the current stack. Lowest total cost of ownership; captures most of the value.
  2. Vendor the relevant classes. Copy the two or three service/model classes that encode genuinely useful logic into the host app's app/ namespace, strip the service provider, and own them outright. Acceptable when the borrowed surface is small and non-trivial.
  3. Fork and port. Fork, loosen illuminate/* constraints, fix removed APIs, add a test harness, and maintain as an internal package. Only justified if the package contains substantial non-reproducible business logic — which is unlikely for a product-catalogue/checkout layer, and which cannot be confirmed without a full source audit.

Recommendation: fund a timeboxed spike (2–3 days) to audit src/, inventory the public surface (service provider bindings, published config keys, migrations, routes, events), and produce a build-vs-borrow recommendation. Gate any further spend on that output.

Compatibility. Expect breakage in four specific places: (a) Composer constraint resolution against modern illuminate/support; (b) package auto-discovery, which only exists from Laravel 5.5 — if the package declares discovery in composer.json it will register silently and unexpectedly in a host app; (c) published migrations colliding with existing users/products/subscriptions tables; (d) namespace-level helper and facade usage that changed across 5.x → 8.x.

Sequencing. Do it in this order and stop at the first hard blocker:

  1. Composer constraint check in a throwaway branch (30 min).
  2. License check (blocking — no license, no code).
  3. Source audit and public-surface inventory (2–3 days).
  4. Build-vs-borrow decision with a cost estimate.
  5. If borrow: extract, namespace, test, and document the borrowed surface as first-party code.
  6. If port: fork, add CI, pin to a supported Laravel matrix, and assign an owner before merging.

Never do step 6 without a named maintainer and an upgrade budget — that is the failure pattern for stale-package adoption.

Operational Impact

Maintenance. Effectively 100% yours. A package with one 2018 release and no visible activity has no maintenance runway; assume the upstream is frozen. Budget for: security review of the dependency tree, Laravel-major upgrade work on every host-app upgrade, and a periodic re-audit of any borrowed code against upstream changes (which will not exist, so the audit is really "confirm we still understand this code").

Support. None. No maintainer SLA, no issue-triage history to infer responsiveness from, no community to amortise debugging. Internal engineers become the sole source of truth, and that knowledge is single-threaded unless documented deliberately. Factor documentation into the cost estimate — it is not optional here, because there is no external artefact to fall back on.

Scaling. The package itself is application-layer, so it does not impose infrastructure constraints. Any scaling risk is indirect and comes from what it encodes: unpaginated Eloquent queries in admin listings, synchronous work in request cycles that belongs on a queue, and N+1 patterns typical of 2018-era Laravel. Profile before assuming; a 2018 package was written for a smaller data volume than most current targets.

Failure modes to watch.

  • Silent registration. Auto-discovery boots the provider in every environment; a stray route or migration runs in production without anyone noticing until it collides.
  • Migration collisions. Published migrations that assume an empty schema will fail or, worse, alter existing tables.
  • Auth guard interference. Product packages frequently register guards, middleware, or password brokers; collisions here are hard to diagnose and can silently weaken access control.
  • Abandoned transitive dependencies. The 2018 dependency tree likely pulls packages that are themselves unmaintained, which is a supply-chain exposure independent of devdojo/app itself.
  • Constraint drift. A composer update in the host app breaks resolution months after integration, at the worst possible time.

Ramp-up. High relative to the package's apparent size, because there is no documentation. Every question — what tables does it create, what routes does it expose, what does it assume about the current user — requires reading source. Estimate 3–5 engineer-days before a new team member is productive against it, versus hours for a documented package with equivalent surface area. If the borrow path is taken, that ramp-up cost is recoverable through internal documentation; if the dependency path is taken, it is paid repeatedly.

Overall recommendation. Do not adopt as a production dependency. Treat as a design reference, run a short audit spike, and reimplement or vendor narrowly. The score of 0.07 is a fair reflection of vendor risk, not of code quality — the code may be perfectly good, but there is no operational basis on which to depend on it.

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.
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
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