Build Shopify Apps With Laravel
Welcome to the world of Shopify, where I'll show you, step by step, how to build a Shopify app with Laravel from scratch. We'll cover everything you need to know - from the initial setup, all the way to deployment. I hope you're excited!
Progress
Series Info
- Episodes
- 19
- Run Time
- 3h 22m
- Difficulty
- Intermediate
- Last Updated
- Sep 7, 2023
- Version
- Latest
Series Episodes
- Episodes (19)
Shopify and Project Overview
In this beginning lesson, we'll go over what Shopify is, its ecosystem, and explore the differences between public and private apps, embedded and non-embedded apps, and how they extend the functionality of Shopify stores.Set Up a Shopify Development Store
In this episode, we create a new Shopify partner's account, a development store and an app.The Laravel Shopify Package
In this episode, we set up our local development environment for Laravel using Laravel Sail. We also install the Laravel Shopify package and go over some of its configuration options.Connecting the Dots
In this episode, we connect Laravel with Shopify by using ngrok to expose localhost to a public URL with SSL. We also dive into the source code of theVerifyShopifymiddleware to understand how authentication and redirects work behind the scenes.Embedded Apps and App Bridge
In this lesson, we learn about Shopify AppBridge, a JavaScript library that allows us to create embedded apps within the Shopify admin. We explore how to enable embedded apps in the partner dashboard and examine the default layout blade template to understand its functionality.Vite and Hot Module Reloading With Blade
In this episode, we get Vite and HMR working so that we don't have to keep reloading the frame or refreshing the page. We also configure axios to automatically pass the correct session token along the requests.Use Laravel Telescope for Debugging
In this lesson, we will learn how to use Laravel Telescope as a debugging tool to gain insights into the requests made in a Laravel app. We will install Telescope, migrate the database, and configure it for local development. Telescope allows us to track requests, exceptions, DB queries, logs, jobs, and more, making it a valuable tool for troubleshooting.Set Up a React SPA with Laravel
In this lesson, we will set up a React single-page application (SPA) within a Laravel Shopify project. We will configure the front-end engine to use React, install necessary dependencies, and update the routing and templates. We will also initialize the Shopify app bridge and configure the app bridge provider.Intro to Polaris
In this episode, we learn what Shopify Polaris is, how to install, and get familiar with some of its components. We also start building the initial structure and components for the Faker app.Axios Setup and Session Tokens In React
In this episode, we set up an axios custom hook and configure it to pass the appropriate session token, via an interceptor. We also perform a bit of cleanup by extracting the product creation code into its own component.Create Fake Products
In this episode, we implement the logic to create fake products by making API calls to Shopify. We also implement simple validation formatting in the UI.Delete Generated Fake Data
In this episode, we continue working on the Faker app and add the ability to track created products so that we can exclusively delete the products that were created by the Faker app.Shopify Rate Limits and Versioning
In this episode, we talk about the Shopify API rate limits as well as the versioning. We introduce queued jobs so that instead of generating or deleting the products on the fly, it will queue the job that will perform those actions.Create Fake Customers
In this episode, we add another slider to the UI and implement the ability to create fake customers in addition to fake products. In the process, we will also perform a bit of cleanup and refactoring in our UI code.Extend Access Scopes
In this episode, we figure out how to make Shopify grant our the necessary enough permissions to work with customers API. We do this by forcing a redirect on the user to Shopify's grant page to accept the updated API scopes.Set Up Billing
In this episode, we discuss billing and how to charge merchants for using our app. We go over the basic flow of billing and learn how to use Laravel Shopify's built in billing features to bill merchants.Plan Upgrade and Downgrade
In this episode, we continue with our discussion around billing, as we implement the ability for users to upgrade and downgrade plans.WebHooks and GDPR
In this episode, we learn about Shopify's webhooks as well as the GDPR policy and mandatory webhooks.Deploy the App
To wrap up this series, let's deploy our Faker app to production using Laravel Forge. Thanks for coming along for the ride!
