lopatin96 / laravel-cashier-shop
Laravel cashier shop
Installs: 4 860
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/lopatin96/laravel-cashier-shop
Requires
- php: >=8.1
 - veelasky/laravel-hashid: *
 
Requires (Dev)
- orchestra/testbench: ^8.0
 
- dev-main
 - 1.0.88
 - 1.0.87
 - 1.0.86
 - 1.0.85
 - 1.0.84
 - 1.0.83
 - 1.0.82
 - 1.0.81
 - 1.0.80
 - 1.0.79
 - 1.0.78
 - 1.0.77
 - 1.0.76
 - 1.0.75
 - 1.0.74
 - 1.0.73
 - 1.0.72
 - 1.0.71
 - 1.0.70
 - 1.0.69
 - 1.0.68
 - 1.0.67
 - 1.0.66
 - 1.0.65
 - 1.0.64
 - 1.0.63
 - 1.0.62
 - 1.0.61
 - 1.0.60
 - 1.0.59
 - 1.0.58
 - 1.0.57
 - 1.0.56
 - 1.0.55
 - 1.0.54
 - 1.0.53
 - 1.0.52
 - 1.0.51
 - 1.0.50
 - 1.0.49
 - 1.0.48
 - 1.0.47
 - 1.0.46
 - 1.0.45
 - 1.0.44
 - 1.0.43
 - 1.0.42
 - 1.0.41
 - 1.0.40
 - 1.0.39
 - 1.0.38
 - 1.0.37
 - 1.0.36
 - 1.0.35
 - 1.0.34
 - 1.0.33
 - 1.0.32
 - 1.0.31
 - 1.0.30
 - 1.0.29
 - 1.0.28
 - 1.0.27
 - 1.0.26
 - 1.0.25
 - 1.0.24
 - 1.0.23
 - 1.0.22
 - 1.0.21
 - 1.0.20
 - 1.0.19
 - 1.0.18
 - 1.0.17
 - 1.0.16
 - 1.0.15
 - 1.0.14
 - 1.0.13
 - 1.0.12
 - 1.0.11
 - 1.0.10
 - 1.0.9
 - 1.0.8
 - 1.0.7
 - 1.0.6
 - 1.0.5
 - 1.0.4
 - 1.0.3
 - 1.0.2
 - 1.0.1
 - 1.0.0
 
This package is auto-updated.
Last update: 2025-10-05 21:42:57 UTC
README
Create app/View/Components/ShopLayout.php.
<?php namespace App\View\Components; use Illuminate\View\Component; use Illuminate\View\View; class ShopLayout extends Component { public function render(): View { return view('layouts.shop'); } }
Create resources/views/layouts/shop.blade.php.
Trait
Add HasOrders trait and cast to User model.
use Atin\LaravelCashierShop\Traits\HasOrders; class User extends Authenticatable { use HasOrders; protected $casts = [ … 'shop_visited_at' => 'datetime', ];
Products
Create app/Products directory and TestProduct class:
<?php namespace App\Products; use App\Models\User; use Atin\LaravelCashierShop\Interfaces\Product; use Atin\LaravelCashierShop\Models\Order; class TestProduct implements Product { public function process(Order $order): void { // TODO: Implement process() method. } public function isListed(User $user): bool { // TODO: Implement isListed() method. } public function isPurchasable(User $user): bool { // TODO: Implement isPurchasable() method. } }
Console
Add DeleteTooOldIncompleteOrders to app/Console/Kernel.php
use Atin\LaravelCashierShop\Console\DeleteTooOldIncompleteOrders; class Kernel extends ConsoleKernel { protected function schedule(Schedule $schedule): void { $schedule->call(new DeleteTooOldIncompleteOrders)->daily();
Publishing
Localization
php artisan vendor:publish --tag="laravel-cashier-shop-lang"
Views
php artisan vendor:publish --tag="laravel-cashier-shop-views"
Config
php artisan vendor:publish --tag="laravel-cashier-shop-config"
Migrations
php artisan vendor:publish --tag="laravel-cashier-shop-migrations"