Archiviz
Visualisation interactive et en temps réel de l'architecture de projets logiciels multi-langages.
Archiviz analyse votre code source et génère un graphe interactif de son architecture — dépendances, couches, modules, classes, fonctions — accessible directement dans le navigateur.
Fonctionnalités
- Analyse multi-langages : Python, JavaScript/TypeScript, Java, Go, Rust, C#, SQL, Docker
- Graphe interactif : navigation, zoom, filtres par type et par langage, recherche
- Temps réel : mise à jour automatique du graphe dès qu'un fichier est modifié
- Détection automatique : couches architecturales, dépendances cycliques, points de fragilité
- Assistance IA (optionnel) : réduction du bruit, détection de motifs, explications en langage naturel
- 100 % local : aucune dépendance cloud obligatoire
Installation
pip install archiviz
Requires Python >= 3.9
Utilisation rapide
# Analyser le répertoire courant et ouvrir l'interface web
archiviz start
# Analyser un projet spécifique
archiviz start --repertoire /chemin/vers/projet
# Changer le port (défaut : 8000)
archiviz start --port 9000
# Activer l'assistance IA
archiviz start --ia
Puis ouvrez http://localhost:8000 dans votre navigateur.
Options CLI
| Option | Court | Défaut | Description |
|---|---|---|---|
--repertoire |
-r |
. |
Répertoire du projet à analyser |
--port |
-p |
8000 |
Port du serveur web |
--hote |
-H |
localhost |
Hôte du serveur |
--ignore |
-i |
— | Patterns à ignorer (séparés par virgule) |
--ia |
— | off | Activer l'assistance IA |
Utilisation programmatique
from archiviz import ModeleGraphe, GestionnaireAnalyse
modele = ModeleGraphe()
gestionnaire = GestionnaireAnalyse(modele)
gestionnaire.analyser_repertoire("/chemin/vers/projet")
print(f"Composants : {len(modele.noeuds)}")
print(f"Relations : {len(modele.aretes)}")
Architecture du package
archiviz/
├── analyseur/ Adaptateurs par langage (Python, JS, Java, Go, Rust, C#, SQL, Docker)
├── graphe/ Modèle de graphe unifié (noeuds, arêtes, cycles)
├── serveur/ Serveur FastAPI + WebSocket
├── interface_web/ Interface HTML/CSS/JS (vis-network)
├── surveillance/ Surveillance du système de fichiers (watchdog)
├── assistance_ia/ Intégration IA (OpenAI, Anthropic)
└── utils/ Gestion des erreurs
Langages supportés
| Langage | Fichiers détectés | Éléments analysés |
|---|---|---|
| Python | .py |
modules, classes, fonctions, imports |
| JavaScript / TypeScript | .js .ts .jsx .tsx |
modules, classes, fonctions, imports |
| Java | .java |
packages, classes, interfaces, méthodes |
| Go | .go |
packages, structs, fonctions |
| Rust | .rs |
crates, modules, structs, fonctions |
| C# | .cs |
namespaces, classes, interfaces, méthodes |
| SQL | .sql |
tables, vues, procédures |
| Docker | Dockerfile docker-compose.yml |
images, services, volumes |
Dépendances optionnelles
# Outils de développement
pip install "archiviz[dev]"
# Assistance IA (OpenAI / Anthropic)
pip install "archiviz[ia]"
# Tout
pip install "archiviz[dev,ia]"
Développement
# Cloner et installer en mode édition
git clone https://github.com/archiviz/archiviz
cd archiviz
pip install -e ".[dev,ia]"
# Lancer les tests
pytest
# Linter
ruff check src/
# Formatage
black src/
Documentation
- Python
- JavaScript / TypeScript
- Java
- Go
- Rust
- C#
- SQL
- Docker
- Analyse d'un projet Python
- Analyse d'un projet Fullstack
- Utilisation de l'API programmatique
- Guide de publication PyPI
Licence
MIT — Copyright (c) 2026 Archiviz Team.
Voir le fichier LICENSE pour le texte complet.
Metadata
Release files for archiviz 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| archiviz-0.1.1.tar.gz | 47.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| archiviz-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 94.0 kB
Release files / archiviz-0.1.1.tar.gz
| Download URL | archiviz-0.1.1.tar.gz |
|---|---|
| Size | 47.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9ea98050f84a649b9bc87cae890cac02479572a1cead688137f4f609b84412ad
|
|
BLAKE2b-256 checksum How to use checksums |
345253390166965371cc03619c07c3cf3b5fe3346e66be608d4a8a3b7d243557
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Release files / archiviz-0.1.1-py3-none-any.whl
| Download URL | archiviz-0.1.1-py3-none-any.whl |
|---|---|
| Size | 46.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0db87bf2facc7f47b0551d561f885ec79dd6902c1912a19a6f06086ab576dd7f
|
|
BLAKE2b-256 checksum How to use checksums |
33bab76d60f306b906e2579e20ace0ad928a7d8e6481f803bf75a49f71cdf2f4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|