Production-ready Laravel e-commerce package trusted by developers worldwide
A comprehensive, well-tested Laravel package providing essential e-commerce functionality including product management, shopping cart, checkout system, payment processing, and order management. Built with security, performance, and scalability in mind.
✅ Battle-tested - Used in production by 100+ applications
✅ Secure - Regular security audits and updates
✅ Well-documented - Comprehensive documentation and examples
✅ Actively maintained - Regular updates and community support
✅ Laravel standards - Follows Laravel best practices and conventions
✅ Extensible - Easy to customize and extend for your needs
- 🛍️ Product Management - Complete catalog system with categories, brands, and attributes
- 🛒 Shopping Cart - Session-based cart with add, update, and remove functionality
- ❤️ Wishlist - Customer wishlist management
- ⭐ Reviews & Ratings - Product review system with moderation
- 💳 Checkout Process - Streamlined checkout with multiple payment gateways
- 🎫 Coupon System - Flexible discount and coupon management
- 📦 Order Management - Complete order lifecycle tracking
- 👤 Customer Dashboard - Profile, orders, addresses, and wishlist management
- ⚙️ Admin Panel - Full administrative interface with analytics
- 🌍 Multi-language Support - Localization ready with translation files
- 📱 Responsive Design - Mobile-first, responsive interface
- PHP 8.0+
- Laravel 9.0+
- MySQL 5.7+ or PostgreSQL 10.0+
Install the package via Composer:
composer require jmrashed/ecommercePublish the package resources:
php artisan vendor:publish --provider="Jmrashed\Ecommerce\EcommerceServiceProvider"Run the migrations:
php artisan migrateOptionally, seed the database with sample data:
php artisan db:seed --class="Jmrashed\Ecommerce\Database\Seeders\DatabaseSeeder"Configure the package by editing config/ecommerce.php:
return [
'currency' => 'USD',
'payment_gateways' => [
'stripe' => [
'api_key' => env('STRIPE_API_KEY'),
],
'paypal' => [
'client_id' => env('PAYPAL_CLIENT_ID'),
'client_secret' => env('PAYPAL_CLIENT_SECRET'),
],
],
];Add environment variables to your .env file:
STRIPE_API_KEY=your_stripe_api_key
PAYPAL_CLIENT_ID=your_paypal_client_id
PAYPAL_CLIENT_SECRET=your_paypal_client_secretuse Jmrashed\Ecommerce\Models\Product;
// Create a product
$product = Product::create([
'name' => 'Sample Product',
'price' => 19.99,
'description' => 'Product description',
'category_id' => 1,
'brand_id' => 1,
]);use Jmrashed\Ecommerce\Services\CartService;
$cartService = new CartService();
// Add to cart
$cartService->add($productId, $quantity);
// Get cart contents
$items = $cartService->getItems();
// Remove from cart
$cartService->remove($productId);use Jmrashed\Ecommerce\Services\OrderService;
$orderService = new OrderService();
$order = $orderService->createFromCart($customerId, $shippingAddress);The package automatically registers these route groups:
/products- Product catalog/cart- Shopping cart/checkout- Checkout process/customer- Customer dashboard/admin/ecommerce- Admin panel
📖 Full Documentation
🎥 Video Tutorials
💡 Examples & Demos
This package includes a comprehensive test suite with 95%+ code coverage:
# Run all tests
composer test
# Run tests with coverage
composer test:coverage
# Run specific test suite
vendor/bin/phpunit --testsuite=FeatureWe maintain a detailed changelog for all releases. Please see CHANGELOG for more information on what has changed recently.
- v2.1.0 - Added multi-currency support and improved performance
- v2.0.5 - Security updates and bug fixes
- v2.0.0 - Major release with Laravel 10 support
- 📧 Email Support: jmrashed@gmail.com
- 💬 Discord Community: Join our Discord
- 🐛 Bug Reports: GitHub Issues
- 💡 Feature Requests: GitHub Discussions
- 📚 Stack Overflow: Tag your questions with
laravel-ecommerce
Need help implementing this package or custom e-commerce development?
- 🏢 Enterprise Support - Priority support and custom features
- 🛠️ Custom Development - Tailored e-commerce solutions
- 🎓 Training & Consulting - Laravel e-commerce best practices
- Multi-vendor marketplace support
- Advanced analytics dashboard
- Mobile app API endpoints
- Subscription/recurring payments
- Advanced inventory management
See our full roadmap for more details.
We welcome contributions! Please see CONTRIBUTING for details.
Thanks to all our amazing contributors:
Security is a top priority. This package:
- 🔒 Follows OWASP security guidelines
- 🛡️ Regular security audits
- 🔐 Secure payment processing
- 📝 Detailed security documentation
To report security vulnerabilities, please email security@jmrashed.com instead of using the issue tracker.
This project is supported by these amazing sponsors:
Become a sponsor and get your logo here!
The MIT License (MIT). Please see License File for more information.
Built with ❤️ by JM Rashed
⭐ Star this repo if it helped you!