Liquid Tutorial

Install Shopify CLI

Source: ShopifyDevs

Local Setup Overview

To develop Shopify themes on your computer, you need three tools installed and verified before anything else: Node.js (includes npm), Git, and Shopify CLI. This page walks through checking what you already have, installing anything missing on Windows, and confirming your environment is ready.

Open PowerShell or Windows Terminal as a normal user (Administrator only if a package manager asks for it). Run each verification command in order — do not skip straight to Shopify CLI if Node or Git is missing.

Step 1 — Check if Node.js is Installed

Node.js runs Shopify CLI and powers the theme dev server. npm (Node Package Manager) ships with Node and is how you install Shopify CLI globally.

Check Node and npm versions
node -v
npm -v

If both commands print version numbers, Node is installed. Write down what you see — you will compare against the expected versions at the end of this page.

If you see 'command not found' or 'not recognized', Node is not installed or not on your PATH. Install it using one of the methods below, then restart your terminal completely before running node -v again.

Install Node.js (Windows)

Pick one package manager. Chocolatey requires Chocolatey itself to be installed first (chocolatey.org). Winget ships with Windows 10/11 and is the simplest option for most developers.

Install Node.js LTS on Windows
# Option A — Chocolatey
choco install nodejs-lts -y

# Option B — Winget (recommended on Windows)
winget install OpenJS.NodeJS.LTS
  1. Close and reopen your terminal after installation — PATH updates only apply to new sessions
  2. Run node -v and npm -v again to confirm
  3. If versions still do not appear, reboot Windows once

Step 2 — Install Git

Git tracks theme file changes locally and lets you collaborate with teams. Shopify CLI works without Git, but every professional theme workflow uses it.

Install and verify Git
winget install Git.Git

# Verify
git --version

After install, restart the terminal. You should see something like git version 2.x.x. Configure your name and email once: git config --global user.name "Your Name" and git config --global user.email "you@example.com".

Step 3 — Install Shopify CLI

Shopify CLI is installed globally through npm. Use @latest so you always get the current 3.x release with theme commands built in.

Install Shopify CLI globally
npm install -g @shopify/cli@latest

# Verify
shopify version

If npm reports permission errors on Windows, close the terminal, reopen as Administrator, and retry. Alternatively, fix npm's global directory permissions rather than using sudo-style workarounds on every install.

Note: Older guides mention installing @shopify/theme separately. On current Shopify CLI 3.x, theme commands (dev, push, pull, check) are included in @shopify/cli — one global install is enough.

Step 4 — Log In to Shopify

Before pulling or developing a theme, authenticate CLI with your Partner account or store staff login. This opens your browser for OAuth — complete the login there, then return to the terminal.

Authenticate with Shopify
shopify auth login

To target a specific store immediately: shopify auth login --store your-store.myshopify.com. Run shopify whoami anytime to confirm which account is active.

Step 5 — Clone an Existing Theme

If the store already has a theme (Dawn, a custom build, or a client theme), pull it to your machine instead of starting from scratch.

Pull remote theme to local folder
# Download theme files from a store
shopify theme pull --store your-store.myshopify.com

# Pull a specific theme by ID (from shopify theme list)
shopify theme pull --store your-store.myshopify.com --theme 123456789012

This creates a folder with assets/, sections/, snippets/, templates/, and config/ — the full Online Store 2.0 structure. cd into that folder before running theme dev.

Step 6 — Run the Local Development Server

shopify theme dev uploads your local files to a hidden development theme and gives you a preview URL with hot reload. Leave this command running in a terminal tab while you edit in VS Code.

Start local development with hot reload
shopify theme dev --store your-store.myshopify.com

When theme dev is running you get:

  • Hot reload — CSS and section changes refresh the browser automatically
  • A local preview URL — test cart, product pages, and Liquid output with real store data
  • Full VS Code editing — install the Shopify Liquid extension for syntax highlighting
  • Custom Liquid development — every .liquid file you save syncs to the dev theme within seconds

Step 7 — Push Changes Back to Shopify

When you are ready to upload local changes, use theme push. Never push directly to the live theme without testing on a development or unpublished theme first.

Upload local files to Shopify
# Push to current directory's linked theme
shopify theme push --store your-store.myshopify.com

# Safer: push to a new unpublished staging theme
shopify theme push --store your-store.myshopify.com --unpublished --theme "Staging"

My Typical Setup — Verification Checklist

After completing installation, run all four commands in one terminal session. Compare your output to the expected ranges below.

Full environment check
node -v
npm -v
git --version
shopify version
  • Node v22.x (or latest LTS) — e.g. v22.14.0
  • npm 10.x or higher — e.g. 10.9.2
  • Git 2.x or higher — e.g. git version 2.47.0
  • Shopify CLI 3.x or higher — e.g. 3.84.0

Fixing Node Version Conflicts with NVM (Windows)

If you previously installed Node and get build errors, permission issues, or version conflicts with Shopify CLI, use NVM for Windows to manage multiple Node versions side by side. Node 22 LTS is currently the safest choice for Shopify theme development and custom Liquid themes.

Switch to Node 22 LTS with NVM
# Install NVM for Windows
winget install CoreyButler.NVMforWindows

# Restart terminal, then:
nvm install 22
nvm use 22
node -v
  1. nvm install 22 downloads and installs Node 22 LTS
  2. nvm use 22 activates it for the current terminal session
  3. Re-run npm install -g @shopify/cli@latest after switching Node versions
  4. Run shopify version to confirm CLI still works on the new Node version

macOS & Linux (Quick Reference)

Alternative install paths
# macOS — Node via Homebrew
brew install node

# macOS — Shopify CLI
brew tap shopify/shopify
brew install shopify-cli

# Linux / macOS — Node via nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
nvm install 22
nvm use 22
Tip: Install the Shopify Liquid VS Code extension after CLI setup. It adds syntax highlighting, autocomplete, and inline Theme Check warnings as you edit .liquid files.
Note: WSL2 on Windows is an alternative if native file watching causes issues — install Node, Git, and CLI inside your Linux distro and store theme files in the Linux filesystem, not /mnt/c/.