vue-slate-tools v1.0.2
vue-slate-tools
⚠️ DO NOT INSTALL THIS PACKAGE ⚠️
There is NO further documentation for this package besides what is provided below.
Create the "Backend"
In order for this setup to be of any use, you have to connect to your shop's frontend via a public Shopify App (I followed this tutorial). This will serve as your "backend", a proxy for Shopify's REST API.
The following environment variables (see below) will be injected into your frontend via vue-slate-tools's webpack build.
SHOPIFY_APP_HOST=
SHOPIFY_APP_SHOP=
SHOPIFY_THEME_ID=Use them in your frontend like so:
import axios from 'axios'
const {
SHOPIFY_APP_HOST: shopifyAppHost,
SHOPIFY_APP_SHOP: shopifyAppShop,
SHOPIFY_THEME_ID: shopifyThemeId,
} = process.env
axios.get(`${shopifyAppHost}/shopify?shop=${shopifyAppShop}.myshopify.com`)
// now, make calls to your Shopify App to get JSON from your storeCreate the Frontend
- Install
vue-cliv2
$ yarn global add vue-cli- Init a project
$ vue init webpack $PROJECT_NAMEDelete the
node_modulesdirectory. You can also delete thebuilddirectory andindex.htmlin the project root (vue-slate-toolswill be building your project using a custom template)Edit your
package.json'sdevDependenciesto the following and install
{
"devDependencies": {
"@babel/core": "^7.4.4",
"@babel/plugin-transform-runtime": "^7.4.4",
"@babel/preset-env": "^7.4.4",
"@babel/runtime": "^7.4.4",
"babel-core": "^7.0.0-bridge.0",
"babel-loader": "^8.0.5"
},
}$ yarn install- Install this package,
vue-slate-tools, as a dev dependency
$ yarn add --dev vue-slate-toolsCustomization
- Edit your
package.jsonscriptsto accommodate for slate
{
"scripts": {
"start": "slate-tools start",
"watch": "slate-tools start --skipFirstDeploy",
"build": "slate-tools build",
"upload": "slate-tools deploy",
"deploy": "slate-tools build && slate-tools deploy",
"zip": "slate-tools build && slate-tools zip"
},
}Download the contents of the
liquiddirectory tosrc/liquidin your projectCreate an
.envfile in your project's root directory with the normal Slate environment variables
SLATE_STORE=
SLATE_PASSWORD=
SLATE_THEME_ID=
SLATE_IGNORE_FILES=Note: Your project's file structure should now look like this:
$PROJECT_NAME │ ... │ .env │ └─── src │ App.vue │ main.js ... └─── liquid
- Add to your
.envyour Shopify App URL (see above) shop name (without.myshopify.com), and theme ID
SHOPIFY_APP_HOST=
SHOPIFY_APP_SHOP=
SHOPIFY_THEME_ID=Create a local SSL cert for local development (instructions at https://github.com/Shopify/slate/wiki/4.-Create-a-self-signed-SSL-certificate)
Start it up via the scripts defined earlier in the updated
package.json! 🎉