Plateforme e-commerce complète pour une boutique de vélos, développée en équipe de 5 sur plusieurs semestres du BUT Informatique. Le projet a évolué d'un prototype Laravel/PostgreSQL (SAE 3.01) vers une architecture ASP.NET Core 8 / Vue 3 complète (SAE 4.01).
Projet académique fictif : ce n'est pas le site officiel de la marque CUBE et il n'y a aucun lien avec elle.
CUBE Bikes est un projet fil rouge du BUT Informatique reproduisant une boutique en ligne de vélos. Sa première itération (SAE 3.01, semestre 3) a été développée avec Laravel et PostgreSQL, avec un accent mis sur la navigation par catégories (CTE récursives, eager loading) et la gestion des commandes. La seconde itération (SAE 4.01, semestre 4) a repris le projet sur une stack ASP.NET Core 8 / Vue 3 complète, en ajoutant authentification avancée, paiement en ligne et fonctionnalités de recherche géolocalisée.
JWT combiné à Google OAuth, 2FA par TOTP, mots de passe hashés avec BCrypt et gestion des erreurs standardisée au format RFC 7807.
Intégration de Stripe Checkout pour un processus de paiement sécurisé de bout en bout.
Filtrage avancé du catalogue produits par catégorie, taille, prix et disponibilité.
Carte interactive Leaflet/OpenStreetMap avec un store Pinia, affichant la disponibilité produit par taille et par magasin - développé par Mateo (modèles et endpoints de l'API, modale et carte côté client).
Pattern Repository/Service avec Entity Framework Core, contrôleurs C# entièrement commentés en XML et documentation Swagger.
Formulaires validés avec Vee-validate, notifications toast avec Vue Sonner, état global géré par Pinia et interface Tailwind CSS responsive.
La première version du projet, développée en Laravel et PostgreSQL, posait déjà les bases de la plateforme : navigation par catégories optimisée grâce à des CTE récursives et de l'eager loading, ainsi qu'un système de gestion des commandes. Cette évolution technique illustre ma progression d'un stack PHP/Laravel vers un stack C#/ASP.NET Core plus robuste. Ma contribution sur cette version : le sélecteur de magasin avec carte Leaflet, ville et distance, les accessoires et produits similaires sur les fiches vélo, et l'historique des commandes dans l'espace client.
Le projet est accompagné d'une documentation soignée : README détaillé, diagrammes d'architecture et timesheet généré automatiquement à partir de l'historique des commits GitHub, en plus des DTOs et contrôleurs C# commentés au format XML.