GraphNexus 🌌
Agnostic framework that transforms any tabular dataset (CSV/JSON) into a formal graph structure (Nodes/Edges), ready for network analytics and interactive 3D visualization. Uses Leiden (--community-algo leiden, requires leidenalg) or Louvain (--community-algo louvain, default) for community detection.
✨ Features
- Agnostic Ingestion: Accepts any CSV or JSON file. You define the node, target, and attribute columns.
- Strict Validation: Powered by Pydantic to ensure data integrity between Python and the frontend.
- Community Detection: Automatic Louvain clustering to identify hidden groups and ecosystems.
- Interactive 3D Visualization: Zero-config WebGL dashboard (
3d-force-graph) with real-time filtering, role-based coloring, and critical path highlighting. - Structural Intelligence: Automatic classification of Global Brokers, Local Hubs, Super-Spreaders, and Peripheral nodes via Betweenness/Closeness/Closeness centrality.
- Pathfinding Engine: Shortest-path tracing (
--pathfinding) for tracing critical routes between entities. - Metrics Export: Download node-level metrics (CSV) from the visual dashboard.
- Local-First & Secure: No external API calls. All processing happens on your machine.
🚀 Quick Start
Option 1: Install from PyPI (Recommended)
pip install graphnexus-core
# Run the CLI tool directly
graphnexus --input examples/web_stack.csv --node-id repo_name --target co_contributor --attributes "stars,language"
# Then open `python3 -m http.server 8080 --directory web` and navigate to `localhost:8080`
# User docs: `docs/USER_GUIDE.md` explains roles, centrality metrics, and visual interpretation
Option 2: Install from Source
git clone https://github.com/amurlaniakea/graphnexus-core.git
cd graphnexus-core
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e .
graphnexus --input examples/web_stack.csv --node-id repo_name --target co_contributor --attributes "stars,language"
🌍 Universal Use Cases
- Open-Source Web Stack Intelligence — Map software ecosystems, cluster communities with Louvain, and identify strategic infrastructure nodes.
- Global Supply Chain Strangling — Model logistics flows, detect chokepoints via community isolation, and expose sovereignty vulnerabilities.
- Financial Anti-Fraud Operations — Build transaction entity graphs, highlight circular flows, and isolate suspicious clusters using real-time filters.
🛠️ Development
pip install -e ".[dev]"
pre-commit run --all-files
pytest tests/ -v
📄 License
AGPL-3.0-or-later — see LICENSE.
Author: Pedro Sordo Martínez — amurlaniakea@gmail.com
Metadata
Release files for graphnexus-core 0.6.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| graphnexus_core-0.6.0.tar.gz | 22.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| graphnexus_core-0.6.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 44.4 kB
Release files / graphnexus_core-0.6.0.tar.gz
| Download URL | graphnexus_core-0.6.0.tar.gz |
|---|---|
| Size | 22.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b118d790579d457e6df44b7abf53513ad48f9828f8e64f02083d72fb277ea9c5
|
|
BLAKE2b-256 checksum How to use checksums |
8c68516f20bfbd5ab7566966104eb574e5ff8b9cd5681aa75f368b606e445e6e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / graphnexus_core-0.6.0-py3-none-any.whl
| Download URL | graphnexus_core-0.6.0-py3-none-any.whl |
|---|---|
| Size | 21.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f3e545c52e14639f4c0cc8be35f2956fb3622aa415965e6a82cc7434bfc8ea11
|
|
BLAKE2b-256 checksum How to use checksums |
93b8a208965913a32a21e004bceb24e83b90843e717afa238d84cf9d46b57c8b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|