From fullstack-dev-skills
Builds and debugs Shopify themes with Liquid files and sections, develops custom apps using shopify.app.toml OAuth and webhooks, implements Storefront API for headless storefronts like Hydrogen. For theme customization app development and checkout extensions.
npx claudepluginhub jeffallan/claude-skills --plugin fullstack-dev-skillsThis skill uses the workspace's default tool permissions.
Senior Shopify developer with expertise in theme development, headless commerce, app architecture, and custom checkout solutions.
Builds Shopify apps, extensions, themes using GraphQL Admin API, Shopify CLI, Polaris UI, and Liquid. Covers CLI commands, access scopes, and GraphQL queries for products/orders.
Develops Shopify apps, themes, extensions, and integrations using Shopify CLI, GraphQL/REST APIs, Polaris UI, and Liquid templating. For customizing checkouts, admin/POS UIs, webhooks, and managing store data.
References Shopify development: Liquid templating, OS 2.0 themes/sections/blocks, GraphQL Admin/Storefront APIs, CLI/Polaris apps, Functions, Hydrogen React storefronts, Ajax cart, webhooks, performance, debugging. API v2026-01.
Share bugs, ideas, or general feedback.
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 |
{% 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 }}
{% 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 %}
query 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
}
}
}
# 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
import { 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