Shopify theme development repository for Hannouch store.
- Node.js installed
- Shopify CLI installed (
npm install -g @shopify/cli @shopify/theme)
-
Start development server (creates a preview theme and syncs changes):
npm run dev
This will:
- Create a development theme on your store
- Start a local server with hot-reload
- Open your browser to preview changes
- Sync file changes automatically
-
Pull latest theme from store:
npm run pull
-
Push changes to a theme:
npm run push
-
Deploy to live theme (use with caution):
npm run deploy
-
Check for theme errors:
npm run check
main- Production-ready code, matches live themedevelop- Integration branch for features
feature/feature-name- New features and enhancementsfix/bug-name- Bug fixeshotfix/urgent-fix- Critical production fixes
-
Starting a new feature:
git checkout develop git pull origin develop git checkout -b feature/my-new-feature
-
During development:
- Make changes locally
- Test using
npm run dev - Commit frequently with descriptive messages
- Push to remote:
git push origin feature/my-new-feature
-
Merging to develop:
git checkout develop git merge feature/my-new-feature git push origin develop
-
Deploying to production:
git checkout main git merge develop git push origin main # Then deploy: npm run deploy (or push to live theme manually)
.
├── assets/ # CSS, JavaScript, images, fonts
├── config/ # Theme configuration files
├── layout/ # Theme layout templates
├── locales/ # Translation files
├── sections/ # Reusable theme sections
├── snippets/ # Reusable code snippets
├── templates/ # Page templates
└── blocks/ # Section blocks
- Always test changes locally with
npm run devbefore pushing - Use Shopify Theme Inspector for debugging
- Keep commits focused and atomic
- Review changes in Shopify admin before deploying to live
- Use development themes for testing, never push directly to live theme
- The
config/settings_data.jsonfile contains theme settings - be careful when merging - Some files are auto-generated by Shopify admin - check file headers before editing
- Always pull latest changes before starting new work