superset-extensions-cli/README.md
Official command-line interface for building, bundling, and managing Apache Superset extensions. This CLI tool provides developers with everything needed to create, develop, and package extensions for the Superset ecosystem.
pip install apache-superset-extensions-cli
# Scaffold a new extension project (interactive prompts, or pass options directly)
superset-extensions init [--publisher <publisher>] [--name <name>] [--display-name <name>]
[--version <version>] [--license <license>]
[--frontend/--no-frontend] [--backend/--no-backend]
# Validate extension structure and configuration
superset-extensions validate
# Build extension assets for production (runs validate first)
superset-extensions build
# Package extension into a distributable .supx file (runs build first)
superset-extensions bundle [--output/-o <path>]
# Automatically rebuild extension as files change during development
superset-extensions dev
The CLI scaffolds extensions with the following structure:
{publisher}.{name}/ # e.g., my-org.dashboard-widgets/
āāā extension.json # Extension configuration and metadata
āāā .gitignore
āāā frontend/ # Optional frontend code
ā āāā src/
ā ā āāā index.tsx # Frontend entry point
ā āāā package.json
ā āāā webpack.config.js
ā āāā tsconfig.json
āāā backend/ # Optional backend code
āāā src/
ā āāā {publisher}/ # e.g., my_org/
ā āāā {name}/ # e.g., dashboard_widgets/
ā āāā entrypoint.py
āāā pyproject.toml
Licensed under the Apache License, Version 2.0. See LICENSE for details.