Major restructuring of documentation to separate concerns: **New Structure:** - `/docs/` - User-facing docs (intro, quickstart, databases, using-superset, faq) - `/admin-docs/` - Administrator docs (installation, configuration, security) - `/developer-docs/` - Developer docs (contributing, extensions, guidelines, testing) **Changes:** - Move installation, configuration, and security docs to admin_docs/ - Move contributing, extensions, guidelines, and testing to developer_docs/ - Rename developer_portal to developer_docs (with underscore to hyphen in URL) - Add sidebarAdminDocs.js for admin documentation navigation - Update versions-config.json with new doc sections - Update docusaurus.config.ts with new plugins and redirects - Update internal links in versioned docs (6.0.0) to use new paths - Keep user-facing content (databases, using-superset, faq) in main docs This separation makes it clearer which documentation is relevant for: - End users exploring and visualizing data - Administrators deploying and configuring Superset - Developers contributing to or extending Superset Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
3.2 KiB
title, sidebar_position
| title | sidebar_position |
|---|---|
| Overview | 1 |
Overview
Apache Superset's extension system enables organizations to build custom features without modifying the core codebase. Inspired by the VS Code extension model, this architecture addresses a long-standing challenge: teams previously had to fork Superset or make invasive modifications to add capabilities like query optimizers, custom panels, or specialized integrations—resulting in maintenance overhead and codebase fragmentation.
The extension system introduces a modular, plugin-based architecture where both built-in features and external extensions use the same well-defined APIs. This "lean core" approach ensures that any capability available to Superset's internal features is equally accessible to community-developed extensions, fostering a vibrant ecosystem while reducing the maintenance burden on core contributors.
What are Superset Extensions?
Superset extensions are self-contained .supx packages that extend the platform's capabilities through standardized contribution points. Each extension can include both frontend (React/TypeScript) and backend (Python) components, bundled together and loaded dynamically at runtime using Webpack Module Federation.
Extension Capabilities
Extensions can provide:
- Custom UI Components: New panels, views, and interactive elements
- Commands and Menus: Custom actions accessible via menus and keyboard shortcuts
- REST API Endpoints: Backend services under the
/api/v1/extensions/namespace - MCP Tools and Prompts: AI agent capabilities for enhanced user assistance
Next Steps
- Quick Start - Build your first extension with a complete walkthrough
- Architecture - Design principles and system overview
- Dependencies - Managing dependencies and understanding API stability
- Contribution Types - Available extension points
- Development - Project structure, APIs, and development workflow
- Deployment - Packaging and deploying extensions
- MCP Integration - Adding AI agent capabilities using extensions
- Security - Security considerations and best practices
- Tasks - Framework for creating and managing long running tasks
- Community Extensions - Browse extensions shared by the community