Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Builds and debugs Shopify themes (.liquid files, theme.json, sections), develops custom Shopify apps (shopify.app.toml, OAuth, webhooks), and implements Storefront API integrations for headless storefronts. Use when building or customizing Shopify themes, creating Hydrogen or custom React storefronts, developing Shopify apps, implementing checkout UI extensions or Shopify Functions, optimizing performance, or integrating third-party services. Invoke for Liquid templating, Storefront API, app dev
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-02 | ✗→✓ | ▲ Improved | -2% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 78% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 122% | 0% |
| case-01 | ✓→✓ | = Same ✓ | 24% | 0% |
| case-04 | ✓→✓ | = Same ✓ | 117% | 0% |
<!-- source: jeffallan-shopify-expert — https://raw.githubusercontent.com/Jeffallan/claude-skills/main/skills/shopify-expert/SKILL.md -->
Senior Shopify developer with expertise in theme development, headless commerce, app architecture, and custom checkout solutions.
shopify theme init or shopify app create; configure shopify.app.toml and theme schemashopify theme check for Liquid linting; if errors are found, fix them and re-run before proceeding. Run shopify app dev to verify app locally; test checkout extensions in sandbox. If validation fails at any step, resolve all reported issues before moving to deploymentshopify theme push for themes; shopify app deploy for apps; watch Shopify error logs and performance metrics post-deployLoad detailed guidance based on context:
| Topic | Reference | Load When | |-------|-----------|-----------| | Liquid Templating | references/liquid-templating.md | Theme development, template customization | | Storefront API | references/storefront-api.md | Headless commerce, Hydrogen, custom frontends | | App Development | references/app-development.md | Building Shopify apps, OAuth, webhooks | | Checkout Extensions | references/checkout-customization.md | Checkout UI extensions, Shopify Functions | | Performance | references/performance-optimization.md | Theme speed, asset optimization, caching |
liquid{% comment %} templates/product.liquid {% endcomment %} <h1>{{ product.title }}</h1> <p>{{ product.metafields.custom.care_instructions.value }}</p> {% for variant in product.variants %} <option value="{{ variant.id }}" {% unless variant.available %}disabled{% endunless %} > {{ variant.title }} — {{ variant.price | money }} </option> {% endfor %} {{ product.description | metafield_tag }}
liquid{% comment %} sections/collection-filters.liquid {% endcomment %} {% for filter in collection.filters %} <details> <summary>{{ filter.label }}</summary> {% for value in filter.values %} <label> <input type="checkbox" name="{{ value.param_name }}" value="{{ value.value }}" {% if value.active %}checked{% endif %} > {{ value.label }} ({{ value.count }}) </label> {% endfor %} </details> {% endfor %}
graphqlquery ProductByHandle($handle: String!) { product(handle: $handle) { id title descriptionHtml featuredImage { url(transform: { maxWidth: 800, preferredContentType: WEBP }) altText } variants(first: 10) { edges { node { id title price { amount currencyCode } availableForSale selectedOptions { name value } } } } metafield(namespace: "custom", key: "care_instructions") { value type } } }
bash# Theme development shopify theme dev --store=your-store.myshopify.com # Live preview with hot reload shopify theme check # Lint Liquid for errors/warnings shopify theme push --only templates/ sections/ # Partial push shopify theme pull # Sync remote changes locally # App development shopify app create node # Scaffold Node.js app shopify app dev # Local dev with ngrok tunnel shopify app deploy # Submit app version shopify app generate extension # Add checkout UI extension # GraphQL shopify app generate graphql # Generate typed GraphQL hooks
typescriptimport { authenticate } from "../shopify.server"; import type { LoaderFunctionArgs } from "@remix-run/node"; export const loader = async ({ request }: LoaderFunctionArgs) => { const { admin } = await authenticate.admin(request); const response = await admin.graphql(` query { shop { name myshopifyDomain plan { displayName } } } `); const { data } = await response.json(); return data.shop; };
shopify theme check before every theme deploymentWhen implementing Shopify solutions, provide:
Shopify CLI 3.x, Liquid 2.0, Storefront API 2024-10, Admin API, GraphQL, Hydrogen 2024, Remix, Oxygen, Polaris, App Bridge 4.0, Checkout UI Extensions, Shopify Functions, metafields, metaobjects, theme architecture, Shopify Plus features
Other measured skills in the registry, with their headline benchmark lift.