Code for YouTube series on building a Laravel E-Commerce application.
Code for YouTube video series: https://www.youtube.com/watch?v=o5PWIuDTgxg&list=PLEhEHUEU3x5oPTli631ZX9cxl6cU_sDaR
Website Demo: https://laravelecommerceexample.ca. The demo has limited permissions. Install locally for full access.
cd
into itcomposer install
.env.example
file to .env
php artisan key:generate
.env
file.env
file. Specifically STRIPE_KEY
and STRIPE_SECRET
.env
file. Specifically ALGOLIA_APP_ID
and ALGOLIA_SECRET
. See this episode..env
file if you want to use PayPal. Specifically BT_MERCHANT_ID
, BT_PUBLIC_KEY
, BT_PRIVATE_KEY
. See this episode. If you don’t, it should still work but won’t show the paypal payment at checkout.APP_URL
in your .env
file. This is needed for Voyager to correctly resolve asset URLs.ADMIN_PASSWORD
in your .env
file if you want to specify an admin password. If not, the default password is ‘password’php artisan ecommerce:install
. This will migrate the database and run any seeders necessary. See this episode.npm install
npm run dev
php artisan serve
or use Laravel Valet or Laravel Homesteadlocalhost:8000
in your browser/admin
if you want to access the Voyager admin backend. Admin User/Password: [email protected]/password
. Admin Web User/Password: [email protected]/password
I originally used the Crinsane/LaravelShoppingcart package but it is slow to update to the latest versions of Laravel. I now use hardevine/LaravelShoppingcart which is a forked version that updates quicker.
The money_format
function does not work in Windows. Take a look at this thread. As an alternative, just use the number_format
function instead.
app/helpers.php
replace money_format
line with return '$'.number_format($price / 100, 2);
app/Product.php
replace money_format
line with return '$'.number_format($this->price / 100, 2);
config/cart.php
set the thousand_seperator
to an empty string or you might get a ‘non well formed numeric value encountered’ error. It conflicts with number_format
.If you would like to follow along from a particular point, follow these instructions. I’m going to be starting from my starting point in the first video of the series. You can choose any point by replacing the hash with any particular commit.
cd
into itgit checkout f4f651a8a35ebb2ff38ba15771fd65c93051f942
php artisan ecommerce:install
, migrate and seed the normal way with php artisan migrate --seed