All Projects → Lenius → laravel-basket

Lenius / laravel-basket

Licence: MIT license
A stable basket for an Laravel e-commerce website

Programming Languages

PHP
23972 projects - #3 most used programming language
Vue
7211 projects

Projects that are alternatives of or similar to laravel-basket

Smartstorenet
Open Source ASP.NET MVC Enterprise eCommerce Shopping Cart Solution
Stars: ✭ 2,363 (+13027.78%)
Mutual labels:  e-commerce, basket
awesome-medusajs
A curated list of awesome resources related to MedusaJS 😎
Stars: ✭ 113 (+527.78%)
Mutual labels:  e-commerce
e-commerce-backend
Shopping site backend which used Asp.Net Web API, JWT, Cache, Log, SqlServer, Entity Framework Core and N-Layer Architecture implementation.
Stars: ✭ 16 (-11.11%)
Mutual labels:  e-commerce
7cart
7cart is a php7 project for building online shops, catalogs or service platforms. 7cart built with simple code and database schema. It is easy to support and fast.
Stars: ✭ 27 (+50%)
Mutual labels:  e-commerce
Supply
🛍 Supply is a free e-commerce Jekyll theme with Gumroad integration.
Stars: ✭ 24 (+33.33%)
Mutual labels:  e-commerce
L-Shop
Modern e-commerce system for Minecraft.
Stars: ✭ 121 (+572.22%)
Mutual labels:  e-commerce
saleor-sdk
JavaScript/TypeScript SDK for building e-commerce experiences and checkouts with Saleor API.
Stars: ✭ 125 (+594.44%)
Mutual labels:  e-commerce
An-PHP-Based-Affiliate-marketing-website
University project involving Javascript, PHP, HTML, CSS and database’s queries management.
Stars: ✭ 51 (+183.33%)
Mutual labels:  e-commerce
Angular-Ecommerce-App-with-NGRX
No description or website provided.
Stars: ✭ 37 (+105.56%)
Mutual labels:  e-commerce
codizer-core
Laravel CMS, CRM, E-Commerce
Stars: ✭ 43 (+138.89%)
Mutual labels:  e-commerce
kasir
Cashier Management & Inventory Management System
Stars: ✭ 28 (+55.56%)
Mutual labels:  e-commerce
framework
[READ-ONLY] Core of Shopsys Framework - open source framework for building large, scalable, fast-growing e-commerce projects based on Symfony
Stars: ✭ 21 (+16.67%)
Mutual labels:  e-commerce
x
Commerce Search & Discovery frontend web components
Stars: ✭ 54 (+200%)
Mutual labels:  e-commerce
AmazonDjangoShop
Simple Django driven online shop engine using Amazon Product Advertising API as external data source.
Stars: ✭ 24 (+33.33%)
Mutual labels:  e-commerce
grav-skeleton-gravcart
The Grav Shopping Cart skeleton
Stars: ✭ 11 (-38.89%)
Mutual labels:  e-commerce
Kaleido-BERT
(CVPR2021) Kaleido-BERT: Vision-Language Pre-training on Fashion Domain.
Stars: ✭ 252 (+1300%)
Mutual labels:  e-commerce
jeeshop
No description or website provided.
Stars: ✭ 39 (+116.67%)
Mutual labels:  e-commerce
enhavo
Modern CMS with shop features based on fullstack symfony and sylius components
Stars: ✭ 80 (+344.44%)
Mutual labels:  e-commerce
drip-nodejs
The complete Nodejs wrapper for the Drip REST API
Stars: ✭ 18 (+0%)
Mutual labels:  e-commerce
eTrust
Source code and dataset for TKDE 2019 paper “Trust Relationship Prediction in Alibaba E-Commerce Platform”
Stars: ✭ 14 (-22.22%)
Mutual labels:  e-commerce

Laravel Shopping Basket Package

Total Downloads StyleCI Latest Stable Version License

Laravel Facade and Service Provider for Lenius\Basket

Installation

Using composer:

$ composer require lenius/laravel-basket
$ composer require lenius/laravel-basket^4.0 (PHP7.4)

Set up demo with artisan

$ php artisan make:auth
$ php artisan make:ecommerce

Install npm dependencies

$ npm install v-money
$ npm install vue-sortable
$ npm install vuedraggable
$ npm run dev
$ php artisan serve

Open http://localhost:8000/basket

You should then be good to go and be able to access the basket using the following static interface:

//Format array of required info for item to be added to basket...
$items = array(
	'id'       => 1,
	'name'     => 'Dog',
	'price'    => 120.00,
	'quantity' => 1,
	'weight'   => 200
);

//Make the insert...
Basket::insert(new Item($items));

//Let's see what we have got in their...
dd(Basket::totalItems());

Setting the tax rate for an item

Another key you can pass to your insert method is 'tax'. This is a percentage which you would like to be added onto the price of the item.

In the below example we will use 25% for the tax rate.

Basket::insert(new Item(array(
    'id'       => 'mouseid',
    'name'     => 'Mouse',
    'price'    => 100,
    'quantity' => 1,
    'tax'      => 25,
    'weight'   => 200
)));

Updating items in the Basket

You can update items in your Basket by updating any property on a Basket item. For example, if you were within a Basket loop then you can update a specific item using the below example.

foreach (Basket::contents() as $item) {
    $item->name = 'Foo';
    $item->quantity = 1;
}

Removing Basket items

You can remove any items in your Basket by using the remove() method on any Basket item.

foreach (Basket::contents() as $item) {
    $item->remove();
}

Destroying/emptying the Basket

You can completely empty/destroy the Basket by using the destroy() method.

Basket::destroy()

Retrieve the Basket contents

You can loop the Basket contents by using the following method

Basket::contents();

You can also return the Basket items as an array by passing true as the first argument

Basket::contents(true);

Retrieving the total items in the Basket

Basket::totalItems();

By default this method will return all items in the Basket as well as their quantities. You can pass true as the first argument to get all unique items.

Basket::totalItems(true);

Retrieving the Basket total

$Basket->total();

By default the total() method will return the total value of the Basket as a float, this will include any item taxes. If you want to retrieve the Basket total without tax then you can do so by passing false to the total() method

Basket::total(false);

Check if the Basket has an item

Basket::has($itemIdentifier);

Retreive an item object by identifier

Basket::item($itemIdentifier);

Basket items

There are several features of the Basket items that may also help when integrating your Basket.

Retrieving the total value of an item

You can retrieve the total value of a specific Basket item (including quantities) using the following method.

Basket::total();

By default, this method will return the total value of the item plus tax. So if you had a product which costs 100, with a quantity of 2 and a tax rate of 20% then the total returned by this method would be 240.

You can also get the total minus tax by passing false to the total() method.

Basket::total(false);

This would return 200.

Check if an item has options

You can check if a Basket item has options by using the hasOptions() method.

if ($item->hasOptions()) {
    // We have options
}

Remove an item from the Basket

$item->remove();

You can also get the total weight for a single item

$item->weight();

Output the item data as an array

$item->toArray();
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].