1.9 KiB
1.9 KiB
Technology Stack
Runtime & Dependencies
- Node.js: >=16.0.0 (specified in package.json engines)
- Core Dependencies:
@shopify/shopify-api: ^7.7.0 - Shopify GraphQL API clientdotenv: ^16.3.1 - Environment variable managementnode-fetch: ^3.3.2 - HTTP client for API requests
- Development Dependencies:
jest: ^29.7.0 - Testing framework
Architecture Patterns
- Service Layer Architecture: Separation of concerns with dedicated services
- Configuration Management: Centralized environment-based configuration
- Error Handling: Comprehensive retry logic with exponential backoff
- Logging Strategy: Dual output (console + Progress.md file)
API Integration
- Shopify GraphQL Admin API: Version 2024-01
- Authentication: Private App access tokens
- Rate Limiting: Built-in handling with automatic retries
- Bulk Operations: Uses
productVariantsBulkUpdatemutation
Common Commands
Development
npm install # Install dependencies
npm start # Run with default settings
npm run update # Explicit update mode
npm run rollback # Rollback mode
npm run debug-tags # Debug tag analysis
npm test # Run test suite
Environment Setup
copy .env.example .env # Create environment file (Windows)
cp .env.example .env # Create environment file (Unix)
Testing & Debugging
npm run debug-tags # Analyze store tags before running
npm test # Run Jest test suite
Environment Variables
Required variables (see .env.example):
SHOPIFY_SHOP_DOMAIN: Store domainSHOPIFY_ACCESS_TOKEN: Admin API tokenTARGET_TAG: Product tag filterPRICE_ADJUSTMENT_PERCENTAGE: Adjustment percentageOPERATION_MODE: "update" or "rollback"