Graphexp - Explorateur de Graphes Interactif avec D3.js
Introduction
Graphexp est une interface web légère pour explorer et visualiser des graphes stockés dans une base de données Gremlin. C'est un fork/contribution au projet original que j'ai conteneurisé et amélioré.
Qu'est-ce qu'un Graph Database ?
Contrairement aux bases relationnelles (tables, lignes, colonnes), les bases de graphes modélisent les données comme :
- Vertices (nœuds) : Les entités (personnes, produits, concepts...)
- Edges (arêtes) : Les relations entre entités
- Properties : Attributs des nœuds et arêtes
Fonctionnalités de Graphexp
Exploration Interactive
- Cliquez sur un nœud pour voir ses voisins
- Les nœuds non explorés disparaissent progressivement
- Drag & drop pour réorganiser le graphe
- Épinglez des nœuds pour les garder visibles
Recherche
- Filtrage par label de nœud
- Recherche par propriété
- Filtrage par type d'arête
Visualisation
- Force layout D3.js
- Arêtes courbes pour les relations multiples
- Couleurs personnalisables par propriété
- Affichage des propriétés au survol
Édition
- Ajout/modification de nœuds
- Création de relations
- Modification des propriétés
Stack Technique
- Frontend : D3.js, jQuery
- Backend : Gremlin Server (TinkerPop)
- Protocoles : REST ou WebSocket
- Conteneurisation : Docker
Installation Docker
docker pull ghcr.io/armandleopold/graphexp:0.8.3
Cas d'Usage
Arbre de la Vie
Le tutoriel utilise l'arbre phylogénétique des espèces :
- 35 960 nœuds (espèces)
- 35 959 arêtes (relations ancêtre-descendant)
- Explorez l'évolution des Dinosaures jusqu'aux oiseaux modernes !
Réseaux Sociaux
Visualisez les connexions entre utilisateurs, leurs interactions, les communautés.
Knowledge Graphs
Explorez des ontologies et bases de connaissances complexes.
Compatibilité
- Gremlin Server 3.2.x, 3.3.x, 3.4.x
- Amazon Neptune
- JanusGraph
- TinkerGraph
Fork et conteneurisation du projet Graphexp pour l'exploration de bases de données graphe.