À l'écoute d'opportunités
//
Salut, je suis Théo CREPIN
Conception de solutions numériques intelligentes et performantes.
Étudiant Epitech | Je fusionne ingénierie logicielle et intelligence artificielle pour repousser les limites du web traditionnel.

const me = {
name: 'Théo CREPIN',
age: 19,
school: 'EPITECH (PGE)',
location: 'Bordeaux, FR',
languages: ['French', 'English'],
status: 'À l'écoute d'opportunités'
};
Ingénieur Logiciel & Explorateur IA.
Actuellement en 2ème année à EPITECH (Programme Grande École) à Bordeaux, je suis un développeur passionné qui ne cesse d'apprendre. Mon objectif est de bâtir des ponts entre le code robuste et les nouvelles frontières de l'IA.
Fort de mon expérience en Data Science, je maîtrise C, C++ et Python. Au-delà du développement web (React, Next.js), j'intègre des modèles d'IA au cœur de mes projets pour créer des applications dynamiques et prédictives.
Mes Projets
Une vitrine de mes travaux récents et expérimentations.
NextTemplate
This is a Next.js project template that runs on Cloudflare workers including next-intl, Tailwind CSS, ESLint, Prettier and BProgress.
Install dependencies
Install with your preferred package manager (example commands):
# bun
bun install
# npm
npm install
# yarn
yarn install
# pnpm
pnpm install
Configure environment (.dev.vars)
- Create a
.dev.varsfile at the project root with any environment variables you need (one per line: KEY=VALUE). Example:
NEXT_PUBLIC_API_URL=https://api.example.com
CF_ACCOUNT_ID=your-cloudflare-account-id
Do NOT commit .dev.vars to source control. It often contains secrets and local values.
After adding or changing environment variables, regenerate/update Cloudflare environment types (this project includes a cf-typegen script):
# npm
npm run cf-typegen
# yarn
yarn cf-typegen
# pnpm
pnpm run cf-typegen
# bun
bun run cf-typegen
The cf-typegen script runs wrangler types and updates cloudflare-env.d.ts so your TypeScript types match your Cloudflare environment variables.
Run (development)
Start the dev server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying src/app/[locale]/page.tsx, the page auto-updates as you edit the file.
Anidex
🐾 Anidex - Attrape-les tous (en image) !
Une application de classification d'animaux par intelligence artificielle inspirée de l'univers Pokémon.
📋 Description
Anidex est une application web interactive qui utilise l'intelligence artificielle pour identifier automatiquement les animaux présents dans vos images. Grâce à un modèle de deep learning basé sur MobileNetV2 et le transfer learning, l'application peut reconnaître 10 espèces d'animaux avec une grande précision.
🎯 Fonctionnalités principales
- Classification automatique : Upload d'image et prédiction instantanée
- Niveau de confiance : Pourcentage de certitude de la prédiction
- Interface Pokédex : Fiches détaillées des animaux détectés
- Système de feedback : Validation des prédictions pour améliorer le modèle
- Visualisations avancées : Graphiques des probabilités et statistiques
- Design intuitif : Interface web moderne et responsive
🦁 Animaux reconnus
L'application peut identifier les animaux suivants :
- 🐘 Éléphant - Majesteux mammifère des savanes
- 🐄 Vache - Bovin domestique
- 🐑 Mouton - Ovin producteur de laine
- 🐕 Chien - Fidèle compagnon de l'homme
- 🐎 Cheval - Noble équidé
- 🕷️ Araignée - Arachnide tisseuse
- 🦋 Papillon - Insecte aux ailes colorées
- 🐱 Chat - Félin domestique
- 🐔 Poulet - Volaille de basse-cour
- 🐿️ Écureuil - Petit rongeur agile
🚀 Aperçu de l'application
Interface de classification
L'interface principale permet d'uploader une image par glisser-déposer et affiche instantanément la prédiction avec le niveau de confiance.
Fiche Pokédex
Chaque animal détecté dispose d'une fiche détaillée contenant :
- Habitat : Environnement naturel
- Taille : Dimensions moyennes
- Poids : Masse corporelle
- Régime alimentaire : Habitudes nutritionnelles
- Caractéristiques : Traits distinctifs
- Faits intéressants : Anecdotes surprenantes
Analyses statistiques
- Graphique en barres des top 5 prédictions
- Vue détaillée de toutes les probabilités
🧠 Technologie
Architecture du modèle
- Base : MobileNetV2 pré-entraîné sur ImageNet
- Technique : Transfer Learning avec fine-tuning
- Optimisation : Callbacks intelligents (EarlyStopping, ReduceLROnPlateau)
- Augmentation : Data augmentation pour améliorer la robustesse
Stack technique
- Backend ML : TensorFlow/Keras
- Interface : Streamlit
- Traitement d'images : PIL, numpy
- Visualisations : matplotlib, seaborn
- Documentation : Jupyter Notebooks
📊 Performances
Le modèle atteint une précision de 92.3% sur l'ensemble de test, avec des prédictions particulièrement fiables pour les grands mammifères comme les éléphants (>99% de confiance typique).
🏗️ Structure du projet
Anidex/
├── data/ # Dataset organisé par classes
│ ├── butterfly/ # Images de papillons
│ ├── cat/ # Images de chats
│ ├── chicken/ # Images de poulets
│ ├── cow/ # Images de vaches
│ ├── dog/ # Images de chiens
│ ├── elephant/ # Images d'éléphants
│ ├── horse/ # Images de chevaux
│ ├── sheep/ # Images de moutons
│ ├── spider/ # Images d'araignées
│ └── squirrel/ # Images d'écureuils
├── models/ # Notebooks et modèles ML
│ └── MobileNetV2.ipynb # Notebook d'entraînement du modèle
├── src/ # Code source principal
│ ├── dashboard.py # Application Streamlit principale
│ ├── data_preprocessing.ipynb # Notebook de prétraitement
│ └── model.py # Fonctions du modèle ML
├── model_classification.h5 # Modèle entraîné sauvegardé
├── requirements.txt # Dépendances Python
├── .gitignore # Fichiers à ignorer par Git
└── README.md # Documentation du projet
📖 Utilisation
Interface web
- Accédez à l'application Streamlit
- Cliquez sur "Browse files" ou glissez-déposez votre image
- Attendez la prédiction automatique
- Consultez la fiche Pokédex de l'animal détecté
- Validez ou corrigez la prédiction via les boutons de feedback
Formats supportés
- Images : PNG, JPG, JPEG
- Taille maximum : 200MB
- Résolution : Optimale entre 224x224 et 1024x1024 pixels
🛠️ Installation
Prérequis
- Système d'exploitation : Ubuntu 18.04+ ou Debian 10+
- Make : Pour automatiser l'installation
- Accès sudo : Pour installer Python 3.11
- Git : Pour cloner le projet
Installation rapide
-
Cloner le repository
git clone https://github.com/NotJuz0o/Anidex.git cd Anidex -
Installation automatique
# Voir les commandes disponibles make help # Installation complète (Python 3.11 + dépendances + environnement virtuel) make install -
Lancer l'application
make run -
Accéder à l'interface
Ouvrez votre navigateur et allez sur :
http://localhost:8501
Installation manuelle (optionnelle)
Si vous préférez installer manuellement :
# 1. Installer Python 3.11
sudo apt update
sudo apt install -y python3.11 python3.11-venv python3.11-dev python3.11-distutils
# 2. Créer l'environnement virtuel
python3.11 -m venv .venv
source .venv/bin/activate
# 3. Installer les dépendances
pip install --upgrade pip
pip install -r requirements.txt
# 4. Lancer l'application
python -m streamlit run src/dashboard.py
Commandes Makefile disponibles
make help # Afficher toutes les commandes disponibles
make install # Installation complète du projet
make dataset # Exécuter le prétraitement des données
make model # Entraîner le modèle MobileNetV2
make run # Lancer l'application Streamlit
make clean # Nettoyer les caches Python uniquement
make fclean # Nettoyage complet (venv + cache + modèles générés)
Problèmes courants
Erreur de permissions :
# S'assurer que make a les permissions
chmod +x Makefile
Port 8501 déjà utilisé :
# Lancer sur un autre port
.venv/bin/python -m streamlit run src/dashboard.py --server.port 8502
Vérification de l'installation
Une fois l'installation terminée, vous devriez voir :
- ✅ Interface Streamlit accessible sur
http://localhost:8501 - ✅ Upload d'image fonctionnel
- ✅ Prédictions en temps réel
- ✅ Fiches Pokédex complètes
Désinstallation
Pour supprimer complètement le projet :
make fclean # Nettoyage complet (recommandé)
cd ..
rm -rf Anidex # Supprimer le dossier du projet
Ou nettoyage partiel :
make clean # Garder l'environnement, supprimer juste les caches
🤝 Contribution
Les contributions sont les bienvenues ! Le système de feedback intégré permet d'améliorer continuellement le modèle.
Feedback utilisateur
- Utilisez les boutons "✅ Oui, c'est correct!" et "❌ Non, c'est faux" après chaque prédiction
- Vos retours sont automatiquement sauvegardés pour améliorer le modèle
- Les données anonymisées contribuent à l'entraînement futur
📈 Roadmap
Version actuelle (1.0)
- ✅ Classification de 10 animaux
- ✅ Interface Streamlit complète
- ✅ Système de feedback
- ✅ Fiches Pokédex
Versions futures
- 🔄 v1.1 : Géolocalisation des animaux
- 🔄 v1.2 : API REST pour intégrations
- 🔄 v2.0 : Classification multi-animaux par image
👨💻 Auteur
NotJuz0o - Etudiant EPITECH Promo 2029
Projet réalisé dans le cadre du développement de compétences en machine learning
📄 Licence
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.
🎯 Objectifs pédagogiques
Ce projet couvre l'ensemble du cycle de développement ML :
- Collecte et analyse de données
- Prétraitement d'images
- Transfer learning et fine-tuning
- Déploiement d'application ML
- Interface utilisateur interactive
- Amélioration continue par feedback
🌟 Testez dès maintenant Anidex et découvrez la magie de l'IA appliquée à la reconnaissance animale !

Tardis
TARDIS
Project Overview
TARDIS analyzes train trajectory data to predict delays for specific routes and dates. This application processes SNCF's historical delay data through a robust cleaning pipeline, trains multiple machine learning models, and delivers predictions via an intuitive Streamlit interface.
Key Features
- Data Cleaning Pipeline: Corrects decimal values, standardizes station names, and handles missing data
- Multi-Model Approach: Compares Linear Regression, Gradient Boosting, Random Forest, and Neural Networks
- Interactive Predictions: Get delay forecasts for specific routes and dates
- Visual Analytics: Heatmaps, station comparisons, and trend visualizations
Technologies
| Component | Tools | |-----------|-------| | Frontend | Streamlit | | Backend | Python 3.9+ | | Data Processing | Pandas, NumPy | | Visualization | Matplotlib, Seaborn | | Machine Learning | Scikit-learn, TensorFlow | | Code Quality | Ruff Formatter |
Data Cleaning
The tardis_eda.ipynb notebook performs:
- Decimal Correction: Groups stations to normalize numerical values
- Text Standardization: Fixes typos in:
Departure stationArrival stationDatecolumns
- Feature Engineering: Creates consistent temporal features
- Data Reduction: Removes non-essential columns while preserving key metrics
Frontend
-
Route Prediction Tool
- Select departure/arrival stations
- Choose travel date
- Receive delay prediction
-
Historical Analysis
- Monthly delay heatmaps
- Station performance comparisons
- Cancellation rate trends
-
Model Insights
- Variable importance charts
- Prediction confidence intervals
Contributions Code
Un voyage visuel à travers mes contributions open source.
Prêt à collaborer ?
Je suis toujours ouvert pour discuter de conception de produits ou d'opportunités de partenariat.