nx-arangodb
============
.. raw:: html
.. raw:: html
.. image:: https://colab.research.google.com/assets/colab-badge.svg
:target: https://colab.research.google.com/github/arangodb/nx-arangodb/blob/main/doc/nx_arangodb.ipynb
:alt: Open In Colab
.. image:: https://dl.circleci.com/status-badge/img/gh/arangodb/nx-arangodb/tree/main.svg?style=svg
:target: https://dl.circleci.com/status-badge/redirect/gh/arangodb/nx-arangodb/tree/main
:alt: CircleCI
.. image:: https://github.com/arangodb/nx-arangodb/actions/workflows/analyze.yml/badge.svg
:target: https://github.com/arangodb/nx-arangodb/actions/workflows/analyze.yml
:alt: CodeQL
.. image:: https://github.com/arangodb/nx-arangodb/actions/workflows/docs.yaml/badge.svg
:target: https://github.com/arangodb/nx-arangodb/actions/workflows/docs.yaml
:alt: Docs
.. raw:: html
.. image:: https://img.shields.io/pypi/v/nx-arangodb?color=3775A9&style=for-the-badge&logo=pypi&logoColor=FFD43B
:target: https://pypi.org/project/nx-arangodb/
:alt: PyPI version badge
.. image:: https://img.shields.io/pypi/pyversions/nx-arangodb?color=3776AB&style=for-the-badge&logo=python&logoColor=FFD43B
:target: https://pypi.org/project/nx-arangodb/
:alt: Python versions badge
.. raw:: html
.. image:: https://img.shields.io/github/license/arangodb/nx-arangodb?color=9E2165&style=for-the-badge
:target: https://github.com/arangodb/nx-arangodb/blob/main/LICENSE
:alt: License
.. image:: https://img.shields.io/static/v1?style=for-the-badge&label=code%20style&message=black&color=black
:target: https://github.com/psf/black
:alt: Code style: black
.. image:: https://img.shields.io/pepy/dt/nx-arangodb?style=for-the-badge&color=282661
:target: https://pepy.tech/project/nx-arangodb
:alt: Downloads
This is a `backend to NetworkX `_ that offers `ArangoDB `_ as a `Persistence Layer to NetworkX Graphs `_:
1. Persist NetworkX Graphs to ArangoDB.
2. Reload NetworkX Graphs from ArangoDB.
3. Perform CRUD on ArangoDB Graphs via NetworkX.
4. Run algorithms (CPU & GPU) on ArangoDB Graphs via NetworkX.
Benefits of having ArangoDB as a backend to NetworkX include:
1. No need to re-create the graph every time you start a new session.
2. Access to GPU-accelerated graph analytics (`nx-cugraph `_).
3. Access to a database query language (`Arango Query Language `_).
4. Access to a visual interface for graph exploration (`ArangoDB Web UI `_).
5. Access to cross-collaboration on the same graph (`ArangoDB Cloud `_).
6. Access to efficient distribution of graph data (`ArangoDB SmartGraphs `_).
.. image:: ./_static/nxadb.png
:align: center
:alt: nx-arangodb Diagram
:height: 200px
Requirements
------------
- Python 3.10+
- NetworkX 3.0+
- ArangoDB 3.10+
Installation
------------
Latest Release
.. code-block::
pip install nx-arangodb
Current State
.. code-block::
pip install git+https://github.com/arangodb/nx-arangodb
Contents
--------
The UX of NetworkX-ArangoDB is similar to that of NetworkX, but with the
added functionality of persisting graphs to ArangoDB. For an understanding
of how to use NetworkX, refer to the `NetworkX Documentation `_.
Expect documentation to grow over time:
.. toctree::
:maxdepth: 2
quickstart
classes/index
dict/index
algorithms/index
views/index
convert