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

Neo4J Ogm Bundle Laravel Package

klaussilveira/neo4j-ogm-bundle

Symfony bundle integrating the Neo4j PHP OGM, letting you map PHP entities to graph nodes, use repositories, and wire entity managers through Symfony's DI container. Includes annotation/attribute mapping and configuration for Neo4j connections.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Graph-model validation before platform commitment. The bundle lets a Symfony app persist annotated PHP objects to Neo4j using the PHP OGM, so a time-boxed spike can prove whether a graph-shaped domain (org hierarchy, permissions, recommendations/social graph, fraud-ring detection) maps cleanly to nodes and relationships — in days, not a quarter.
  • Build vs. buy on the persistence layer. This is a thin integration wrapper, not a platform. Evaluating it forces the real decision: do we want "entity + annotation" ergonomics (Doctrine-like) for graph data, or do we want app teams writing explicit Cypher against the official driver? The former optimizes for developer onboarding; the latter optimizes for query transparency and performance.
  • Roadmap sequencing for "graph features." If the roadmap contains a graph epic and the codebase is Symfony, this bundle is the cheapest possible first iteration — useful for sizing the follow-on work (data migration, query ownership, indexing strategy) with real evidence.
  • Legacy triage and tech-debt budgeting. If you already run a Symfony2-era service against Neo4j, this dependency is a known-shape liability to quantify: pin it, vendor it, or schedule its retirement (upgrade off Symfony2 or re-platform to the official Neo4j driver).
  • Ownership boundary clarification. Adopting an OGM is an organizational decision about who owns query logic — application developers via mapped entities, or a data team via curated Cypher. Make that boundary explicit before adoption, not after.

When to Consider This Package

Consider it when:

  • You are on a Symfony2-era application (or a legacy branch still using Symfony2-style bundle registration) and are already committed to Neo4j.
  • The graph model is small-to-medium and mostly CRUD-shaped: create/read/update/delete nodes and relationships, shallow traversals — not deep pathfinding or graph algorithms.
  • The context is a prototype, internal tool, migration bridge, or proof-of-concept where time-to-first-query matters more than long-term maintenance.
  • The team is PHP-fluent and specifically wants annotation-driven entity mapping rather than hand-written Cypher for every operation.
  • You are comfortable with a fork-and-own posture — the MIT license and small surface area mean vendoring or patching is feasible if the maintainer disappears.

Look elsewhere when:

  • You are greenfield on Symfony 5/6/7. The Symfony2 bundle model is not the current integration path; expect meaningful glue work and no upstream support.
  • Production reliability, security response, or vendor support is required. Low stars (~29), a single maintainer, and an old framework target imply effectively no community and a low bus factor — treat it as unmaintained until proven otherwise.
  • The workload is genuinely graph-heavy (variable-length traversals, shortest path, community detection). OGM abstractions get in the way; use the official Neo4j PHP driver and write Cypher.
  • You need Neo4j driver version currency — the OGM's release cadence is independent of and slower than the official driver, which can block server upgrades.
  • The team has no existing Symfony2 investment. Running Doctrine and a graph OGM side by side doubles the persistence mental model for marginal benefit.
  • Compliance or SBOM processes require documented provenance and patch SLAs on every dependency.

How to Pitch It (Stakeholders)

For executives (one paragraph): This is a small, MIT-licensed glue package that lets a Symfony application save PHP objects into Neo4j without hand-writing graph queries. It does not change our data strategy and it does not create vendor lock-in — it either accelerates a time-boxed experiment or bridges an existing legacy service. Its strategic value is low by design, and its maintenance risk is real: tiny community, single maintainer, and a Symfony2-era target. Recommendation: fund it only as a spike accelerant or a known legacy dependency with a scheduled exit, never as the foundation for new platform investment.

For engineering (the ask): Use it behind an interface. Wrap the OGM in a repository abstraction so replacing it with the official Neo4j driver is a bounded refactor rather than a rewrite. Pin versions, vendor the source if the spike graduates, and keep annotations out of domain code that must outlive the experiment. Timebox the spike and define the exit criteria up front: time-to-first-query, Cypher lines eliminated, and coupling introduced.

Decision metrics to bring back: engineer-days saved vs. estimated, volume of hand-written Cypher avoided, number of files touching OGM annotations (the blast radius of removal), and any Neo4j server-version constraints the OGM imposes.

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.
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
frankyso/ipaymu
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
adachsoft/api-version-bundle
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core