mirror of
https://github.com/apache/superset.git
synced 2026-04-09 19:35:21 +00:00
77 lines
3.7 KiB
Markdown
77 lines
3.7 KiB
Markdown
---
|
|
title: Overview
|
|
sidebar_position: 1
|
|
---
|
|
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one
|
|
or more contributor license agreements. See the NOTICE file
|
|
distributed with this work for additional information
|
|
regarding copyright ownership. The ASF licenses this file
|
|
to you under the Apache License, Version 2.0 (the
|
|
"License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing,
|
|
software distributed under the License is distributed on an
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
KIND, either express or implied. See the License for the
|
|
specific language governing permissions and limitations
|
|
under the License.
|
|
-->
|
|
|
|
# Overview
|
|
|
|
Apache Superset's extension system allows developers to enhance and customize Superset's functionality through a modular, plugin-based architecture. Extensions can add new visualization types, custom UI components, data processing capabilities, and integration points.
|
|
|
|
## What are Superset Extensions?
|
|
|
|
Superset extensions are self-contained packages that extend the core platform's capabilities. They follow a standardized architecture that ensures compatibility, security, and maintainability while providing powerful customization options.
|
|
|
|
## Extension Architecture
|
|
|
|
- **[Architecture](./architecture)** - Architectural principles and high-level system overview
|
|
- **[Extension Project Structure](./extension-project-structure)** - Standard project layout and organization
|
|
- **[Extension Metadata](./extension-metadata)** - Configuration and manifest structure
|
|
|
|
## Development Guide
|
|
|
|
- **[Frontend Contribution Types](./frontend-contribution-types)** - Types of UI contributions available
|
|
- **[Interacting with Host](./interacting-with-host)** - Communication patterns with Superset core
|
|
- **[Development Mode](./development-mode)** - Tools and workflows for extension development
|
|
|
|
For information about runtime loading and dependency management, see the [Dynamic Module Loading](./architecture#dynamic-module-loading) section in the Architecture page.
|
|
|
|
## Deployment & Management
|
|
|
|
- **[Deploying Extension](./deploying-extension)** - Packaging and distribution strategies
|
|
- **[Security Implications](./security-implications)** - Security considerations and best practices
|
|
|
|
## Hands-on Examples
|
|
|
|
- **[Quick Start](./quick-start)** - Complete Hello World extension walkthrough
|
|
|
|
## Extension Capabilities
|
|
|
|
Extensions can provide:
|
|
|
|
- **Custom Visualizations**: New chart types and data visualization components
|
|
- **UI Enhancements**: Custom dashboards, panels, and interactive elements
|
|
- **Data Connectors**: Integration with external data sources and APIs
|
|
- **Workflow Automation**: Custom actions and batch processing capabilities
|
|
- **Authentication Providers**: SSO and custom authentication mechanisms
|
|
- **Theme Customization**: Custom styling and branding options
|
|
|
|
## Getting Started
|
|
|
|
1. **Learn the Architecture**: Start with [Architecture](./architecture) to understand the design philosophy
|
|
2. **Set up Development**: Follow the [Development Mode](./development-mode) guide to configure your environment
|
|
3. **Build Your First Extension**: Complete the [Quick Start](./quick-start) tutorial
|
|
4. **Deploy and Share**: Use the [Deploying Extension](./deploying-extension) guide to package your extension
|
|
|
|
## Extension Ecosystem
|
|
|
|
The extension system is designed to foster a vibrant ecosystem of community-contributed functionality. By following the established patterns and guidelines, developers can create extensions that seamlessly integrate with Superset while maintaining the platform's reliability and performance standards.
|