Ready to grow smarter with AI? Supercharge your e-commerce store with Shopify MCP.

Get Started

Shopify Theme Kit: A Complete Guide to Setup and Customization

Contact Us

×

Get a Free Consultation

Editing Shopify themes in a browser window — without version control, proper tooling, or a local environment, is slow and hard to scale. Mistakes go live instantly, and collaboration becomes a bottleneck.

Shopify Theme Kit solves this. It’s a command-line tool that lets you develop themes locally, sync changes automatically, and manage multiple environments with a single config file. This guide covers installation, authentication, key commands, schema customization, and when to use Theme Kit versus Shopify CLI.

Summary

  • What Theme Kit does: Enables local Shopify theme development with automatic file syncing
  • Installation: Platform-specific steps for macOS, Windows, and Linux
  • Authentication: Requires a Theme Access password from your Shopify admin
  • Key commands: theme get, theme watch, theme deploy, and theme new
  • Schema customization: Build client-editable settings into sections without exposing code
  • Theme Kit vs Shopify CLI: Different tools for different project types — both have a place
  • Best practices: Git, .gitignore, and multi-environment configs keep workflows team-ready

What Is Shopify Theme Kit?

Shopify Theme Kit is an open-source CLI tool that connects your local file system to a Shopify theme via API. When you save a file locally, Theme Kit detects the change and syncs it to your store in real time. It works on Windows, macOS, and Linux, and integrates cleanly with Git, VS Code, and build tools like Webpack or Gulp.

It’s particularly useful for teams managing multiple themes, handling frequent updates, or working on complex Shopify custom development projects that require a structured workflow.

Feature Description Use Case
Local Development Edit theme files in any code editor Work offline, use familiar tools
Automatic Sync Watch command uploads on save Real-time updates without manual uploads
Multi-Environment Support Configure dev, staging, and production in one file Deploy to specific themes with one command
Version Control Integration Works alongside Git Coordinate changes across teams

Shopify Theme Kit vs. Shopify CLI

Shopify CLI is now the recommended tool for new theme development, especially for Online Store 2.0 themes. Theme Kit remains the right choice for maintaining existing themes and managing multi-environment deployments.

Criteria Shopify Theme Kit Shopify CLI
Best for Legacy themes, maintenance workflows New OS 2.0 theme builds
Local dev server No — manual browser reload Yes — hot reload included
Multi-environment config Yes — native config.yml support Limited
Setup complexity Low Moderate

Many developers use both tools depending on the project. Use Shopify CLI for greenfield builds. Use theme kit Shopify for maintaining or updating existing themes.

How to Install Shopify Theme Kit

macOS

Install via Homebrew:

bash

brew tap shopify/shopify

brew install themekit

Verify with theme version. On M1/M2 chips, try running Terminal with Rosetta if you see compatibility errors.

Windows

Open PowerShell as an administrator, install Chocolatey if needed, then run:

powershell

choco install themekit

Verify with theme version. Wrap URLs containing dashes in quotation marks to avoid PowerShell parsing issues.

Linux

bash

curl -s https://shopify.github.io/themekit/scripts/install.py | sudo python

Verify with theme version. If the version output appears, you’re ready to proceed.

Generating a Theme Access Password

Theme Kit authenticates via the Theme Access app — a Shopify-native app that generates scoped API passwords.

Step Action Notes
1 Install Theme Access app Done by store owner in Shopify Admin → Apps
2 Create a new password Enter the developer’s email
3 Check email for invite Expires after 7 days if unused
4 Copy the password Visible only once — store it securely

Set permissions to “Read and write” for themes. Copy the password immediately — you cannot retrieve it after leaving that screen. Never commit it to a Git repository.

Setting Up config.yml

The config.yml file connects your local environment to a specific Shopify theme. It sits at the root of your theme directory.

Connect to an Existing Theme

List all themes and their IDs:

bash

theme get --list --password=[your-password] --store=[your-store.myshopify.com]

Then download the theme and auto-generate config.yml:

bash

theme get --password=[your-password] --store=[your-store.myshopify.com] --themeid=[your-theme-id]

Multi-Environment Setup

One of the strongest features of Shopify themekit is native multi-environment support:

yaml

development:

  password: dev_password

  theme_id: "123456789"

  store: your-store.myshopify.com

staging:

  password: staging_password

  theme_id: "987654321"

  store: your-store.myshopify.com

Deploy to a specific environment with theme deploy –env=staging. This makes it easy to test changes before pushing to production — a standard practice in any serious Shopify development process.

Core Theme Kit Commands

  • theme watch — Monitors all files and uploads changes on save. Stops syncing if a Liquid file has a syntax error, acting as a lightweight quality check. Stop with Ctrl + C.
  • theme deploy — Pushes all local files to Shopify in a single batch. Use this when deploying a complete, reviewed set of changes.
  • theme download — Pulls the latest theme from Shopify to your local machine. Run this when another developer has made changes directly in the Shopify admin.
  • theme new — Creates a blank theme on your store and sets up the local directory structure: assets, config, layout, locales, sections, snippets, and templates.

Schema Customization with Theme Kit

One of the most practical — and often overlooked — features when working with Shopify themekit is schema-driven settings. Schemas are JSON blocks inside section Liquid files that define client-editable options visible in the Shopify theme editor.

json

{% schema %}

{

  "name": "Hero Banner",

  "settings": [

    { "type": "text", "id": "heading", "label": "Banner Heading", "default": "Welcome" },

    { "type": "checkbox", "id": "show_button", "label": "Show CTA Button", "default": true }

  ]

}

{% endschema %}

The Liquid file references those settings directly:

liquid

<h1>{{ section.settings.heading }}</h1>

{% if section.settings.show_button %}<a href="/collections/all">Shop Now</a>{% endif %}

This allows non-developers to update content without touching code — a significant time saver for client projects. You can further extend functionality using Shopify theme app extensions without modifying core theme files. Global theme settings live in /config/settings_schema.json and control the “Theme settings” panel in the editor.

Common Errors and Fixes

Error Likely Cause Fix
theme: command not found Theme Kit not in system PATH Reinstall via package manager; restart terminal
Authentication failed Wrong or expired password Regenerate a Theme Access password
File not syncing Liquid syntax error Check for unclosed tags or missing delimiters
CSS changes not appearing Browser cache Hard refresh (Ctrl+Shift+R)
config.yml not found Wrong working directory cd into the theme folder first

For deeper customization challenges, consider working with a team that specializes in Shopify theme customization.

Best Practices

Use Git from day one. Initialize a repository immediately after downloading a theme. This makes rollbacks and code reviews straightforward.

Add config.yml to .gitignore. It contains your Theme Access password. Also exclude node_modules/ and .DS_Store.

Never edit the live theme. Always work on a duplicate or development theme. If theme watch syncs a broken file, a live store can break.

Pair with a build tool. Combine Theme Kit with Gulp or Webpack to compile SCSS, bundle JavaScript, and optimize images before syncing. For a deeper understanding of Liquid syntax that underpins all Shopify themes, see our Shopify Liquid guide.

Key Takeaways

  • Install Theme Kit using your platform’s package manager — Homebrew, Chocolatey, or the Linux curl script
  • Authentication goes through the Theme Access app — the password is shown only once, so store it immediately
  • theme watch is your primary command — auto-syncs on save and blocks syncing when Liquid errors are detected
  • Multi-environment config.yml lets you deploy to dev, staging, and production independently with one flag
  • Schema settings let non-developers manage content updates without touching code
  • Theme Kit is not deprecated — use it for legacy themes; use Shopify CLI for new OS 2.0 builds

Conclusion

Shopify Theme Kit gives developers a clean, scalable alternative to browser-based theme editing. From installation to schema customization and multi-environment deployment, the setup is straightforward once the moving parts are in place.

Whether you’re maintaining a legacy theme or coordinating a development team, Shopify Theme Kit keeps your workflow organized and version-controlled. For next steps, explore our guide to building a custom Shopify theme — or talk to our Shopify team if you need expert help on a theme project.

Frequently Asked Questions

What Is Shopify Theme Kit Used For?

Shopify Theme Kit is a CLI tool for developing and editing themes locally. It syncs changes to your store automatically, works with Git and any code editor, and supports multi-environment deployments. It’s primarily used for legacy theme maintenance and structured team development workflows.

Is Shopify Theme Kit Still Supported?

Yes. Shopify maintains Theme Kit and it remains functional. Shopify CLI is recommended for new Online Store 2.0 builds. Theme Kit is still the better option for maintaining existing themes or managing multi-environment deployments.

How Do I Find My Theme ID for Theme Kit Shopify?

Run theme get –list –password=[password] –store=[store.myshopify.com] to list all themes with their IDs. Alternatively, go to Shopify Admin → Online Store → Themes → Edit code and copy the numeric ID from the URL.

What Is the Difference Between theme watch and theme deploy?

theme watch monitors files continuously and uploads individual changes as you save. theme deploy pushes all local files to Shopify at once. Use watch during active development; use deploy when pushing a complete, reviewed build.

Does Shopify Theme Kit Work with Online Store 2.0?

Theme Kit can read and write OS 2.0 theme files, but doesn’t fully support the JSON template and app block architecture. For new OS 2.0 builds, Shopify CLI is the correct tool. Theme Kit is best for pre-2.0 theme maintenance.

What Should I Add to .gitignore When Using Shopify Themekit?

Always exclude config.yml since it contains your Theme Access password. Also exclude node_modules/, .DS_Store, and any build output directories to keep sensitive credentials out of your repository.

About Author

Picture of Mohan Lal

Mohan Lal

Lead UI Engineer & Full-Stack Developer with 13+ years of experience delivering high-quality, scalable frontend solutions across leading eCommerce and CMS platforms. Specialized in Magento, Hyvä, Shopify, BigCommerce, Wix, and WordPress. Skilled in Core Web Vitals, Performance Optimization, Responsive UI, Accessibility, and modern technologies like HTML, CSS, JavaScript, PWA, and ReactJS.

Table of Contents

Related Blogs

How Much Does It Cost To Migrate From Magento To Shopify?
Shopify

How Much Does It Cost To Migrate From Magento To Shopify?

Migrating from Magento to Shopify is an investment that encompasses one-time project work and ongoing SaaS costs. For most mid-sized stores, Magento to Shopify migration cost typically ranges from $20,000 to $75,000, while large enterprise programs with custom workflows and deep integrations can extend to $200,000+ based on scope, data volume, and complexity, according to

Read More
Shopify App Blocks Explained: Complete Documentation Guide for Online Store 2.0
Shopify

Shopify App Blocks Explained: Complete Documentation Guide for Online Store 2.0

Adding app features to your Shopify store used to mean editing theme code, risking broken layouts, and calling in a developer for every small change. Shopify app blocks solve that problem by letting you place app-powered content directly in the theme editor — no code edits required. This guide covers everything you need: how Shopify

Read More
SaaS vs Open Source Ecommerce: Complete Comparison, CMS Differences, and How to Choose
Shopify

SaaS vs Open Source Ecommerce: Complete Comparison, CMS Differences, and How to Choose

Picking the wrong ecommerce platform can cost you months of rebuilding and thousands in rework. The decision between SaaS vs open source ecommerce comes down to more than just price — it shapes how fast you launch, how much you can customize, and who’s responsible when things break. This guide breaks down the core differences,

Read More