blob: f47cdd0a83cddf5859d7696e84ed8ac3bee40efb [file] [log] [blame]
---
name: "Superset One"
title: "Superset One"
route: /docs/version-one
---
## Superset 1.0
Apache Superset 1.0 is a major milestone that the community has been working towards since the
very first commit at a hackathon at Airbnb back in 2015. Superset 1.0 packs a lot of new features,
uplevels usability, holds a higher quality standard, and raises the bar for releases to come.
This page chronicles the key advancements that our community has been building up towards this release.
While growing fast over the past four years, Superset had accumulated a certain amount of technical debt,
design debt, bugs, and idiosyncrasies. For this release, we wanted to pay the bulk of that debt off,
streamlining the core user flows, refreshing the overall look and feel, taking off some of the
scaffolding that was left standing around, and more generally, leveling up the user experience.
## User Experience
Visually, Superset 1.0 is stunning, introducing card layouts with thumbnails throughout the application,
streamlining navigation and content discovery with a new home page, redesigned menus,
and generally enriching existing pages.
<img src="/images/dashboard_card_view.jpg" />
Behind the scenes, we moved away from Bootstrap 2x in favor of building a
proper design system on top of Ant Design.
We also redesigned all of our CRUD (Create Read Update Delete), moving away
from the rigid scaffolding auto-magic provided by FAB (Flask App Builder),
to our own React-based solution that enables us to build richer experiences.
<img src="/images/explore_ui.jpg" />
More generally,
many rough edges got buffed, the whole product got polished,
and we managed to get our core user flows to, well, flow nicely.
## API
For engineers and hackers, weve made Superset much more modular,
extensible and integratable. Were now exposing the building blocks of Superset
for engineers to extend or use in other projects. Its now easier than ever to
create new visualization plugins for Superset and to share those plugins back with the community.
Were excited by the possibilities that this opens and excited to observe a growing ecosystem of
plugins take life. Weve also formalized a [public REST API](/docs/rest-api) that enables engineers to essentially
do everything that users can do in Superset, programmatically.
## Honorable Mentions
With 1680 PRs merged and 25+ SIPs (Superset Improvement Proposals) over 2020, its hard
to summarize what went into this release. Improvements happened in all aspects
of the project, from infrastructure to design, through backend and frontend, to community and
governance. Here are some honorable mentions that we havent been covered above,
but deserve a mention in this post:
- Asynchronous backend improvements
- Metadata and data pane in explorer view
- Toolbars redesign (SQL Lab, dashboard, explore)
- Date range picker redesign
- Various Docker / Helm improvements
- Migration of key visualization to plugins using Echarts
- Time series forecasting leveraging the Prophet library
- Improvements to and extensive use of our feature flag framework
- Improved analytics logging, capturing more events more consistently
- Exploration control panels improvements
- Improved SQL-to-explore flows
**Release Notes**
To digest the full set of changes in 1.0, we recommend reading the
[full Release Notes](https://github.com/apache/superset/tree/master/RELEASING/release-notes-1-0)
on Github.
## Start Using Superset 1.0
**Source Code**
You can download Superset 1.0 from any of the following places:
- Official Apache Software Foundation source [release](https://downloads.apache.org/superset/1.0.0/)
- Python package from [PyPi](https://pypi.org/project/apache-superset/1.0.0/)
- this commit tag from [Github](https://github.com/apache/superset/releases/tag/1.0.0)
**Feature Flags & Dependency Configuration**
Some of the features in Superset 1.0 require:
- enabling of specific feature flags (read more about [configuring these](/docs/installation/configuring-superset))
- custom configuration of additional services (e.g. celery, SMTP server, etc)
In this section, the community takes the first steps to document the
feature flags and configuration instructions needed.
| Feature | Feature Flag | Dependencies | Documentation
| --- | --- | --- | --- |
| Global Async Queries | `GLOBAL_ASYNC_QUERIES: True` | Redis 5.0+, celery workers configured and running | [Extra documentation](https://github.com/apache/superset/blob/master/CONTRIBUTING.md#async-chart-queries )
| Dashboard Native Filters | `DASHBOARD_NATIVE_FILTERS: True` | |
| Alerts & Reporting | `ALERTS_REPORTS: True` | [Celery workers configured & celery beat process](/docs/installation/async-queries-celery) |
| Homescreen Thumbnails | `THUMBNAILS: TRUE, THUMBNAIL_CACHE_CONFIG: CacheConfig = { "CACHE_TYPE": "null", "CACHE_NO_NULL_WARNING": True}`| selenium, pillow 7, celery |
| Dynamic Viz Plugin Import | `DYNAMIC_PLUGINS: True` | |