Aller au contenu principal

Structure du Projet

Le projet AstroSpectro est organisé selon une architecture modulaire pour faciliter la reproductibilité, l'extension scientifique et la maintenance. Voici une description des répertoires principaux et de leur rôle.

Vue d'ensemble de l'arborescence

Répertoires Principaux

  • /src - Cœur du pipeline Python (logique métier).
  • /notebooks - Tableaux de bord pour l'orchestration et l'analyse.
  • /data - Données brutes, traitées et catalogues (ignoré par Git).
  • /website - Source de cette documentation (Docusaurus).
  • /models - Modèles de Machine Learning entraînés et sauvegardés.
  • /reports & /logs - Rapports de session JSON et logs de téléchargement.

Fichiers à la Racine

  • README.md - Présentation, liens rapides et guide de démarrage.
  • requirements.txt - Dépendances Python du projet.
  • ROADMAP.md - Vision et objectifs à long terme du projet.
  • .gitignore - Fichiers et dossiers à ignorer par Git.

Détails des Dossiers Clés

/src

Le moteur du projet. Contient tout le code Python modulaire. Il est divisé en deux sous-dossiers clés :

  • pipeline/ : Les briques de la chaîne de traitement scientifique (prétraitement, extraction de features, classification).
  • tools/ : Les utilitaires pour la gestion des données et des interfaces (downloader, visualiseur, etc.).

/notebooks

Les tableaux de bord. Chaque notebook a un rôle précis :

  • 00_master_pipeline : L'interface de production pour lancer des cycles d'entraînement complets.
  • 01_download_spectra : L'interface de gestion des données (téléchargement, nettoyage).
  • 02_tools_and_visuals : Le laboratoire pour l'exploration, l'analyse et le débogage.

/data

L'entrepôt de données. Contient les spectres bruts, les catalogues générés, les features extraites et les modèles entraînés. Ce dossier est intentionnellement ignoré par Git pour ne pas surcharger le dépôt.

Philosophie d'Architecture

La séparation stricte entre src/ (le code "pur" et testable) et notebooks/ (l'orchestration interactive) est un choix de conception fondamental. Elle garantit la modularité, la réutilisabilité et la maintenabilité du projet, ce qui est une pratique standard dans les projets de science des données professionnels.