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 Bolt Laravel Package

graphaware/neo4j-bolt

A PHP library for communicating with Neo4j over the Bolt protocol, providing a low-level client for sending Cypher queries and handling results in PHP applications. It underpins GraphAware's Neo4j PHP integrations and supports efficient binary communication with Neo4j servers.

View on GitHub
Deep Wiki
Context7

PHP Driver for Neo4j's Binary Protocol : Bolt

Frequently asked questions about Neo4J Bolt
Can I use graphaware/neo4j-bolt in a Laravel application?
It can be Composer-installed, but it is a low-level Bolt client with no Laravel service provider, facade, config, or Eloquent integration. You must wrap it behind your own adapter or repository boundary and manage the connection lifecycle yourself. For greenfield Laravel work, treat it as a protocol primitive rather than an off-the-shelf Laravel package.
How do I install graphaware/neo4j-bolt with Composer?
Install it with composer require graphaware/neo4j-bolt and pin the exact commit or version you validate. The package is archived, so you may hit PHP platform constraints on newer Laravel stacks. Avoid relying on --ignore-platform-reqs as a permanent fix; test compatibility first.
Does graphaware/neo4j-bolt support Laravel 10 or PHP 8?
There is no guaranteed support for modern PHP 8+ or Laravel 10+ because the repository is archived and unmaintained. You need a time-boxed proof of concept and a CI matrix against your target PHP, Laravel, and Neo4j versions. If constraints fail, plan an owned fork or a maintained alternative.
Is graphaware/neo4j-bolt a Laravel package with a service provider?
No. It ships no service provider, facade, config file, or auto-discovery, so Laravel will not wire it automatically. Bind the driver manually in a service provider and prefer scoped() over singleton() for Octane and queue workers. Keep Bolt sessions out of controllers and domain code.
How do I run Cypher queries with graphaware/neo4j-bolt?
Create a driver, open a session, run statements, and stream records through the low-level result API. Keep Cypher strings inside repository classes and map Node, Relationship, and Path objects into your own DTOs. Do not let Bolt result types leak into Blade views, jobs, or domain services.
Does graphaware/neo4j-bolt support transactions and rollback?
The library models sessions and transactions with commit and rollback, but transaction APIs can vary by version and early 1.x pins may lack client-side transaction control. Validate the exact package commit against your Neo4j server and Bolt protocol version. Add explicit transaction tests for write paths before production.
How should I test a Laravel app using graphaware/neo4j-bolt?
Wrap the driver behind a Neo4jClient interface and use a fake implementation for unit tests. Add contract or integration tests against the Neo4j and Bolt versions you actually ship. Avoid calling the static GraphDatabase::createDriver factory directly in tests because it opens a socket immediately.
What are the production risks of using graphaware/neo4j-bolt?
High. The repository is archived, has low community validation, and receives no security patches or Bolt protocol updates. Authentication, TLS, pooling, error semantics, and PHP/Laravel compatibility all need independent validation. Shipping it into revenue-critical paths requires vendor review, pinning, and a funded migration plan.
What alternatives to graphaware/neo4j-bolt should I use in Laravel?
Evaluate laudis/neo4j-php-client for a maintained Bolt client, or use Neo4j's HTTP API where appropriate. Keep either choice behind your own Neo4jClient contract so you can swap transports later. Do not couple domain code to GraphAware Bolt types or hand-written Cypher outside repositories.
Is graphaware/neo4j-bolt maintained and safe for long-term use?
It is archived and best treated as a time-boxed bridge, not a foundation. Pin the exact commit, wrap every call, run parallel read-only queries against a maintained client, then cut over and remove the package. Fund and schedule the replacement before it becomes an internal fork with no upstream exit.
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.
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core
nodisrupt/laravel-agent
sierratecnologia/media-manager