- Can I install kwattro/neo4j-ogm-bundle in Laravel?
- No, not as a supported Laravel package. It is a Symfony bundle with no Laravel ServiceProvider, facade, or publishable config, and its Symfony 2-era dependency constraints conflict with the Symfony 6/7 components used by Laravel 9/10/11. Composer resolution is likely to fail or force a framework-breaking downgrade. The only conceivable path is ignoring the bundle and using the underlying OGM directly through a custom adapter, which carries high risk.
- How do I install and register kwattro/neo4j-ogm-bundle in Symfony?
- It is designed as a Symfony 2-era bundle registered through AppKernel and a DI Extension class with services.xml. There is no modern supported install path, and Composer will likely fail on current Symfony or PHP versions. If experimenting, you would need an old pinned stack and should expect deprecations or runtime failures.
- Does this bundle support Laravel 9, 10, or 11?
- No. There is no Laravel integration layer, and the bundle's dependency graph is incompatible with the Symfony 6/7 transitive components in Laravel 9/10/11. Installing it would either fail Composer resolution or force dependency downgrades that break the framework. It should not be adopted as a Laravel dependency.
- How do I configure Neo4j connections and services for this bundle?
- Configuration is Symfony bundle style through the DI Extension and services.xml, not Laravel config/*.php publishing or .env-driven package config. It has no Laravel facade or package discovery, so there is nothing Laravel's container can boot directly. For a modern app, prefer a maintained Neo4j client configured in your own service provider.
- Which Neo4j server versions and protocols does it support?
- The OGM targets Neo4j 2.x/3.x-era HTTP REST semantics rather than Bolt. Neo4j 4.x and 5.x moved to Bolt-first operation and changed or removed several legacy HTTP endpoints and transaction behaviors. You must validate every Cypher statement against your target Neo4j version before any design commitment.
- Is kwattro/neo4j-ogm-bundle actively maintained?
- There is no meaningful maintenance signal: roughly 19 stars, zero dependents, and a low package score. With no downstream consumers filing bugs, there is little ecosystem pressure to patch issues. Treat it as a fork-and-own acquisition with no upstream support or patch stream.
- What are the best alternatives for Neo4j OGM in Laravel or PHP?
- For modern PHP, laudis/neo4j-php-client is the fit-correct Bolt-based client and is actively maintained, but you will need to wrap it in your own repository or mapper layer. Also evaluate graphaware/neo4j-php-ogm and maintained successors rather than this abandoned bundle. If your queries do not truly require graph traversal, a recursive CTE or closure table in MySQL/Postgres can remove the entire risk surface.
- Can I use the underlying Neo4j OGM library without the Symfony bundle in Laravel?
- That is the only workable path: ignore the bundle and manually construct the OGM EntityManager in a Laravel service provider or small adapter class. However, the OGM is the unsupported part and would still need PHP 8 and Bolt work. It will not interoperate with Eloquent relations, model events, or Laravel's query builder.
- What PHP versions does kwattro/neo4j-ogm-bundle support?
- It is pre-PHP 8 era code. Unmodified paths using dynamic properties, each(), and non-nullable signatures are likely to emit deprecations or fatal errors on PHP 8.1+. It is not suitable for modern Laravel PHP 8.x stacks without significant fork maintenance.
- What licensing and security risks should I check before using it?
- Review the bundle and underlying OGM license files carefully, because unmaintained repositories often carry ambiguous MIT versus GPL-family licensing. Unmaintained vendor code on the network path to your database has no CVE triage or patch stream, which is a compliance finding in regulated environments. Prefer a maintained Bolt client and a named internal owner if you must fork anything.