title: Developer Portal sidebar_position: 1 hide_title: true
Superset Developer Portal
Welcome to the Apache Superset Developer Portal! This is your comprehensive guide to extending and customizing Superset through our new extension architecture.
What are Superset Extensions?
Superset Extensions provide a powerful way to enhance and customize Apache Superset without modifying the core codebase. Following the successful model pioneered by VS Code, our extension architecture enables developers to:
- Add custom features to SQL Lab and other Superset modules
- Create reusable components that can be shared across organizations
- Integrate external tools and services seamlessly
- Customize workflows to match your team's specific needs
Why Extensions?
As Superset has grown, we've recognized the need for a more modular architecture that allows:
- Innovation without fragmentation - Build features without forking the codebase
- Community-driven development - Share and reuse extensions across organizations
- Stable APIs - Develop against versioned, well-documented interfaces
- Rapid iteration - Deploy custom features without waiting for core releases
Key Features
🎯 Well-Defined Extension Points
Extensions can contribute to specific areas of Superset:
- SQL Lab panels (left, right, bottom, editor)
- Custom commands and menu items
- Status bar components
- API endpoints and backend functionality
🔧 Modern Development Experience
- CLI tools for scaffolding, building, and packaging
- Hot reloading during development
- TypeScript support with full type safety
- Module Federation for dynamic loading
📦 Simple Distribution
- Package extensions as
.supx
files - Upload via REST API or UI
- Automatic activation and lifecycle management
- Version compatibility checking
Getting Started
Ready to build your first extension? Check out our Getting Started Guide to:
- Set up your development environment
- Create your first extension
- Test it locally
- Package and deploy it
Architecture Overview
Our extension architecture is built on several key principles:
- Lean Core: Keep Superset's core minimal and delegate features to extensions
- Explicit APIs: Clear, versioned interfaces for extension interactions
- Lazy Loading: Extensions load only when needed for optimal performance
- Security First: Extensions run with appropriate permissions and sandboxing
Learn more in our Architecture Documentation.
Current Status
The extension architecture is currently in active development. The initial focus is on SQL Lab extensions, with plans to expand to:
- Dashboard extensions
- Chart plugins (enhanced from current system)
- Database connectors
- Security providers
Example: Dataset References Extension
See the extension system in action with our Dataset References example, which adds a SQL Lab panel showing:
- Tables referenced in queries
- Table owners for permission requests
- Last available partitions
- Estimated row counts
Join the Community
- Contribute: Help shape the future of Superset extensions
- Share: Publish your extensions for others to use
- Learn: Explore extensions built by the community
Quick Links
The Superset extension architecture is inspired by the successful model of VS Code Extensions, bringing similar flexibility and power to the data exploration domain.