Repository

shopify_django_app

Shopify Django App Example This project makes it easy to get a Shopify app up and running with This project simply displays basic information about the shop's products This project · License unknown · Maintenance unknown

License
Unknown

README

Shopify Django App Example

This project makes it easy to get a Shopify app up and running with
Django and the
Python Shopify API.

This project simply displays basic information about the shop's products
and orders.

This project has the following structure

  • shopify_app an app which handles authentication (meant to be reusable)
  • home an app which contains the example code to demonstrate how to use the API (meant to be modified or replaced to create your Shopify App).
  • shopify_django_app project files for serving this app.

Get It Running

Create Your App Configuration

  • Log in to your partners dashboard
  • Navigate to your apps
  • Click Create App
  • Choose a custom app or public app
  • Fill in the app name
  • Set the Application Url http://localhost:8000/
  • Set Whitelisted redirection URL( http://localhost:8000/shopify/finalize/

You will then have access to your API key and API secret KEY, you will need these
for the next steps.

Setup Environment

  1. Copy over the .env.local file into a .env file and fill out the SHOPIFY_API_KEY and SHOPIFY_API_SECRET fields

    cp .env.local .env
  2. Generate a secret key and add it to .env by running the following in the command line:

python -c 'import random; print("".join([random.choice("abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*(-_=+)") for i in range(50)]))' >> .env

For PC Users: Run this command in GIT Bash or Windows Subsystem For Linux. Alternatively, you can generate a secret key using the Python interpreter. This requires you to manually add the Django secret key to your .env file by doing the following:

Open the python interpreter:

python

Inside the python interpreter, generate the secret key, copy it, and exit:

>>> import random
>>> print("".join([random.choice("abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*(-_=+)") for i in range(50)]))
>>> exit()
  1. [Optional] you can add the api version and api scopes environment variables to the .env file:
  • SHOPIFY_API_VERSION default is unstable

  • SHOPIFY_API_SCOPE a comma-separated list of scopes, default is read_products,read_orders

Run the App

We use pipenv to get running faster. With the
.env already created in the root directory, run the app:

pipenv install
pipenv run python manage.py migrate
pipenv run python manage.py runserver

Open http://localhost:8000 in your browser to view the example.