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
# Generate initial folder structure and scaffold a new extension project superset-extensions init <extension-name> # Automatically rebuild extension as files change during development superset-extensions dev # Build extension assets for production superset-extensions build # Package extension into a distributable .supx file superset-extensions bundle
The CLI generates extensions with the following structure:
extension_name/ ├── extension.json # Extension configuration and metadata ├── frontend/ # Frontend code │ ├── src/ # TypeScript/React source files │ ├── webpack.config.js # Frontend build configuration │ ├── tsconfig.json # TypeScript configuration │ └── package.json # Frontend dependencies ├── backend/ # Backend code │ ├── src/ │ │ └── dataset_references/ # Python package source │ ├── tests/ # Backend tests │ ├── pyproject.toml # Python package configuration │ └── requirements.txt # Python dependencies ├── dist/ # Built extension files (generated) │ ├── manifest.json # Generated extension manifest │ ├── frontend/ │ │ └── dist/ # Built frontend assets │ │ ├── remoteEntry.*.js # Module federation entry │ │ └── *.js # Additional frontend bundles │ └── backend/ │ └── dataset_references/ # Built backend package │ ├── __init__.py │ ├── api.py │ └── entrypoint.py ├── dataset_references-1.0.0.supx # Packaged extension file (generated) └── README.md # Extension documentation
We welcome contributions! Please see the Contributing Guide for details.
Licensed under the Apache License, Version 2.0. See LICENSE for details.
Note: This package is currently in early development. APIs and commands may change before the 1.0.0 release. Please check the changelog for breaking changes between versions.