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

Doctrine Relations Analyser Laravel Package

huluti/doctrine-relations-analyser

Doctrine Relations Analyser inspects Doctrine ORM entity associations to flag missing or misconfigured relations—such as absent inversedBy/mappedBy, cascade, orphanRemoval, and nullable settings—helping you catch mapping issues early and keep your model consistent.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Data-model audit before a risky change. Use it as a one-off discovery step ahead of a schema migration, monolith decomposition, or replatform to size the real coupling in the domain model and decide whether the work is a sprint or a quarter.
  • Build vs. buy for internal tooling. The alternative is a bespoke static-analysis script or a spike someone abandons. A small MIT bundle with console commands is a near-zero-cost substitute — adopt it if it saves even two engineer-days, and treat it as disposable if it doesn't.
  • Roadmap sequencing for refactors. A relationship graph gives you an objective dependency picture, so you can order work by blast radius instead of by team intuition, and defend that ordering to stakeholders.
  • Risk sizing for cascade/delete semantics. Surfacing relationship mapping issues early is cheaper than discovering data-loss behavior in production — this feeds directly into go/no-go calls on destructive operations.
  • Due diligence on inherited or acquired codebases. A fast, repeatable way to produce a model inventory and onboarding artifact for a codebase nobody on the team wrote.
  • CI hygiene as an optional gate. If it proves stable, it can flag mapping regressions on PRs; if it's noisy, keep it as a manual, developer-run audit — the decision is reversible either way.

When to Consider This Package

Adopt when all of these hold:

  • Your stack is Symfony with Doctrine ORM, or Laravel running a Doctrine bridge. Note the mismatch: this is a Symfony bundle, not an Eloquent tool — for a pure Laravel/Eloquent team it is effectively out of scope, and the alternative is Eloquent-native tooling (schema:dump, ER-diagram generators, static analysis) or a generic PHP analyzer.
  • You need development-time or CI-time analysis, not runtime profiling or query-performance work.
  • You're comfortable with a small, single-maintainer, MIT dependency used in dev/CI only, pinned and wrapped so it's cheap to fork or drop.
  • The decision is time-boxed — a spike or a periodic audit — rather than a permanent platform commitment.

Look elsewhere when:

  • You require a support contract, SLA, or security review — 15 stars and 0 dependents means bus factor of one; assume you may own the code.
  • You need production-grade tooling or anything on the critical path.
  • Your problem is query performance, migration execution, or runtime behavior — those are profiler, Doctrine Migrations, or APM territory.
  • Your team is Eloquent-only — the integration cost likely exceeds the value.

How to Pitch It (Stakeholders)

Executives: A low-cost, low-commitment diagnostic for our data model. It de-risks schema changes and refactors by showing us coupling before we commit engineering time. No production dependency, MIT-licensed, removable in an afternoon — the downside is capped at the cost of a short spike.

Engineering: A dev-only Symfony bundle that inspects Doctrine entity relationships and reports on mapping problems. We'd run it locally and optionally in CI, pinned to a version and wrapped behind our own command so it's swappable. Honest caveat: it's a small community project with one maintainer, so we treat it as an internal utility, not a dependency we rely on — MIT means we can fork if it goes stale. For teams on Eloquent, this doesn't apply and we'd evaluate Laravel-native alternatives instead.

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