Code Monkey home page Code Monkey logo

laravel-ecommerce-example's Introduction

Laravel Ecommerce Example

Laravel Ecommerce Example

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.

Installation

  1. Clone the repo and cd into it
  2. composer install
  3. Rename or copy .env.example file to .env
  4. php artisan key:generate
  5. Set your database credentials in your .env file
  6. Set your Stripe credentials in your .env file. Specifically STRIPE_KEY and STRIPE_SECRET
  7. Set your Algolia credentials in your .env file. Specifically ALGOLIA_APP_ID and ALGOLIA_SECRET. See this episode.
  8. Set your Braintree credentials in your .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.
  9. Set your APP_URL in your .env file. This is needed for Voyager to correctly resolve asset URLs.
  10. Set ADMIN_PASSWORD in your .env file if you want to specify an admin password. If not, the default password is 'password'
  11. php artisan ecommerce:install. This will migrate the database and run any seeders necessary. See this episode.
  12. npm install
  13. npm run dev
  14. php artisan serve or use Laravel Valet or Laravel Homestead
  15. Visit localhost:8000 in your browser
  16. Visit /admin if you want to access the Voyager admin backend. Admin User/Password: [email protected]/password. Admin Web User/Password: [email protected]/password

Shopping Cart Package

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.

Windows Users - money_format() issue

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.

  1. In app/helpers.php replace money_format line with return '$'.number_format($price / 100, 2);
  2. In app/Product.php replace money_format line with return '$'.number_format($this->price / 100, 2);
  3. In 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.

Starting from a particular point

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.

  1. Clone the repo and cd into it
  2. git checkout f4f651a8a35ebb2ff38ba15771fd65c93051f942
  3. Follow the rest of the steps above. Instead of php artisan ecommerce:install, migrate and seed the normal way with php artisan migrate --seed

laravel-ecommerce-example's People

Contributors

drehimself avatar dependabot[bot] avatar abhinavdobhal avatar aabdyli avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.