This is the public documentation site for Superset, built using Docusaurus 3. See CONTRIBUTING.md for documentation on contributing to documentation.
The Superset documentation site uses Docusaurus versioning with three independent versioned sections:
/docs/
) - Core Superset documentation/developer_portal/
) - Developer guides and tutorials/components/
) - Interactive component examples (currently disabled)Each section maintains its own version history and can be versioned independently.
To create a new version for any section, use the Docusaurus version command with the appropriate plugin ID or use our automated scripts:
⚠️ Important: Always use these custom commands instead of the native Docusaurus commands. These scripts ensure that both the Docusaurus versioning system AND the versions-config.json
file are updated correctly.
# Main Documentation yarn version:add:docs 1.2.0 # Developer Portal yarn version:add:developer_portal 1.2.0 # Component Playground (when enabled) yarn version:add:components 1.2.0
Do NOT use the native Docusaurus commands directly (yarn docusaurus docs:version
), as they will:
versions-config.json
The automated scripts handle all configuration updates automatically. No manual editing required!
If creating versions manually, you'll need to:
Update versions-config.json
(or docusaurus.config.ts
if not using dynamic config):
onlyIncludeVersions
arrayversions
objectlastVersion
if neededFiles Created by Versioning: When a new version is created, Docusaurus generates:
[section]_versioned_docs/version-X.X.X/
[section]_versioned_sidebars/version-X.X.X-sidebars.json
[section]_versions.json
Note: For main docs, the prefix is omitted (e.g., versioned_docs/
instead of docs_versioned_docs/
)
Important: After adding a version, restart the development server to see changes:
yarn stop
yarn start
# Main Documentation yarn version:remove:docs 1.0.0 # Developer Portal yarn version:remove:developer_portal 1.0.0 # Component Playground yarn version:remove:components 1.0.0
To manually remove a version:
Delete the version folder from the appropriate location:
versioned_docs/version-X.X.X/
(no prefix for main)developer_portal_versioned_docs/version-X.X.X/
components_versioned_docs/version-X.X.X/
Delete the version metadata file:
versioned_sidebars/version-X.X.X-sidebars.json
(no prefix)developer_portal_versioned_sidebars/version-X.X.X-sidebars.json
components_versioned_sidebars/version-X.X.X-sidebars.json
Update the versions list file:
versions.json
developer_portal_versions.json
components_versions.json
Update configuration:
versions-config.json
docusaurus.config.ts
Restart the server to see changes
docs: { includeCurrentVersion: true, lastVersion: 'current', // Makes /docs/ show Next version onlyIncludeVersions: ['current', '1.1.0', '1.0.0'], versions: { current: { label: 'Next', path: '', // Empty path for default routing banner: 'unreleased', }, '1.1.0': { label: '1.1.0', path: '1.1.0', banner: 'none', }, }, }
{ id: 'developer_portal', path: 'developer_portal', routeBasePath: 'developer_portal', includeCurrentVersion: true, lastVersion: '1.1.0', // Default version onlyIncludeVersions: ['current', '1.1.0', '1.0.0'], versions: { current: { label: 'Next', path: 'next', banner: 'unreleased', }, '1.1.0': { label: '1.1.0', path: '1.1.0', banner: 'none', }, }, }
'unreleased'
for development versions, 'none'
for stable releasesonlyIncludeVersions
to show only relevant versionsIf you accidentally used yarn docusaurus docs:version
instead of yarn version:add
:
versions-config.json
wasn't updatedgit restore versions.json && rm -rf versioned_docs/ versioned_sidebars/
yarn version:add:docs <version>
For other issues:
versions-config.json
includes the new versionWhen creating a new version, links in the documentation are preserved as-is. Common issues:
To fix broken links:
type: 'doc'
with docId
for version-aware navigation in navbar