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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@kunalshetye/ocp-opal-wizard

v1.0.1

Published

CLI wizard to scaffold Optimizely Connect Platform (OCP) Opal Tools

Readme

@kunalshetye/ocp-opal-wizard

CLI wizard to scaffold Optimizely Connect Platform (OCP) Opal Tools.

Prerequisites

Install OCP CLI

Before using this wizard, you need the OCP CLI installed:

# 1. Create credentials file with your API key (from OCP developer invitation email)
mkdir -p ~/.ocp
echo '{"apiKey": "<YOUR_API_KEY>"}' > ~/.ocp/credentials.json

# 2. Install OCP CLI globally (requires Yarn 1.x)
yarn global add @optimizely/ocp-cli

# 3. Add to PATH
export PATH="$(yarn global bin):$PATH"

# 4. Verify installation
ocp accounts whoami

Note: OCP requires Yarn 1.x (Classic). See the Yarn Classic installation guide.

For detailed setup instructions, see Configure your OCP development environment.

Usage

npx @kunalshetye/ocp-opal-wizard create my-app
cd my-app
yarn install
yarn build

Important: Always use npx to run the wizard (not yarn create). The wizard runs via npm/npx, but the scaffolded project uses Yarn 1.x as required by OCP. This works regardless of which Yarn version you have installed globally.

Interactive Wizard

The CLI guides you through setting up your OCP Opal Tool project:

  1. Project directory - Where to create the project
  2. App configuration - App ID, display name, description
  3. Tracker ID - OCP deployment target (optional)
  4. Repository info - GitHub username, contact email
  5. Git initialization - Optional git setup

Command Line Options

ocp-opal-wizard create [directory] [options]

Arguments:
  [directory]          Project directory (default: interactive prompt)

Options:
  -y, --yes            Skip prompts, use defaults
  --no-git             Skip git initialization
  --dry-run            Show what would be done without making changes

  --app-id             OCP App ID
  --display-name       App display name
  --description        App description
  --tracker-id         OCP Tracker ID for deployment
  --email              Contact email

  -h, --help           Show help message
  -v, --version        Show version number

Examples

Interactive Mode (Recommended)

npx @kunalshetye/ocp-opal-wizard create

Quick Setup with Defaults

npx @kunalshetye/ocp-opal-wizard create my-tool --yes

Specify Options

npx @kunalshetye/ocp-opal-wizard create my-tool \
  --app-id my-opal-tool \
  --tracker-id ABC123 \
  --email [email protected]

Dry Run (Preview)

npx @kunalshetye/ocp-opal-wizard create my-tool --yes --dry-run

What Gets Created

my-tool/
├── src/
│   ├── index.ts                    # Entry point
│   ├── functions/
│   │   └── OpalToolFunction.ts     # Tool implementations
│   └── lifecycle/
│       └── Lifecycle.ts            # OCP lifecycle hooks
├── forms/
│   └── settings.yml                # Settings form
├── assets/
│   ├── icon.svg                    # App icon
│   ├── logo.svg                    # App logo
│   └── directory/
│       └── overview.md             # App Directory description
├── app.yml                         # OCP manifest
├── package.json
├── tsconfig.json
├── .gitignore
└── README.md

After Scaffolding

cd my-tool

# Install dependencies (OCP requires Yarn 1.x)
yarn install

# Build the project
yarn build

# Validate configuration
yarn validate

# Deploy to OCP
ocp app register
ocp app prepare
ocp directory install <APP_ID>@<VERSION> <TRACKER_ID>

OCP CLI Commands Reference

| Command | Description | |---------|-------------| | ocp app register | Register your app with OCP | | ocp app prepare | Validate, package, upload and build | | ocp app validate | Validate app locally | | ocp app logs | Fetch app logs | | ocp directory publish <APP_ID>@<VERSION> | Publish app version | | ocp directory install <APP_ID>@<VERSION> <TRACKER_ID> | Install to account | | ocp directory uninstall <APP_ID> <TRACKER_ID> | Uninstall from account | | ocp accounts whoami | Show your account info | | ocp accounts whois <USER> | Show user info |

For full CLI documentation, run ocp -h or see the OCP CLI docs.

Development

# Install dependencies
yarn install

# Build
yarn build

# Run tests
yarn test

# Watch mode
yarn dev

Learn More