bcsync is a CLI application for managing BigCommerce store configurations.
bcsync allows users to read, update, export, and import store profile settings for a BigCommerce store. It uses the BigCommerce API to interact with store data and manages local configuration files in YAML format.
- Clone the repository
- Run
npm installto install dependencies - Run
npm linkto make thebcsynccommand available globally
Create a .env file in the root directory with the following variables:
STORE_HASH=your_store_hash
ACCESS_TOKEN=your_access_token
Run the CLI application using:
bcsync [command]
Available commands:
store-profile:read: Display store profile in YAML formatstore-profile:update: Update store profile with new YAML data (input via stdin)store-profile:export: Export store profile from BigCommerce API and save locallystore-profile:import: Import store profile from local YAML file to BigCommerce API
For help, use:
bcsync --help
- Built with Node.js
- Uses Commander.js for CLI interface
- Manages configuration files using YAML (js-yaml)
- Interacts with BigCommerce API using Axios
- Uses dotenv for environment variable management
- Implements JSON Schema validation using Ajv
- Configuration files are stored in the
datadirectory - The main CLI logic is in
src/index.js - Modular structure with separate modules for different functionalities
- commander: ^12.1.0
- js-yaml: ^4.1.0
- axios: ^1.7.2
- dotenv: ^16.4.5
- ajv: ^8.17.1
- ajv-formats: ^3.0.1