Laravel Phone Shop is a modern e-commerce store for selling mobile phones and electronics, built on the Laravel 10 framework with a modular architecture (powered by nwidart/laravel-modules). The codebase is organized into clear feature modules — Shop, Blog, User, and Core — making the storefront easy to navigate, extend, and maintain.
The store covers the full shopping journey: a rich product catalog with brands, attributes/options, product catalogs and categories, accessories, a shopping cart, compare, fast-buy, coupons, delivery types, payments, and refunds. It also includes engagement features like a gift system and a lucky wheel, a built-in blog with categories and tags, and admin tooling for managing every entity. Interactive UI is delivered with Livewire 3, Alpine.js, and Tailwind CSS, while Jalali (Persian) date support, SEO (meta + sitemap), PDF invoices, and Excel import/export round out a market-ready platform.
It's ideal for developers and shop owners who want a modular, customizable Laravel storefront for phones and electronics.
🔎 Keywords: laravel ecommerce, phone shop, mobile store, online shop, livewire shop, tailwind ecommerce, modular laravel, nwidart modules, shopping cart, coupons, persian ecommerce, jalali calendar, seo sitemap.
- 📦 Product catalog — products, brands, attributes & values, accessories, catalogs & categories.
- 🛒 Shopping cart & checkout — cart (darryldecode), fast-buy, compare.
- 🏷️ Coupons & discounts.
- 🎁 Gifts & user gifts plus a lucky wheel for promotions.
- 🚚 Delivery types and order management with order items & order info.
- 💳 Payments with SOAP-based gateway integration.
- 💸 Refunds workflow.
- 📝 Blog module — posts, categories, tags, and relations.
- 👤 User module — accounts and customer area.
- 🔍 SEO — meta tags (ralphjsmit/laravel-seo) and XML sitemap (spatie/laravel-sitemap).
- 🧾 PDF invoices (DomPDF / Snappy) and Excel import/export (Maatwebsite).
- 🗓️ Jalali (Persian) calendar support and a Persian date picker.
- 🔔 SweetAlert / Livewire alerts for friendly notifications.
- 🧩 Modular architecture — independent Shop, Blog, User, and Core modules.
| Layer | Technologies |
|---|---|
| Backend | Laravel 10, PHP 8.1+, nwidart/laravel-modules, Laravel Sanctum |
| Interactivity | Livewire 3, Alpine.js |
| Frontend | Blade, Tailwind CSS, Vite, Axios, @tailwindcss/forms |
| Commerce | darryldecode/cart, eloquent-sluggable, realrashid/sweet-alert |
| SEO | ralphjsmit/laravel-seo, spatie/laravel-sitemap |
| Docs & Data | barryvdh/laravel-dompdf, laravel-snappy, niklasravnsborg/laravel-pdf, maatwebsite/excel |
| Payments | ricorocks-digital-agency/soap (SOAP gateway) |
| i18n & Media | morilog/jalali, persian-datepicker, alexusmai/laravel-file-manager |
- PHP 8.1+ with Composer (
ext-soapenabled) - MySQL database
- Node.js & npm
# 1. Clone the repository
git clone https://github.com/morpheusadam/MobileMart.git
cd Laravel-Phone-Shop
# 2. Install dependencies
composer install
npm install
# 3. Configure environment
cp .env.example .env
php artisan key:generate
# 4. Set your database credentials in .env, then migrate
php artisan migrate
# 5. Build assets and serve
npm run dev
php artisan serveOpen http://localhost:8000 in your browser.
⚙️ Enable the PHP
soapextension and configure your payment gateway and storage settings in.env. Module-specific config lives under eachModules/<Name>/Configdirectory.
Laravel-Phone-Shop/
├── Modules/
│ ├── Shop/ # Products, brands, cart, orders, coupons, gifts,
│ │ # lucky wheel, delivery, payment, refunds, compare
│ ├── Blog/ # Posts, categories, tags & relations
│ ├── User/ # Accounts & customer area
│ └── Core/ # Shared blocks, theme & building blocks
├── app/ # Application core
├── config/ # Global configuration
├── resources/ # Shared views & assets
└── routes/ # Application routes
Each module follows a self-contained layout: Entities/, Http/Controllers/{Admin,Front}, Database/Migrations, Resources/views, Routes/, and Providers/.
Contributions are welcome! Open an issue or submit a pull request with new modules, features, or fixes.
Built on the open-source Laravel framework (MIT). Add a LICENSE file to clarify distribution terms.