graphlib
Graph API
What it is and what it does
Graphlib is a Python library for working with graph data structures using a simple object-oriented API. It lets you create nodes, define relationships between them, and serialize the resulting graph into JSON format compatible with the JSON Graph Spec. It also includes a Neo4j loader that can push serialized graphs into a Neo4j database, either programmatically or via command-line interface.
The package has been abandoned since 2014-06-22 and targets only Python 2.7 and early Python 3 versions. It has no runtime dependencies, making installation straightforward in principle, but the source-only distribution and complete lack of maintenance mean it is not suitable for production use or integration with modern Python environments without significant testing and potential fixes.
Use it for:
- Prototyping graph data models in Python before loading them into Neo4j for persistence.
- Converting graph structures to JSON for storage, transmission, or documentation purposes.
- Building small-scale graph applications that do not require ongoing maintenance or compatibility with current Python versions.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a Python API for creating, serializing, and loading graph data structures conforming to the JSON Graph Spec, with built-in support for Neo4j database integration.
No. The package is abandoned, targets obsolete Python versions (2.7, 3.2–3.3), and has not been updated since 2014-06-12. While it has no known vulnerabilities and carries a permissive license, the lack of maintenance and untested compatibility with modern Python make it unsuitable for new projects.
Install
graphlib on PyPI
pip
pip install graphlibuv
uv add graphlibpoetry
poetry add graphlibInstalling graphlib
Before you install
Installation friction is high due to source distribution format. More critically, the package is abandoned—last commit was 2014-06-22, over a decade ago. It targets Python 2.7 and Python 3.2–3.3, versions long out of support. No active maintenance or security updates.
License in practice
Licensed under BSD (permissive), which allows commercial and private use with minimal restrictions. No notable licensing barriers to adoption.
Quickstart
pip install graphlib
from graphlib import Node, serialize
city = Node({'location': 'Philadelphia'})
jane = Node({'name': 'Jane'})
city.relate([jane], 'LIVES_IN')
data = serialize(city)
Package targets Python 2.7 and 3.2–3.3; compatibility with modern Python versions is untested and likely broken.
Verify before relying
- Whether the package actually works on modern Python versions despite classifier claims of only 2.7 and 3.2–3.3 support.
- Current status of Neo4j integration—whether the loader works with modern Neo4j server versions.
- Whether JSON Graph Spec conformance is still relevant or if the spec itself has evolved since 2014.
Package facts
| License | BSD (permissive) |
| Python support | not specified |
| Install friction | high — source build required |
| Runtime dependencies | none |
| Maintenance | abandoned — 4,446 days since the last release |
| Last repo commit | (repository archived) |
| First released | |
| Downloads | 97,467/month — #13,151 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: graphlib-0.9.5.tar.gz
Keywords: graph, node, relationship, edge, vertices, neo4j
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
graphdatascienceA Python client for Neo4j Graph Data Science…
permissive · top 15,000 on PyPI
neomodelAn Object Graph Mapper (OGM) for Neo4j that…
permissive · top 15,000 on PyPI
langchain-neo4jIntegrates Neo4j graph databases with…
permissive · top 15,000 on PyPI
neo4jOfficial Python driver for connecting to and…
permissive · top 5,000 on PyPI
FalkorDBFalkorDB Python client for querying and…
permissive · top 15,000 on PyPI
neo4j-graphragBuilds graph retrieval-augmented generation…
permissive · top 15,000 on PyPI
neo4j-driverPython driver for connecting to and querying…
permissive · top 15,000 on PyPI
py2neoPy2neo is a Python client library for Neo4j…
permissive · top 15,000 on PyPI
nutreeNutree provides a Python library for creating,…
permissive · top 5,000 on PyPI
modulegraph2Modulegraph2 builds and introspects a…
permissive · top 15,000 on PyPI