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.