@scayle/storefront-cli
v0.16.0
Published
SCAYLE Storefront command line utility
Downloads
1,236
Maintainers
Keywords
Readme
@scayle/storefront-cli
Storefront CLI
The SCAYLE Storefront command-line interface (CLI) tool accelerates feature adoption in SCAYLE Storefront tenant projects by simplifying the integration of new features and updates from the Storefront Application. It allows tenants to selectively add individual feature components, even if their project is based on an older Storefront Application version, avoiding the need for a full Storefront Application upgrade.
The CLI handles the complexities of component delivery and integration, allowing developers to focus on customizing and implementing the feature's functionality.
It automatically fetches the necessary components based on the selected feature and Storefront Application version, manages potential file conflicts, and optionally includes unit tests.
This streamlined workflow significantly reduces manual effort and accelerates the overall development process.
Usage
Recommended Usage
To always use the current version of the CLI we recommend to use the package as remote package pnpx or npx. This will always fetch the current version of the Storefront CLI.
# Using PNPM
pnpx @scayle/storefront-cli COMMAND
# Using NPX
npx @scayle/storefront-cli COMMANDInstalled Usage
$ npm install -g @scayle/storefront-cli
$ sfcli COMMAND
running command...
$ sfcli (--version)
@scayle/storefront-cli/0.16.0 linux-x64 node-v22.18.0
$ sfcli --help [COMMAND]
USAGE
$ sfcli COMMAND
...Commands
sfcli commandssfcli deploysfcli features add [PACKAGES]sfcli features featureCommandsfcli features listsfcli help [COMMAND]sfcli setupsfcli setup cms
sfcli commands
List all sfcli commands.
USAGE
$ sfcli commands [--json] [-c id|plugin|summary|type... | --tree] [--deprecated] [-x | ] [--hidden]
[--no-truncate | ] [--sort id|plugin|summary|type | ]
FLAGS
-c, --columns=<option>... Only show provided columns (comma-separated).
<options: id|plugin|summary|type>
-x, --extended Show extra columns.
--deprecated Show deprecated commands.
--hidden Show hidden commands.
--no-truncate Do not truncate output.
--sort=<option> [default: id] Property to sort by.
<options: id|plugin|summary|type>
--tree Show tree of commands.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List all sfcli commands.See code: @oclif/plugin-commands
sfcli deploy
The deploy command will initiate a new deployment to SCAYLE PaaS and and display the build logs.
USAGE
$ sfcli deploy -t <value> -s <value> -e <value> --deploy-token <value> [--json] [--log-level
debug|warn|error|info|trace] [-h] [--no-config-file] [-g <value>]
FLAGS
-e, --env-key=<value> (required) [env: SCAYLE_CLI_ENV_KEY] Env Key is needed for identifying the correct
environment.
-g, --git-ref=<value> [env: SCAYLE_CLI_GIT_REF] Git ref is used to checkout the specific version of the app that
should be deployed
-h, --no-header Disable initial header print for the CLI.
-s, --shop-key=<value> (required) [env: SCAYLE_CLI_SHOP_KEY] Shop Key is needed for identifying the correct shop.
-t, --tenant-space=<value> (required) [env: SCAYLE_CLI_TENANT_SPACE] Tenant Space is needed for identifying the
correct context within the SCAYLE Core System.
--deploy-token=<value> (required) [env: SCAYLE_CLI_DEPLOY_TOKEN] Deploy Token is needed to authenticate against
the SCAYLE PaaS System.
--no-config-file [env: SCAYLE_CLI_NO_CONFIG_FILE] Disable generating a config file.
GLOBAL FLAGS
--json Format output as json.
--log-level=<option> [default: info] Specify level for logging.
<options: debug|warn|error|info|trace>
DESCRIPTION
The deploy command will initiate a new deployment to SCAYLE PaaS and and display the build logs.
EXAMPLES
$ sfcli deploySee code: src/commands/deploy.ts
sfcli features add [PACKAGES]
Adds a SCAYLE Storefront feature module to Storefront projects,
USAGE
$ sfcli features add [PACKAGES] -a <value> [--json] [--log-level debug|warn|error|info|trace] [-h]
[--no-config-file] [-c] [-f]
ARGUMENTS
[PACKAGES] Directly install one or more specific packages, bypassing the multi-select prompt.
FLAGS
-a, --access-token=<value> (required) Access Token for Storefront Application repository
-c, --should-copy Copy relevant feature module components and related files
-f, --should-override Override existing files while copying relevant feature module components and related files
-h, --no-header Disable initial header print for the CLI.
--no-config-file [env: SCAYLE_CLI_NO_CONFIG_FILE] Disable generating a config file.
GLOBAL FLAGS
--json Format output as json.
--log-level=<option> [default: info] Specify level for logging.
<options: debug|warn|error|info|trace>
DESCRIPTION
Adds a SCAYLE Storefront feature module to Storefront projects,
with an option to include the associated Vue components and unit tests.
EXAMPLES
$ sfcli features addSee code: src/commands/features/add.ts
sfcli features featureCommand
USAGE
$ sfcli features featureCommand -a <value> [--json] [--log-level debug|warn|error|info|trace] [-h] [--no-config-file]
FLAGS
-a, --access-token=<value> (required) Access Token for Storefront Application repository
-h, --no-header Disable initial header print for the CLI.
--no-config-file [env: SCAYLE_CLI_NO_CONFIG_FILE] Disable generating a config file.
GLOBAL FLAGS
--json Format output as json.
--log-level=<option> [default: info] Specify level for logging.
<options: debug|warn|error|info|trace>See code: src/commands/features/featureCommand.ts
sfcli features list
Lists the available feature packages which can be installed with the add command
USAGE
$ sfcli features list -a <value> [--json] [--log-level debug|warn|error|info|trace] [-h] [--no-config-file]
FLAGS
-a, --access-token=<value> (required) Access Token for Storefront Application repository
-h, --no-header Disable initial header print for the CLI.
--no-config-file [env: SCAYLE_CLI_NO_CONFIG_FILE] Disable generating a config file.
GLOBAL FLAGS
--json Format output as json.
--log-level=<option> [default: info] Specify level for logging.
<options: debug|warn|error|info|trace>
DESCRIPTION
Lists the available feature packages which can be installed with the add command
EXAMPLES
$ sfcli features listSee code: src/commands/features/list.ts
sfcli help [COMMAND]
Display help for sfcli.
USAGE
$ sfcli help [COMMAND...] [-n]
ARGUMENTS
[COMMAND...] Command to show help for.
FLAGS
-n, --nested-commands Include all nested commands in the output.
DESCRIPTION
Display help for sfcli.See code: @oclif/plugin-help
sfcli setup
The setup command will guide the user through a series of interactive prompts to gather the necessary information for configuring the Storefront Application.
USAGE
$ sfcli setup -t <value> -a <value> [--json] [--log-level debug|warn|error|info|trace] [-h]
[--no-config-file] [-p <value>] [-o] [-e]
FLAGS
-a, --admin-api-token=<value> (required) Admin API token will be used for authentication and authorization when
accessing data from the SCAYLE Core System.
-e, --only-env Setup only local environment variable as part of a .env file and skips creation of shop
config, as well as translation files.
-h, --no-header Disable initial header print for the CLI.
-o, --should-override Override existing files while copying relevant feature module components and related
files
-p, --parent-shop-key=<value> Shop key to setup a shop directly.
-t, --tenant-space=<value> (required) Tenant Space is needed for identifying the correct context within the SCAYLE
Core System.
--no-config-file [env: SCAYLE_CLI_NO_CONFIG_FILE] Disable generating a config file.
GLOBAL FLAGS
--json Format output as json.
--log-level=<option> [default: info] Specify level for logging.
<options: debug|warn|error|info|trace>
DESCRIPTION
The setup command will guide the user through a series of interactive prompts to gather the necessary information for
configuring the Storefront Application.
EXAMPLES
$ sfcli setupSee code: src/commands/setup/index.ts
sfcli setup cms
Configures the Storefront Application to use a chosen CMS provider (Contentful or Storyblok). This command collects required credentials and settings, updates the projects nuxt.config.ts & .env file, and optionally imports content models for supported providers.
USAGE
$ sfcli setup cms -s <value> --access-token <value> -i true|false [--json] [--log-level
debug|warn|error|info|trace] [-h] [--no-config-file] (--preview-token <value> -p storyblok|contentful)
[--management-token <value> ] [--personal-access-token <value> ]
FLAGS
-h, --no-header Disable initial header print for the CLI.
-i, --import-content-model=<option> (required) Import the content model in to the CMS. This command is only intended
to be used with empty CMS spaces.
<options: true|false>
-p, --provider=<option> (required) Provider to use for the CMS.
<options: storyblok|contentful>
-s, --space-id=<value> (required) Space ID of the CMS space that should be used.
--access-token=<value> (required) Access token to use for the CMS. This is used to fetch content from
the CMS.
--no-config-file [env: SCAYLE_CLI_NO_CONFIG_FILE] Disable generating a config file.
GLOBAL FLAGS
--json Format output as json.
--log-level=<option> [default: info] Specify level for logging.
<options: debug|warn|error|info|trace>
CONTENTFUL FLAGS
--management-token=<value> Management token to use for Contentful management. This is used access the Contentful
management API.
--preview-token=<value> Preview token to use for Contentful preview. This is used to fetch preview content from
the CMS.
STORYBLOK FLAGS
--personal-access-token=<value> Personal access token to use for Storyblok. This is used to access the Storyblok
management API.
DESCRIPTION
Configures the Storefront Application to use a chosen CMS provider (Contentful or Storyblok). This command collects
required credentials and settings, updates the projects nuxt.config.ts & .env file, and optionally imports content
models for supported providers.
EXAMPLES
$ sfcli setup cmsSee code: src/commands/setup/cms.ts
License
Licensed under the MIT License
What is SCAYLE?
SCAYLE is a full-featured e-commerce software solution that comes with flexible APIs. Within SCAYLE, you can manage all aspects of your shop, such as products, stocks, customers, and transactions.
Learn more about SCAYLE’s architecture and commerce modules in the Docs.
