- Implemented a global toggle to enable/disable background queue processing. - Added a Side Panel (Sidebar.html) to view pending edits. - Added per-item controls: 'Delete' to remove from queue, 'Push' to force update. - Updated 'onEditQueue.ts' with robust error handling for batch processing. - Updated documentation (README, ARCHITECTURE) to reflect new features. - Fixed 'clasp' deployment issues by cleaning up manifest management.
1.4 KiB
1.4 KiB
Product Inventory Management
This project integrates Google Sheets with Shopify to manage product inventory, photos, and metadata. It uses Google Apps Script to synchronize data between a "master" Google Sheet and your Shopify store.
Overview
The system allows you to:
- Manage product details (SKUs, titles, descriptions) in a Google Sheet.
- Automatically upload product photos from Google Drive to Shopify.
- specific triggers (
onEdit,onOpen) to sync changes to Shopify in real-time or on-demand. - Handle rate limiting and concurrency using a custom queue system.
- Monitor and troubleshoot background processes via a custom side panel.
Prerequisites
- Node.js: managed via
fnm(Fast Node Manager) - Google Clasp: for pushing code to Apps Script
- Google Cloud Project: tied to the Apps Script container
Quick Start
-
Install Dependencies
npm install -
Build Project
npm run build -
Deploy to Apps Script
npm run deploy
Project Structure
src/: Source code (TypeScript)src/config.ts: Configuration loading from Sheetssrc/global.ts: Entry points for Apps Scriptsrc/shopifyApi.ts: Shopify Admin API wrappersrc/onEditQueue.ts: Concurrency management
For more details, see: