Skip to main content

Neo4j persistence adapter for Pydantic Graph

Project description

pydantic_graph.neo4j_persistence

PyPI Version Build Status License

Overview

pydantic_graph.neo4j_persistence is a persistence adapter for Neo4j that seamlessly integrates with Pydantic models. It enables saving node snapshots directly into a Neo4j database, facilitating efficient graph data management within Python applications.

Features

  • Seamless Integration: Effortlessly combine Pydantic's data validation with Neo4j's graph database capabilities.
  • Automatic Snapshotting: Automatically persist node states to Neo4j, ensuring data consistency.
  • Flexible Configuration: Tailor the persistence layer to fit various application architectures.

Installation

To install pydantic_graph_neo4j_persistence, use pip:

pip install pydantic_graph_neo4j_persistence

Quick Start

Here is a basic example demonstrating how to use pydantic_graph.neo4j_persistence:

async def run_as_cli(answer: str | None):
    persistence = Neo4jStatePersistence(
        uri="your_uri",
        username="your_username",
        password="your_password",
        execution_id="execution_id",
        verbose=False
    )

    persistence.set_graph_types(my_pydantic_graph)

    ...
    


if __name__ == '__main__':
    import asyncio
    import sys
    
    a = sys.argv[2] if len(sys.argv) > 2 else None
    asyncio.run(run_as_cli(a))

You can see a full example on the oficial pydantic documentation. From there just change the persistence variable to use the Neo4jStatePersistence

Contributing

We welcome contributions to enhance the functionality and usability of pydantic_graph.neo4j_persistence. To contribute:

Fork the repository.

Create a new branch for your feature or bug fix.

Ensure existing tests pass and add new tests for your changes.

Submit a pull request detailing your changes and the problem they address.

License

pydantic_graph.neo4j_persistence is licensed under the MIT License. See the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydantic_graph_neo4j_persistence-0.1.2.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file pydantic_graph_neo4j_persistence-0.1.2.tar.gz.

File metadata

File hashes

Hashes for pydantic_graph_neo4j_persistence-0.1.2.tar.gz
Algorithm Hash digest
SHA256 c82aa9a2118206886c81329eb6a6265f2e155179f3023b0b82b6eb2fe49e356c
MD5 2677e5fe23fb29bf3adeb004781a0d95
BLAKE2b-256 6468fa30857b59fc4b8dbc1f41156d4f2886f2cdf64acc914bab9c2676fa1c13

See more details on using hashes here.

Provenance

The following attestation bundles were made for pydantic_graph_neo4j_persistence-0.1.2.tar.gz:

Publisher: python-publish.yml on Goduu/pydantic_graph.neo4j_persistence

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pydantic_graph_neo4j_persistence-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for pydantic_graph_neo4j_persistence-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 795d56cf8bb55dfcc0e372c49d339c8cba648d0e51bc8ba9873c4852c6910d3f
MD5 e132eb6d6546e53bf1a8b04770cf81fe
BLAKE2b-256 a8d9f06df1d46b0db9f779520e41fcb91746beee25647b5c66c47d90f3d026bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for pydantic_graph_neo4j_persistence-0.1.2-py3-none-any.whl:

Publisher: python-publish.yml on Goduu/pydantic_graph.neo4j_persistence

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page