--- layout: "@layouts/ConfigLayout.astro" title: "About Quickshell" --- import { Icon } from "astro-icon/components"; # About Quickshell Quickshell is a framework for building various desktop components, such as *status bars, docks, panels, and overlays*, collectively known as the desktop shell. With Quickshell, you can create a desktop shell that is entirely your own. It can look and feel however you want, to the extent of your ability to use the [QML](https://doc.qt.io/qt-6/qmlreference.html) language. We provide a set of [easy to use libraries](/docs/types) for interacting with your operating system, and *instant config reloading* so you can see your changes in real time, as shown below. > [!NOTE] > Quickshell is still in a somewhat early stage of development. > There will be breaking changes before 1.0, however a migration guide will be provided. # Feature Overview Quickshell, QtQuick and the QML language provide the following notable features: - Full customization. You are not limited to a predetermined set of modules. - Full hot reloading. Your changes will be visible instantly on save. - A fully reactive language, which means as properties change, all usages will be re-evaluated. Manual signal usage can be largely avoided. - Full support for animations, which can be entirely custom. - Support for GLSL shaders. (further ease of use integrations are in progress) - Support for third party QML modules. Quickshell provides operating system integrations for the following features: - Panel windows (docks, status bars, desktop backgrounds, overlays) - Wayland compositors require the `zwlr_layer_shell_v1` protocol. - Many X11 window managers implement struts incorrectly, causing anchors and exclusive zone not to work as intended. - Lock screens - Wayland compositors require the `ext_session_lock_v1` protocol. - Currently unsupported on X11. - Popup windows - Unsupported on lockscreens. - Clicking outside a popup to dismiss only works under [Hyprland](https://hyprland.org). - Floating / Normal windows - Display manager / Login screen (via Greetd) - Management of other application windows (taskbar) - Wayland compositors require the `zwlr_foreign_toplevel_management` protocol. - Currently unsupported on X11. - System Tray (StatusNotifierItem only, no XEmbed) - Notification Daemon / Server - Audio Controls (via PipeWire) - Media Controls (MPRIS compatible players) - Battery / power status (via upower) The following features are planned, but are not yet implemented: - Bluetooth controls - Ability to take a screenshot without using an external tool - Embedded previews of other windows - Hot reloading of GLSL shaders - Bundling an optimized version of a configuration as an executable - Larger set of builtin controls