Skip to content

Latest commit

 

History

158 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel E-Commerce Platform

A full-featured, production-ready e-commerce platform built with Laravel 12, Filament 4, and Livewire 3. This project demonstrates a modern PHP e-commerce architecture with a powerful admin panel, customer-facing storefront, multi-provider payment and shipping integrations, and comprehensive order lifecycle management.


Tech Stack

Layer Technology
Backend PHP 8.3, Laravel 12
Admin Panel Filament 4 (Server-Driven UI)
Frontend Interactivity Livewire 3, Volt
UI Components Flux UI 2, Tailwind CSS 4
Database MySQL (via Laravel Eloquent ORM)
Payments Razorpay, Cash on Delivery
Shipping ShipRocket, Delhivery
Media Spatie Media Library
Permissions Spatie Laravel Permission
Testing Pest v4

Features

🛍️ Product Catalog

  • Simple and variant-based products (size, color, and any custom attribute)
  • Product attributes and options management
  • Hierarchical categories with media support
  • Brand management
  • Multi-warehouse inventory tracking with low-stock alerts
  • Product return, replacement, and exchange policy configuration
  • SEO meta fields, slugs, dimensions, and weight
  • Product approval workflow
  • Image/media management via Spatie Media Library

🛒 Customer Storefront

  • Responsive storefront powered by Livewire 3
  • Product listing with filtering, search, and sorting
  • Detailed product pages with variants, reviews, and ratings
  • Shopping cart with real-time quantity management
  • Multiple saved delivery addresses per customer
  • Address type classification (Residential / Commercial, Shipping / Billing)
  • Customer order history and order detail views
  • Shipment tracking per order
  • Product review submission and management

📦 Order Management

  • Full order lifecycle with 19 order statuses (Initiated → Delivered → Refunded)
  • Support for Default, Return, and Replacement order types
  • Order cancellation, return, and replacement request workflows with admin approval
  • Per-line-item status tracking with full audit trail
  • Order-level and product-level status history logs
  • Refund processing actions

💳 Payments

  • Razorpay payment gateway integration with webhook handling
  • Cash on Delivery (COD) support
  • Payment status tracking (Pending, Completed, Failed, Refunding, Refunded)
  • Partial payment and COD payment type support
  • Configurable credentials via admin settings

🚚 Shipping & Logistics

  • ShipRocket integration: shipment creation, manifest generation, pickup scheduling, tracking URL generation, RTO handling, and webhook-based status updates
  • Delhivery logistics integration
  • Shipment tracking activities stored per shipment
  • Morphable shipment model for flexible relationship support
  • Configurable credentials and settings per provider

🔁 Returns & Replacements

  • Customer-initiated cancel, return, and replacement requests
  • Admin approval and rejection workflow
  • Per-product return eligibility configured at the product level
  • Return status tracking (Requested → Approved → Received → Completed)

⭐ Reviews & Ratings

  • Customer product review submission
  • Admin moderation workflow (Pending → Approved / Rejected)
  • Media/image attachments on reviews

🏢 Admin Panel (Filament 4)

  • Products — full CRUD with variant management, warehouse assignment, media, and policies
  • Categories & Brands — hierarchical categories and brand management with drag-and-drop sorting
  • Attributes & Options — manage variant attributes and values
  • Warehouses — multi-warehouse inventory and address management
  • Orders — order overview, product line items, payment and shipment details
  • Order Returns — return/replacement request management
  • Payments — transaction log and status management
  • Reviews — moderation queue with approve/reject actions
  • Users — customer account management
  • Banners — promotional banners with media and sorting
  • Pages — CMS static page editor (About, FAQ, etc.)
  • Settings Cluster — configurable General, Business, Razorpay, COD, ShipRocket, and Delhivery settings

🔐 Authentication & Authorization

  • Full auth flow: register, login, forgot/reset password, email verification
  • Role-based access control with Spatie Laravel Permission (admin and customer roles)
  • Policies for orders, products, and reviews (users can only manage their own data)

⚙️ Developer Experience

  • Filament 4 with Server-Driven UI architecture
  • Pest v4 testing framework with browser testing support
  • Laravel Pint code formatting
  • Spatie Settings with cache support for persistent application configuration
  • Laravel Telescope for local debugging
  • Docker support via Laravel Sail with Caddy web server configuration
  • Webhook controllers for Razorpay and ShipRocket

Getting Started

Requirements

  • PHP 8.3+
  • Composer
  • Node.js & NPM
  • MySQL

Installation

git clone <repo-url>
cd filament-ecommerce

composer install
npm install && npm run build

cp .env.example .env
php artisan key:generate

php artisan migrate --seed
php artisan storage:link

Settings Cache

SETTINGS_CACHE_ENABLED=true

php artisan settings:discover

Country & State Data

Seed country/state data from: https://github.com/dr5hn/countries-states-cities-database


Project Structure

app/
├── Filament/          # Admin panel resources, pages, clusters, widgets
├── Livewire/          # Customer storefront components and pages
├── Models/            # 25+ Eloquent models
├── Services/          # Razorpay, ShipRocket, Delhivery, Order services
├── Actions/           # Order return and refund actions
├── Enums/             # 17 domain enums (statuses, types, providers)
├── Policies/          # Authorization policies
└── Settings/          # Spatie settings classes

Screenshots

Storefront

Home Page Home Page

Store / Product Listing Store Page

Categories Categories Page

Shopping Cart Cart Page

My Orders My Orders

Order Details Order Details

User Addresses User Addresses

Write a Review Write Review

Profile Settings Profile Page


Admin Panel

Products Admin Products

Edit Product — Pricing, Inventory & Variants Admin Edit Product Variant

Categories Admin Categories

Brands Admin Brands

Attributes Admin Attributes

Warehouses Admin Warehouses

Customers Admin Customers

Payments Admin Payments

Payment Details Admin Payment Details

Banners Admin Banners

Pages Management Admin Pages

Settings Admin Settings


License

This project is open-sourced for portfolio and demonstration purposes.

About

Built a full-featured e-commerce platform with product variants, multi-warehouse inventory, order lifecycle, returns/replacements, and a real-time storefront. Integrated Razorpay payments plus ShipRocket/Delhivery shipping APIs with webhook automation.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages