Skip to main content

Configuration files

Shoplazza CLI uses TOML configuration files to manage app and extension settings.

shoplazza.app.toml

The main app configuration file, created by shoplazza app init:

# Application Client ID (required)
client_id = "your-client-id"

# Application permission scopes
scopes = "read_customer write_cart_transform"

Environment-specific configurations

You can create environment-specific config files:

my-app/
├── shoplazza.app.toml # Default configuration
├── shoplazza.app.prod.toml # Production
└── shoplazza.app.staging.toml # Staging

Switch between configurations:

shoplazza app config use

Link a new configuration:

shoplazza app config link --client-id your-client-id

shoplazza.extension.toml

Each extension has its own configuration file:

# Extension ID (system-generated)
id = "extension-id"

# Extension name
name = "My Extension"

# Extension type (theme / checkout / function)
type = "theme"

Project directory structure

A typical app project after initialization:

my-app/
├── shoplazza.app.toml
├── extensions/
│ ├── theme-extension/
│ │ ├── shoplazza.extension.toml
│ │ └── src/
│ ├── checkout-extension/
│ │ ├── shoplazza.extension.toml
│ │ └── src/
│ └── function-extension/
│ ├── shoplazza.extension.toml
│ └── src/
├── package.json
└── README.md