Theme definitions for three product domains.
themes/web: themes for online catalog giftsthemes/card: themes for item card setsthemes/package: themes for packaging such as sleeves
Each direct child directory under themes/web/ / themes/card/ / themes/package/ is a theme directory.
Required files:
index.htmlmeta.jsoncatalog-items/[id].html(reserved page for product detail)
Optional files:
schema.json- additional
.htmlpages
selects is the authoritative bridge to the local design app. Run selects with no arguments to see available commands. It reads a JSON request from stdin and writes a JSON response to stdout.
npm run checkPushes to main trigger GitHub Actions (.github/workflows/ci.yml) to sync to R2.
Repository source paths → R2 destination paths:
themes/web/→web/themes/card/→card/themes/package/→package/
Themes listed in .deployignore are excluded from sync. One entry per line, in domain/theme-name format (e.g. web/example). Use this to freeze published themes so that local edits do not affect production.
Required GitHub Secrets:
R2_ACCOUNT_IDR2_BUCKETR2_ACCESS_KEY_IDR2_SECRET_ACCESS_KEY