misaf / vendra-product
The product module for the Vendra framework
0.0.7
2026-07-11 20:50 UTC
Requires
- php: ^8.3
- awcodes/filament-badgeable-column: ^4.0
- cknow/laravel-money: ^8.5
- filament/filament: ^5.6.8
- filament/spatie-laravel-media-library-plugin: ^5.6.8
- illuminate/support: ^13.0
- lara-zeus/spatie-translatable: ^2.0.1
- misaf/filament-jalali: ^5.1.4
- misaf/vendra-multimedia: ^0.0.7
- misaf/vendra-support: ^0.0.7
- spatie/eloquent-sortable: ^5.0.1
- spatie/laravel-package-tools: ^1.93.1
- spatie/laravel-sluggable: ^4.0.2
- staudenmeir/laravel-adjacency-list: ^1.26.1
Requires (Dev)
- fakerphp/faker: ^1.24.1
- larastan/larastan: ^3.10.0
- laravel/boost: ^2.4.12
- laravel/pint: ^1.29.3
- misaf/vendra-currency: ^0.0.7
- misaf/vendra-testing: ^0.0.7
- mockery/mockery: ^1.6.12
- nunomaduro/collision: ^8.9.4
- orchestra/testbench: ^11.1
- pestphp/pest: ^4.7.5
- pestphp/pest-plugin-arch: ^4.0.2
- pestphp/pest-plugin-laravel: ^4.1
- pestphp/pest-plugin-profanity: ^4.2.1
- pestphp/pest-plugin-type-coverage: ^4.0.4
- phpstan/extension-installer: ^1.4.3
Suggests
- misaf/vendra-attribute: Install this in the host application to manage reusable attributes and product attribute values.
- misaf/vendra-currency: Install this in the host application to manage active currencies used by product pricing forms and demo seeders.
README
Tenant-aware product management for Vendra applications.
Features
- Product categories
- Products
- Product prices per currency
- Filament resources on the
adminpanel
Requirements
- PHP 8.3+
- Laravel 13
- Filament 5
- Livewire 4
- Pest 4
- Tailwind CSS 4
misaf/vendra-supportmisaf/vendra-multimedia
Optional:
misaf/vendra-attribute— enables reusable product attributes and values through the shared support resolvermisaf/vendra-currency— enables management of the active currencies used by pricing forms and demo seeders
Installation
composer require misaf/vendra-product php artisan vendor:publish --tag=vendra-product-migrations php artisan migrate
Optional translations publish:
php artisan vendor:publish --tag=vendra-product-translations
The service provider and Filament plugin are auto-registered.
Usage
Create a category:
use Misaf\VendraProduct\Models\ProductCategory; $category = ProductCategory::query()->create([ 'name' => ['en' => 'Beverages'], 'description' => ['en' => 'Cold and hot drinks'], 'slug' => ['en' => 'beverages'], 'status' => true, ]);
Create a product:
use Misaf\VendraProduct\Models\Product; $product = Product::query()->create([ 'product_category_id' => $category->id, 'name' => ['en' => 'Orange Juice'], 'description' => ['en' => 'Fresh and natural'], 'slug' => ['en' => 'orange-juice'], 'quantity' => 20, 'stock_threshold' => 5, 'in_stock' => true, 'available_soon' => false, ]);
Add a price:
use Misaf\VendraProduct\Models\ProductPrice; ProductPrice::query()->create([ 'product_id' => $product->id, 'currency_code' => 'USD', 'price' => 9900, ]);
Load products with relationships:
$products = Product::query() ->with(['productCategory', 'latestProductPrice']) ->get();
Filament
Resources are available in the Products cluster on the admin panel:
- Product Categories
- Products
- Product Prices
Testing
composer test
License
MIT. See LICENSE.