npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@amplience/dc-demostore-cli

v4.0.0

Published

Amplience Demo Store CLI

Downloads

72

Readme

@amplience/dc-demostore-cli

Demonstration Command line interface for Amplience Demo Store.

Description

dc-demostore-cli or CLI alias demostore is a command line interface application to manage an installation of the Amplience Demo Store (demostore). It builds on top of the Amplience DC CLI and Amplience Management APIs

Run demostore --help to get a list of available commands.

⚠️ See v4.0.0 Changes if you already have an existing 2.x or 3.x version of demostore that you wish to update.

Building

This demo appliction was developed and tested with:

  • Node version 20.x

To switch to the correct node version it is recommended to have Node Version Manager installed.

nvm use

Installation

Installing the demostore CLI from the NPM package manager can be achieved using the following command:

npm install -g @amplience/dc-demostore-cli

Configuration

demostore requires a demostore environment configuration to run.

Prerequisites

  • Amplience account
  • Details and where to get them from.

On your first invocation of any demostore command, the CLI will prompt you to create an environment:

dave@po:~ $ demostore env add
✔ env name: hub-name-from-hub-settings-properties
✔ app deployment url: https://your-deployed-dc-demostore-core-url.com
✔ cms client id: amplience-client-id
✔ cms client secret: ***********************
✔ cms hub id: hub-id-from-hub-settings-properties
✔ dam username: [email protected]
✔ dam password: *****************
info: [ foo ] configure dc-cli...
info: [ foo ] environment active

You will set these to the values you received from Amplience Support when you created your account.

By default the configuration is saved to a file in the directory <HOME_DIR>/.amplience/, this can be overridden using the --config option.

Options

| Option Name | Type | Description | | ----------- | ---------------------------------------------------------- | ------------------------ | | --version | [boolean] | Show version number | | --config | [string][default: "~/.amplience/dc-cli-config.json"] | Path to JSON config file | | --help | [boolean] | Show help |

Command categories

Using a demostore environment

Common Options

The following options are available for all content-type-schema commands.

| Option Name | Type | Description | | ----------- | --------- | ------------------- | | --version | [boolean] | Show version number | | --help | [boolean] | Show help |

Commands

cleanup

Clean a hub.

Options

| Option Name | Type | Description | | ----------------------- | --------- | ------------------------------------------------------- | | --logRequests, -r | [boolean] | log http requests/responses | | --tempDir, -t | [string] | temp dir for run files | | --matchingSchema, -m | [array] | apply to (types, schemas, items) matching schema id | | --include, -i | [array] | types to include | | --skipConfirmation, -c | [boolean] | don't ask for confirmation | | --all, -a | [boolean] | clean up all resource types | | --automationDir, -d | [string] | path to automation template directory | | --latest, -l | [boolean] | cleanup using a fresh copy of the automation files |

Valid resource types are contentTypeSchema, contentTypes, contentItems, searchIndexes, extensions, webhooks, and events.

Active properties handling

Content Items containing one of the following active field will go through an additional process:

  • filterActive
  • active

If these properties are true, the cleanup process will:

  • update the delivery key (adding a random string at the end)
  • set the active flag to false
  • publish the content

Examples

Clean a hub

demostore cleanup

Clean content types, schemas, and items without asking for confirmation

demostore cleanup -ci contentTypes -i contentTypeSchema -i contentItems

import

Import data using automation packages found in dc-demostore-automation

When running an import you get provided with the environment variables to configure for your Front End deployment of dc-demostore-core. See specific information in the docs on this project about how to use.

Example output after import where all values marked as XXX will be specific to your account configuration

info: .env.local file format
info: 
----------------------- COPY START ----------------------
NEXT_PUBLIC_DEMOSTORE_CONFIG_JSON='{"url":"XXX","algolia":{"appId":"XXX","apiKey":"XXX"},"cms":{"hub":"XXX","stagingApi":"XXX","imageHub":"XXX"}}'
------------------------ COPY END -----------------------
info: 
info: Vercel format
info: 
----------------------- COPY START ----------------------
{"url":"XXX","algolia":{"appId":"XXX","apiKey":"XXX"},"cms":{"hub":"XXX","stagingApi":"XXX","imageHub":"XXX"}}
------------------------ COPY END -----------------------

Options

| Option Name | Type | Description | | ----------------------- | --------- | ------------------------------------------------------- | | --logRequests, -r | [boolean] | log http requests/responses | | --tempDir, -t | [string] | temp dir for run files | | --matchingSchema, -m | [array] | apply to (types, schemas, items) matching schema id | | --automationDir, -a | [string] | path to automation directory | | --skipContentImport, -s | [boolean] | skip content import | | --latest, -l | [boolean] | import using a fresh copy of the automation files | | --openaiKey, -o | [string] | optional openai key for generative rich text automation |

Examples

Import the latest automation data

demostore import -l

Import only items matching schema 'schema'

demostore import -m <schema>

publish

Publish all unpublished content items.

Options

| Option Name | Type | Description | | -------------------- | --------- | --------------------------------------------------- | | --logRequests, -r | [boolean] | log http requests/responses | | --tempDir, -t | [string] | temp dir for run files | | --matchingSchema, -m | [array] | apply to (types, schemas, items) matching schema id |

Examples

Publish

demostore publish

show

Show the status of a demostore environment.

Examples

demostore show

env

This category includes interactions with environments.

View commands for env

FAQ