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 🙏

© 2025 – Pkg Stats / Ryan Hefner

@salesforce-ux/metadata-cli

v1.2.1

Published

CLI tool for generating design system metadata

Downloads

311

Readme

Salesforce Design Systems Metadata CLI

A command-line tool for generating and managing metadata for Salesforce Design Systems (SLDS and SLDS Plus/Cosmos).

Quick Start

Using npx (Recommended)

# Generate all metadata types
npx @salesforce-ux/metadata-cli generate all

# Generate specific metadata types
npx @salesforce-ux/metadata-cli generate selectors-list styling-hooks

# Generate metadata with custom output directory and format
npx @salesforce-ux/metadata-cli generate all --output ./metadata --format csv

Local Installation

# Install globally
npm install -g @salesforce-ux/metadata-cli
# or
yarn global add @salesforce-ux/metadata-cli

# Then use the command
metadata-cli generate all

Features

  • Generate comprehensive metadata for SLDS and SLDS Plus/Cosmos
  • Multiple output formats (JSON, CSV, YAML)
  • Support for custom output directories
  • Interactive type selection when no types are specified
  • Concurrent processing for faster generation

Available Generator Types

The CLI supports the following metadata types:

| Type | Description | |------|-------------| | selectors-list | Generate SLDS and SLDS Plus class selectors | | styling-hooks | Generate styling hooks metadata | | bem-naming-map | Generate BEM naming conventions mapping | | lwc-to-slds-map | Generate LWC to SLDS token mappings | | stylehooks-metadata | Generate style hooks metadata | | aura-to-lwc-map | Generate Aura to LWC token mappings | | icons | Generate icon metadata | | color-styling-hooks | Generate color styling hooks | | design-token-mappings | Generate design token mappings | | slds-styling-hooks | Generate SLDS styling hooks | | slds-delta | Generate SLDS delta information | | slds-excluded-vars | Generate SLDS excluded variables |

Usage Examples

Basic Usage

# Generate all metadata types
npx @salesforce-ux/metadata-cli generate all

# Generate specific types
npx @salesforce-ux/metadata-cli generate selectors-list styling-hooks

# Interactive type selection
npx @salesforce-ux/metadata-cli generate

Custom Output Directory

# Generate to a specific directory
npx @salesforce-ux/metadata-cli generate all --output ./metadata

# Generate to a nested directory
npx @salesforce-ux/metadata-cli generate all --output ./src/generated/metadata

Different Output Formats

# Generate as JSON (default)
npx @salesforce-ux/metadata-cli generate all --format json

# Generate as CSV
npx @salesforce-ux/metadata-cli generate all --format csv

# Generate as YAML
npx @salesforce-ux/metadata-cli generate all --format yaml

Combining Options

# Generate specific types to a custom directory in CSV format
npx @salesforce-ux/metadata-cli generate selectors-list styling-hooks --output ./metadata --format csv

# Generate all types to a custom directory in YAML format
npx @salesforce-ux/metadata-cli generate all --output ./metadata --format yaml

Command Reference

Usage: metadata-cli generate [options] [types...]

Generate design system metadata

Arguments:
  types                Types of metadata to generate. Use "all" for all types or specify one or more types

Options:
  -o, --output <path>  Output directory path. Defaults to current working directory
  -f, --format <format>  Output format (json, csv, yaml). Defaults to json
  -h, --help          Display help for command

Requirements

  • Node.js >= v18.0.0
  • npm >= 6.0.0 or yarn >= 1.22.22

Troubleshooting

Common Issues

  1. Permission Errors

    # If you encounter permission errors with npx, try:
    npx --no-install @salesforce-ux/metadata-cli generate all
  2. Output Directory Issues

    # If the output directory doesn't exist, create it first:
    mkdir -p ./metadata
    npx @salesforce-ux/metadata-cli generate all --output ./metadata
  3. Format Issues

    # If you get format errors, check the supported formats:
    npx @salesforce-ux/metadata-cli generate all --format json  # or csv, yaml

Support

For issues, feature requests, or questions, please:

  1. Check the documentation
  2. Open an issue in the GitHub repository
  3. Contact the Salesforce Design Systems team