laravel_livewire_shop / laravel-livewire-shop
A complete e-commerce solution for Laravel with Livewire
Installs: 8
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Language:Blade
pkg:composer/laravel_livewire_shop/laravel-livewire-shop
Requires
- php: ^8.0
- doctrine/dbal: ^3.0
- illuminate/support: ^8.0|^9.0|^10.0|^11.0|^12.0
- livewire/livewire: ^2.0|^3.0
This package is auto-updated.
Last update: 2025-12-25 04:36:13 UTC
README
Un plugin complet et prêt à l'emploi pour créer une boutique en ligne moderne avec Laravel et Livewire.
✨ Fonctionnalités Complètes
🛒 Panier & Commandes
- ✅ Panier dynamique en temps réel
- ✅ Gestion des quantités
- ✅ Persistance du panier
- ✅ Processus de commande complet
- ✅ Gestion des statuts de commande
- ✅ Historique des commandes
💰 Système de Prix & Promotions
- ✅ Codes promo avec conditions
- ✅ Promotions temporaires
- ✅ Calcul automatique des taxes
- ✅ Frais de port configurables
- ✅ Livraison gratuite conditionnelle
👤 Expérience Client
- ✅ Liste de souhaits (wishlist)
- ✅ Avis et notes produits
- ✅ Recherche avancée avec filtres
- ✅ Tri par prix, popularité, notes
- ✅ Notifications en temps réel
📧 Notifications & Emails
- ✅ Confirmation de commande par email
- ✅ Mise à jour du statut de commande
- ✅ Templates d'emails personnalisables
- ✅ Système d'événements complet
🎛️ Administration
- ✅ Dashboard complet avec analytics
- ✅ Gestion des produits
- ✅ Gestion des commandes
- ✅ Modération des avis
- ✅ Gestion des codes promo
- ✅ Statistiques de vente
🚀 Performance & Sécurité
- ✅ Cache intelligent
- ✅ Optimisations de base de données
- ✅ Policies de sécurité
- ✅ Validation complète des données
- ✅ Protection CSRF
📦 Installation Rapide
1. Installation via Composer
composer require laravel_livewire_shop/laravel-livewire-shop:^0.1.6-beta
2. Publication des ressources
php artisan shop:install
Cette commande configure tout automatiquement :
- ✅ Publie les configurations
- ✅ Exécute les migrations
- ✅ Crée des données d'exemple
- ✅ Configure les routes
Vous pouvez également publier manuellement les ressources :
# Configuration php artisan vendor:publish --tag=livewire-shop-config # Vues php artisan vendor:publish --tag=livewire-shop-views # Migrations php artisan vendor:publish --tag=livewire-shop-migrations
3. Publication des vues et des contrôleurs
Pour configurer correctement les contrôleurs et les routes nécessaires :
php artisan shop:publish-views
4. Ajout des routes (automatique)
Le fichier routes/shop.php est créé automatiquement. Ajoutez dans votre RouteServiceProvider :
Route::middleware('web')->group(base_path('routes/shop.php'));
🎯 Utilisation Immédiate
Dans vos vues Blade
{{-- Icône panier avec compteur --}} <livewire:cart-icon /> {{-- Icône wishlist --}} <livewire:wishlist-icon /> {{-- Bouton ajouter au panier --}} <livewire:add-to-cart :product="$product" /> {{-- Bouton wishlist --}} <livewire:add-to-wishlist :product="$product" /> {{-- Panier complet --}} <livewire:shop-cart /> {{-- Processus de commande --}} <livewire:checkout /> {{-- Recherche avancée --}} <livewire:advanced-search /> {{-- Avis produits --}} <livewire:product-reviews :product="$product" /> {{-- Code promo --}} <livewire:coupon-code />
🔧 Résolution des problèmes courants
Erreur dans la vue shop.blade.php
Si vous rencontrez une erreur concernant la variable $products non définie dans la vue shop.blade.php, exécutez :
php artisan shop:publish-views
Cette commande configurera automatiquement les contrôleurs et les routes nécessaires pour faire fonctionner la boutique dans votre application.
Migrations et tables manquantes
Si vous rencontrez des erreurs lors des migrations, comme des tables manquantes ou des colonnes dupliquées, assurez-vous d'utiliser la version ^0.1.1-beta ou supérieure du package qui corrige ces problèmes.
composer require laravel_livewire_shop/laravel-livewire-shop:^0.1.2-beta
Vérification de compatibilité avec Laravel
Le package est compatible avec Laravel 8, 9, 10, 11 et 12. Si vous rencontrez des erreurs de compatibilité, vérifiez votre version de Laravel avec :
php artisan --version
Problèmes de cache
En cas de comportement inattendu, essayez de vider les caches :
php artisan cache:clear php artisan config:clear php artisan view:clear
Avec la facade Cart
use LaravelLivewireShop\LaravelLivewireShop\Facades\Cart; // Ajouter un produit Cart::add($productId, $quantity, $attributes); // Obtenir le panier $items = Cart::getCart(); // Obtenir le total avec détails $breakdown = Cart::getTotalWithBreakdown(); // Vider le panier Cart::clear();
Service de commande
use LaravelLivewireShop\LaravelLivewireShop\Services\OrderService; $orderService = new OrderService(); // Créer une commande $order = $orderService->createOrder($billingAddress, $shippingAddress, $userId); // Changer le statut $orderService->updateOrderStatus($order, 'shipped');
⚙️ Configuration
Fichier de configuration config/livewire-shop.php
return [ // Devise 'currency' => [ 'default' => 'EUR', 'symbol' => '€', 'position' => 'after', // 'before' ou 'after' ], // Taxes 'tax' => [ 'enabled' => true, 'rate' => 20, // Pourcentage 'included' => false, ], // Livraison 'shipping' => [ 'enabled' => true, 'free_from' => 50, // Livraison gratuite à partir de 'default_cost' => 5.00, ], // Panier 'cart' => [ 'session_key' => 'livewire_shop_cart', 'auto_destroy' => false, ], ];
🗄️ Modèles de Base de Données
Produits (shop_products)
- Informations de base (nom, description, prix)
- Prix de vente et promotions
- Gestion du stock
- Variantes (couleurs, tailles, etc.)
- Notes et avis moyens
Commandes (shop_orders)
- Informations de facturation/livraison
- Totaux détaillés avec taxes
- Statuts de commande
- Codes promo appliqués
Codes Promo (shop_coupons)
- Types : pourcentage ou montant fixe
- Conditions d'utilisation
- Limites d'usage
- Dates de validité
Avis (shop_reviews)
- Notes de 1 à 5 étoiles
- Commentaires clients
- Système de modération
🎨 Interface Utilisateur
Design Moderne
- Interface responsive Bootstrap 5
- Animations CSS fluides
- Icônes émojis pour une touche fun
- Design cards élégant
Notifications
- Toast notifications en temps réel
- Messages de succès/erreur
- Animations d'état de chargement
Expérience Mobile
- Interface 100% responsive
- Navigation tactile optimisée
- Performance mobile excellente
📊 Analytics & Rapports
Dashboard Admin
- Statistiques de vente en temps réel
- Top des produits vendus
- Analytics clients
- Graphiques de performance
Données trackées
- Vues de produits
- Abandons de panier
- Conversion rates
- Valeur panier moyenne
🔧 Commandes Artisan
# Installation complète php artisan shop:install # Créer des produits d'exemple php artisan shop:create-products # Optimiser la boutique php artisan shop:optimize # Nettoyer le cache php artisan shop:clear-cache
🎯 Codes Promo d'Exemple
Le plugin installe automatiquement ces codes :
- BIENVENUE10 - 10% de réduction dès 30€
- LIVRAISON5 - 5€ de réduction dès 50€
- FIDELITE20 - 20% de réduction dès 100€
🛡️ Sécurité
- Validation complète des données
- Protection contre les injections
- Gestion des sessions sécurisée
- Policies d'autorisation
- Audit trails des commandes
🚀 Performance
- Cache intelligent des produits populaires
- Optimisations de base de données
- Lazy loading des images
- Compression des assets
- CDN ready
📚 Structure des Fichiers
src/
├── Components/ # Composants Livewire
├── Models/ # Modèles Eloquent
├── Services/ # Logique métier
├── Http/Controllers/ # Contrôleurs
├── Mail/ # Templates d'emails
├── Events/ # Événements
├── Listeners/ # Listeners d'événements
├── Console/Commands/ # Commandes Artisan
├── Policies/ # Policies de sécurité
└── Traits/ # Traits réutilisables
resources/views/
├── components/ # Vues des composants
├── pages/ # Pages complètes
├── admin/ # Interface admin
├── emails/ # Templates d'emails
└── layouts/ # Layouts de base
🤝 Support & Contribution
Documentation
Support
Roadmap
- Intégration Stripe/PayPal
- Multi-langues
- Multi-boutiques
- App mobile
- Marketplace features
📄 Licence
Ce package est open-source sous licence MIT.
Créé avec ❤️ pour la communauté Laravel
Plugin prêt pour la production - Plus de 50 fonctionnalités incluses !