Boutique en ligne de vêtements développée avec Symfony 7.2 et Doctrine ORM : catalogue, panier, commande, espace client et back-office d'administration.
- Catalogue : boutique, catégories et fiches produit.
- Panier : ajout, suppression, vidage et calcul du total.
- Commande : tunnel de commande avec page de confirmation.
- Compte utilisateur : inscription, connexion, modification et suppression du profil, historique des commandes.
- Mot de passe oublié : réinitialisation par e-mail (SymfonyCasts Reset Password).
- Formulaire de contact protégé par un captcha.
- Pages institutionnelles : qui sommes-nous, FAQ, livraison et retours, carrières, développement durable, CGU, CGV, mentions légales, confidentialité.
- Gestion des produits et des catégories (CRUD).
- Suivi des commandes et mise à jour de leur statut.
| Couche | Outils |
|---|---|
| Back-end | PHP 8.2+, Symfony 7.2, Doctrine ORM et migrations |
| Sécurité | Symfony Security (rôles, hashage), jetons CSRF, reset password, captcha |
| Front-end | Twig, Bootstrap, Symfony UX (Turbo, Stimulus), AssetMapper |
| Base de données | SQLite par défaut, PostgreSQL via Docker Compose |
| Tests | PHPUnit |
User · Product · Category · Order · OrderItem · ResetPasswordRequest
git clone https://github.com/Walidee27/composer-maker.git
cd composer-maker
composer install
php bin/console doctrine:migrations:migrate
symfony serve # ou : php -S localhost:8000 -t publicLe projet utilise SQLite par défaut (var/data.db). Pour PostgreSQL, lance docker compose up -d et adapte DATABASE_URL dans un fichier .env.local.
src/
├── Controller/ # Boutique, panier, commande, compte, admin…
├── Entity/ # Entités Doctrine
├── Form/ # Formulaires Symfony
├── Repository/
└── Security/
templates/ # Vues Twig par section
migrations/ # Migrations Doctrine