Claude-code-plugins shopify-multi-env-setup

install
source · Clone the upstream repo
git clone https://github.com/jeremylongshore/claude-code-plugins-plus-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/jeremylongshore/claude-code-plugins-plus-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/plugins/saas-packs/shopify-pack/skills/shopify-multi-env-setup" ~/.claude/skills/jeremylongshore-claude-code-plugins-shopify-multi-env-setup && rm -rf "$T"
manifest: plugins/saas-packs/shopify-pack/skills/shopify-multi-env-setup/SKILL.md
source content

Shopify Multi-Environment Setup

Overview

Configure Shopify apps with isolated development, staging, and production environments. Each environment uses a separate Shopify app instance, development store, and credentials.

Prerequisites

  • Shopify Partner account
  • Multiple development stores (free to create in Partner Dashboard)
  • Secret management solution for production (Vault, AWS Secrets Manager, etc.)

Instructions

Step 1: Create Separate App Instances

Create one app per environment in your Partner Dashboard:

EnvironmentApp NameStorePurpose
DevelopmentMy App (Dev)dev-store.myshopify.comLocal development
StagingMy App (Staging)staging-store.myshopify.comPre-prod testing
ProductionMy Applive-store.myshopify.comLive traffic

Each app gets its own

API_KEY
,
API_SECRET
, and
ACCESS_TOKEN
.

Step 2: Environment Configuration Files

Create

.env.*
files for each environment and corresponding Shopify CLI TOML configs. Production secrets should never be stored on disk -- use a secret manager.

See Environment Config Files for the complete

.env
and
.toml
configuration templates.

Step 3: Environment-Aware Configuration

TypeScript config module that loads environment-specific settings (debug mode, session storage type) with

LATEST_API_VERSION
from
@shopify/shopify-api
.

See Environment-Aware Config for the complete implementation.

Step 4: Environment Guards

Safety functions that prevent dangerous operations from running in the wrong environment (e.g., blocking test data seeding in production, requiring production for billing activation).

See Environment Guards for the complete implementation.

Output

  • Isolated environments with separate app instances
  • Environment-specific configuration loading
  • Shopify CLI configured for multi-env workflow
  • Safety guards preventing cross-environment mistakes

Error Handling

IssueCauseSolution
Wrong store in devUsing prod .envVerify
SHOPIFY_STORE
in your .env file
OAuth fails on stagingWrong redirect URLUpdate redirect_urls in staging app config
Webhooks not receivedURL mismatchEach environment needs its own webhook URLs
Production guard triggeredWrong NODE_ENVSet NODE_ENV correctly in deployment platform

Examples

Development Store Quick Setup

# Create a development store from Partner Dashboard
# Partners > Stores > Add store > Development store

# Install your dev app on the dev store
shopify app dev --store=dev-store.myshopify.com

# Populate test data
shopify populate products --count=25
shopify populate orders --count=10
shopify populate customers --count=20

Resources