streamlit-agraph
Interactive Graph Vis for Streamlit.
What it is and what it does
streamlit-agraph wraps vis.js graph visualization into a Streamlit component, letting you render interactive network diagrams directly in Streamlit apps. You define nodes and edges as Python objects, configure layout and physics behavior, and call agraph() to display the result. It supports directed and undirected graphs, hierarchical grouping by node attributes, and physics-based force simulation.
The package includes a ConfigBuilder for interactive sidebar tuning of graph appearance and behavior, and optional integration with networkx and rdflib for graph algorithms and RDF triple parsing. However, the TripleStore and GraphAlgos modules are documented as untested and incomplete, so those features should be treated as experimental.
Use it for:
- Visualize knowledge graphs or RDF data as interactive network diagrams in Streamlit dashboards.
- Display relationship networks (social graphs, dependency trees, entity connections) with physics-based layout.
- Build interactive graph exploration tools where users can see node connections and adjust layout parameters via sidebar controls.
- Prototype network analysis workflows combining Streamlit UI with networkx graph algorithms.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Renders interactive network graphs in Streamlit apps using vis.js, with support for nodes, edges, physics simulation, and hierarchical layouts.
Yes, if you need interactive graph visualization in Streamlit and can tolerate an aging codebase. Install friction is low and the core feature set is stable. However, verify the license before production use, avoid the untested TripleStore and GraphAlgos features, and check compatibility with your Streamlit and networkx versions—no recent updates means potential drift from current dependencies.
Install
streamlit-agraph on PyPI
pip
pip install streamlit-agraphuv
uv add streamlit-agraphpoetry
poetry add streamlit-agraphInstalling streamlit-agraph
Before you install
Low friction install with three runtime dependencies (streamlit, networkx, rdflib). Package is aging—last release was 2023-01-28, over two years old, though the repository remains active and unarchived.
License in practice
License status is unclear; no SPDX identifier or raw license text is available in the metadata. Verify the actual license before use in proprietary or restricted contexts.
Quickstart
pip install streamlit-agraph
from streamlit_agraph import agraph, Node, Edge, Config
nodes = [Node(id="A", label="Node A")]
edges = [Edge(source="A", target="B")]
config = Config(width=750, height=950, directed=True, physics=True)
agraph(nodes=nodes, edges=edges, config=config)
Requires Python >=3.6. TripleStore and GraphAlgos features are marked as untested and incomplete in the documentation.
Verify before relying
- Whether TripleStore and GraphAlgos features are production-ready or still experimental.
- Current compatibility with latest Streamlit and networkx versions.
- Whether the package is actively maintained or in maintenance-only mode.
Package facts
| License | not declared (unclear) |
| Python support | supports the current Python release (>=3.6) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — streamlit, networkx, rdflib |
| Maintenance | aging — 1,294 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 343,290/month — #7,383 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: streamlit_agraph-0.0.45-py3-none-any.whl
Tags
More Graphics packages
Pillow adds image processing capabilities to…
permissive · top 100 on PyPI
fonttoolsfonttools manipulates font files in multiple…
permissive · top 1,000 on PyPI
matplotlib-inlineEnables matplotlib figures to display inline…
permissive · top 1,000 on PyPI
pymupdfPyMuPDF extracts, renders, converts, and…
agpl · top 1,000 on PyPI
pypdfium2pypdfium2 is a Python binding to PDFium that…
permissive · top 1,000 on PyPI
altairAltair is a declarative Python library for…
permissive · top 1,000 on PyPI
grandalfGrandalf computes node coordinates and routes…
copyleft · top 5,000 on PyPI
graphttyRenders directed graphs as colored ASCII art in…
permissive · top 15,000 on PyPI
streamlit-cardA Streamlit component that renders interactive…
permissive · top 15,000 on PyPI
pydotpydot is a Python interface to Graphviz that…
permissive · top 1,000 on PyPI
streamlit-pdf-viewerStreamlit component that renders PDF documents…
unclear · top 15,000 on PyPI
asciidagRenders directed acyclic graphs as ASCII art in…
copyleft · top 15,000 on PyPI
ipysigmaA Jupyter widget that renders interactive…
permissive · top 15,000 on PyPI
structoutFormats and displays graphs and large integer…
copyleft · top 15,000 on PyPI
streamlit-echartsRenders interactive ECharts visualizations in…
permissive · top 15,000 on PyPI
nebula3-pythonA Python client library for connecting to and…
permissive · top 15,000 on PyPI