Add support for FalkorDB Graph database alongside Neo4j usage
[!IMPORTANT] Add support for FalkorDB as an alternative to Neo4j, including configuration, examples, and core functionality updates.
- Database Support:
- Adds support for FalkorDB alongside Neo4j in
graphiti_core/driver.py.- Introduces
Driverclass to abstract database interactions.- Updates
.env.exampleandREADME.mdto include FalkorDB configuration.- Examples:
- Adds
quickstart_falkordb.pyfor FalkorDB usage.- Renames
quickstart.pytoquickstart_neo4j.py.- Updates
examples/quickstart/README.mdto reflect FalkorDB support.- Code Changes:
- Modifies
graphiti_core/edges.py,graphiti_core/nodes.py, andgraphiti_core/search/search.pyto use the newDriverclass.- Updates
graphiti_core/graph_queries.pyto generate queries for both Neo4j and FalkorDB.- Adjusts
graphiti_core/utils/bulk_utils.pyandgraphiti_core/utils/maintenancemodules for compatibility with both databases.- Miscellaneous:
- Adds
falkordbdependency inpyproject.toml.- Updates
CONTRIBUTING.mdfor environment setup changes.This description was created by
for 61a99ff1e93806bf7a2bc0a8ab5be6ded6589060. You can customize this summary. It will automatically update as commits are pushed.
All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.
I have read the CLA Document and I hereby sign the CLA
I have read the CLA Document and I hereby sign the CLA
This is awesome. Thanks for contributing. Please allow @prasmussen15 and team some time to review and comment. Thank you!
I took a look at the PR and I agree with the approach! I still have to run tests locally before merging though
@prasmussen15 can you approve the workflow?
Hey, closing this PR since I merged in these commits along with a few MyPy/linter fixes and a different abstraction methodology.