Skip to main content

Visualisation interactive et en temps réel de l'architecture de projets logiciels multi-langages

Project description

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


Licence

MIT — Copyright (c) 2026 Archiviz Team.
Voir le fichier LICENSE pour le texte complet.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

archiviz-0.1.1.tar.gz (47.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

archiviz-0.1.1-py3-none-any.whl (46.1 kB view details)

Uploaded Python 3

File details

Details for the file archiviz-0.1.1.tar.gz.

File metadata

  • Download URL: archiviz-0.1.1.tar.gz
  • Upload date:
  • Size: 47.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for archiviz-0.1.1.tar.gz
Algorithm Hash digest
SHA256 9ea98050f84a649b9bc87cae890cac02479572a1cead688137f4f609b84412ad
MD5 11263e63537d494c3e0e0ed2ab414612
BLAKE2b-256 345253390166965371cc03619c07c3cf3b5fe3346e66be608d4a8a3b7d243557

See more details on using hashes here.

File details

Details for the file archiviz-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: archiviz-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 46.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for archiviz-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0db87bf2facc7f47b0551d561f885ec79dd6902c1912a19a6f06086ab576dd7f
MD5 b797b284ddf1d9b6518bd70aaab6856e
BLAKE2b-256 33bab76d60f306b906e2579e20ace0ad928a7d8e6481f803bf75a49f71cdf2f4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page