# noctalia-dev/noctalia-shell

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/noctalia-dev-noctalia-shell).**

3,988 stars · 320 forks · QML · mit

## Links

- GitHub: https://github.com/noctalia-dev/noctalia-shell
- Homepage: https://docs.noctalia.dev
- awesome-repositories: https://awesome-repositories.com/repository/noctalia-dev-noctalia-shell.md

## Topics

`dotfiles` `hyprland` `linux` `niri` `noctalia` `quickshell` `rice`

## Description

Noctalia Shell is a modular Wayland desktop shell that provides a user interface consisting of status bars, launchers, and notifications for Wayland compositors. It is built as a plugin-based desktop environment that utilizes declarative configuration for managing system defaults, wallpapers, and plugin installations.

The project features a dynamic desktop theming engine that extracts color palettes from wallpapers to theme the shell and external applications. This is supported by an inter-process communication bridge that exposes endpoints, allowing external scripts and keybindings to trigger shell actions and plugin functions.

The shell's capability surface includes a comprehensive framework for developing custom desktop widgets and system utilities. It covers system integration for hardware APIs and Wayland compositor features, as well as tools for resource monitoring, notification management, and session security.

The environment provides deep visual customization through a synchronization system that applies consistent color schemes across various external applications and toolkits.

## Tags

### Development Tools & Productivity

- [Desktop Shell Plugin Frameworks](https://awesome-repositories.com/f/development-tools-productivity/terminal-shell-cli/shell-plugin-systems/desktop-shell-plugin-frameworks.md) — Provides a modular plugin framework for developing custom desktop widgets and system utilities.
- [Category-Based Search Sources](https://awesome-repositories.com/f/development-tools-productivity/command-line-interfaces/hcatalog-command-line-interface/menu-launchers/desktop-application-launchers/category-based-search-sources.md) — Allows for the addition of category-based browsing and search sources within the application launcher. ([source](https://docs.noctalia.dev/v4/development/plugins/manifest/))
- [Launcher Extensions](https://awesome-repositories.com/f/development-tools-productivity/launcher-extensions.md) — Provides a framework to extend the application launcher with custom search sources and command handlers. ([source](https://docs.noctalia.dev/v4/development/plugins/launcher-provider/))
- [Plugin Registration Systems](https://awesome-repositories.com/f/development-tools-productivity/plugin-registration-systems.md) — Registers custom handlers that enable external scripts to trigger plugin actions programmatically. ([source](https://docs.noctalia.dev/v4/development/plugins/ipc/))
- [Plugin Systems](https://awesome-repositories.com/f/development-tools-productivity/plugin-systems.md) — Provides a framework for creating modular UI components and system utilities using manifests and markup. ([source](https://docs.noctalia.dev/v4/development/plugins/getting-started/))
- [UI and Logic Plugins](https://awesome-repositories.com/f/development-tools-productivity/terminal-shell-cli/shell-plugin-systems/ui-and-logic-plugins.md) — Implements a framework for handling background tasks and processing communication commands within plugins. ([source](https://docs.noctalia.dev/v4/development/plugins/manifest/))
- [Plugin Configuration Forms](https://awesome-repositories.com/f/development-tools-productivity/extensible-configuration-interfaces/plugin-interface-configurations/plugin-configuration-forms.md) — Ships a framework for building graphical configuration forms with widgets to modify plugin behavior. ([source](https://docs.noctalia.dev/v4/development/plugins/settings-ui/))
- [Hot Code Reloading](https://awesome-repositories.com/f/development-tools-productivity/hot-code-reloading.md) — Refreshes active UI components in real time without restarting the shell by monitoring source files.
- [Plugin Panel Managers](https://awesome-repositories.com/f/development-tools-productivity/plugin-panel-managers.md) — Provides utilities to open, close, and toggle settings panels and operational views for installed plugins. ([source](https://docs.noctalia.dev/v4/getting-started/keybinds/interface-and-plugins/))
- [Shell UI Panels](https://awesome-repositories.com/f/development-tools-productivity/plugin-panel-managers/shell-ui-panels.md) — Provides a system for toggling plugin interface panels on specific screens relative to widgets. ([source](https://docs.noctalia.dev/v4/development/plugins/api/))
- [Quick Launchers](https://awesome-repositories.com/f/development-tools-productivity/quick-launchers.md) — Provides rapid entry points for system utilities such as clipboard history, emoji selectors, and window switchers. ([source](https://docs.noctalia.dev/v4/getting-started/keybinds/core-and-navigation/))
- [Graphical Settings Editors](https://awesome-repositories.com/f/development-tools-productivity/system-settings-managers/edition-configuration-managers/graphical-settings-editors.md) — Provides a graphical settings editor for adjusting shell appearance and behavior with immediate application. ([source](https://docs.noctalia.dev/v4/configuration/configure-noctalia/))

### Operating Systems & Systems Programming

- [Wayland Desktop Shell Development](https://awesome-repositories.com/f/operating-systems-systems-programming/wayland-desktop-shell-development.md) — Provides a modular framework for building customizable status bars, launchers, and notifications for Wayland compositors.
- [Wayland](https://awesome-repositories.com/f/operating-systems-systems-programming/desktop-environment-frameworks/desktop-environment-components/desktop-integration/compositor-integrations/wayland.md) — Connects to Wayland compositor-specific features to manage windows and workspaces. ([source](https://cdn.jsdelivr.net/gh/noctalia-dev/noctalia-shell@main/README.md))
- [Inter-Process Communication Bridges](https://awesome-repositories.com/f/operating-systems-systems-programming/inter-process-communication-bridges.md) — Provides an IPC bridge that exposes endpoints for external scripts and keybindings to trigger shell actions.
- [IPC Endpoint Exposure](https://awesome-repositories.com/f/operating-systems-systems-programming/ipc-endpoint-exposure.md) — Creates callable endpoints that allow external utilities to trigger specific internal shell functions. ([source](https://docs.noctalia.dev/v4/development/ipc/))
- [Shell Extensions](https://awesome-repositories.com/f/operating-systems-systems-programming/platform-development-integration/shell-extensions.md) — Implements a plugin system to extend shell functionality with custom bar widgets and launcher providers. ([source](https://cdn.jsdelivr.net/gh/noctalia-dev/noctalia-shell@main/README.md))
- [Wayland Desktop Shells](https://awesome-repositories.com/f/operating-systems-systems-programming/wayland-desktop-shells.md) — Implements a complete Wayland desktop shell providing status bars, launchers, and notifications.
- [Desktop Environment Configurations](https://awesome-repositories.com/f/operating-systems-systems-programming/desktop-environment-configurations.md) — Provides a system for defining the background imagery and overview layout of the desktop shell. ([source](https://docs.noctalia.dev/v4/getting-started/compositor-settings/niri/))
- [System Services Integration](https://awesome-repositories.com/f/operating-systems-systems-programming/system-services-integration.md) — Provides an API suite for controlling audio, monitoring battery status, and triggering system notifications. ([source](https://docs.noctalia.dev/v4/development/plugins/overview/))

### User Interface & Experience

- [Desktop Widgets](https://awesome-repositories.com/f/user-interface-experience/desktop-widgets.md) — Provides a comprehensive framework for building floating, draggable UI widgets on the desktop background. ([source](https://docs.noctalia.dev/v4/development/plugins/desktop-widget/))
- [Application Launchers](https://awesome-repositories.com/f/user-interface-experience/application-launchers.md) — Provides a utility to open and close an application launcher for rapid software execution. ([source](https://docs.noctalia.dev/v4/getting-started/keybinds/core-and-navigation/))
- [Wallpaper Color Extractors](https://awesome-repositories.com/f/user-interface-experience/color-themes/wallpaper-color-extractors.md) — Extracts dominant colors from wallpaper images to generate cohesive system-wide color palettes. ([source](https://docs.noctalia.dev/v4/development/templates/))
- [Dynamic Theming](https://awesome-repositories.com/f/user-interface-experience/dynamic-theming.md) — Implements a dynamic theming engine that extracts color palettes from wallpapers to theme the shell and external applications.
- [Floating Desktop Widgets](https://awesome-repositories.com/f/user-interface-experience/floating-desktop-widgets.md) — Provides a framework for creating draggable and floating UI components for system information and quick-action controls.
- [Custom Widget Additions](https://awesome-repositories.com/f/user-interface-experience/status-bars/desktop-environment-status-bar-integrations/custom-widget-additions.md) — Provides a system to add custom indicators and action buttons to the top and bottom system bars. ([source](https://docs.noctalia.dev/v4/development/plugins/overview/))
- [Theme Management Systems](https://awesome-repositories.com/f/user-interface-experience/theme-management-systems.md) — Includes a utility to switch between light and dark modes and apply global color schemes. ([source](https://docs.noctalia.dev/v4/getting-started/keybinds/interface-and-plugins/))
- [Wallpaper-Based Palette Generation](https://awesome-repositories.com/f/user-interface-experience/theming-systems/wallpaper-based-palette-generation.md) — Extracts dominant colors from wallpapers to automatically generate consistent Material Design system themes.
- [Shell Widgets](https://awesome-repositories.com/f/user-interface-experience/ui-widgets/shell-widgets.md) — Provides a system for creating interactive action buttons and toggles within the shell's control center. ([source](https://docs.noctalia.dev/v4/development/plugins/control-center-widget/))
- [Blur Effects](https://awesome-repositories.com/f/user-interface-experience/animation-and-motion-systems/blur-effects.md) — Implements a visual effect system that applies blur filters behind windows and shell components for depth. ([source](https://docs.noctalia.dev/v4/getting-started/compositor-settings/niri/))
- [Color Schemes](https://awesome-repositories.com/f/user-interface-experience/color-schemes.md) — Loads core colors from palettes to generate Material Design tokens for the interface. ([source](https://docs.noctalia.dev/v4/development/templates/))
- [Custom Color Theme Definitions](https://awesome-repositories.com/f/user-interface-experience/color-themes/custom-color-theme-definitions.md) — Enables the definition of complete sets of colors and hover states to customize the interface appearance. ([source](https://docs.noctalia.dev/v4/getting-started/nixos/))
- [External Application Theme Templates](https://awesome-repositories.com/f/user-interface-experience/color-themes/theme-application-switching/external-application-theme-templates.md) — Provides custom templates for applying consistent theming to unsupported external applications. ([source](https://docs.noctalia.dev/v4/getting-started/nixos/))
- [Custom Settings Interfaces](https://awesome-repositories.com/f/user-interface-experience/custom-configuration-extensions/custom-settings-interfaces.md) — Implements user configuration menus and feature toggles that integrate directly into system settings. ([source](https://docs.noctalia.dev/v4/development/plugins/manifest/))
- [Configuration File Generators](https://awesome-repositories.com/f/user-interface-experience/custom-theme-definitions/application-theme-definitions/configuration-file-generators.md) — Creates themed configuration files for various applications based on specified templates. ([source](https://docs.noctalia.dev/v4/development/templates/))
- [Interface Color Schemes](https://awesome-repositories.com/f/user-interface-experience/custom-theme-definitions/interface-color-schemes.md) — Allows the creation of personalized color palettes including coordinated dark and light variants. ([source](https://docs.noctalia.dev/v4/theming/color-schemes/))
- [Widget Visual Customization](https://awesome-repositories.com/f/user-interface-experience/dashboard-widget-frameworks/widget-configuration-managers/widget-visual-customization.md) — Ships a dedicated interface for customizing per-instance visual options including colors and layout. ([source](https://docs.noctalia.dev/v4/development/plugins/desktop-widget/))
- [Interface Visibility Controls](https://awesome-repositories.com/f/user-interface-experience/interface-visibility-controls.md) — Provides utilities to toggle the display mode and screen position of bars, docks, and widgets. ([source](https://docs.noctalia.dev/v4/getting-started/keybinds/interface-and-plugins/))
- [Interface Visibility IPC](https://awesome-repositories.com/f/user-interface-experience/interface-visibility-ipc.md) — Toggles the launcher interface via inter-process communication to enable custom keyboard shortcut bindings. ([source](https://docs.noctalia.dev/v4/development/plugins/launcher-provider/))
- [Notification History Centers](https://awesome-repositories.com/f/user-interface-experience/notification-history-centers.md) — Provides a notification history center to view, retrieve, and clear past system alerts. ([source](https://docs.noctalia.dev/v4/getting-started/keybinds/interface-and-plugins/))
- [Interaction Overlays](https://awesome-repositories.com/f/user-interface-experience/overlay-components/flyout-panels/interaction-overlays.md) — Offers a framework for creating full-screen interfaces used for complex user interactions and detailed information. ([source](https://docs.noctalia.dev/v4/development/plugins/overview/))
- [Full-Screen Overlays](https://awesome-repositories.com/f/user-interface-experience/panel-groups/content-panels/full-screen-overlays.md) — Provides a utility to construct full-screen overlay interfaces for browsing content or displaying detailed information. ([source](https://docs.noctalia.dev/v4/development/plugins/manifest/))
- [Theme Synchronization Tools](https://awesome-repositories.com/f/user-interface-experience/theme-synchronization-tools.md) — Synchronizes visual styles across GTK, Qt, and KDE applications for a consistent desktop appearance. ([source](https://docs.noctalia.dev/v4/theming/program-specific/gtk-qt/))
- [Toast Notification Systems](https://awesome-repositories.com/f/user-interface-experience/toast-notification-systems.md) — Ships a system for displaying brief, timed pop-up toast notifications with customizable content. ([source](https://docs.noctalia.dev/v4/getting-started/keybinds/interface-and-plugins/))
- [Terminal Color Palettes](https://awesome-repositories.com/f/user-interface-experience/ui-architecture/design-utilities/design-systems/color-system-utilities/color-palette-management/terminal-color-palettes.md) — Sets background, foreground, and accent colors for various terminal emulators to match the shell theme. ([source](https://docs.noctalia.dev/v4/theming/color-schemes/))
- [Widget Behavioral Configurations](https://awesome-repositories.com/f/user-interface-experience/widget-behavioral-configurations.md) — Offers a system to modify the layout, scale, and behavioral properties of individual desktop widgets. ([source](https://docs.noctalia.dev/))
- [Per-Instance Widget Configuration](https://awesome-repositories.com/f/user-interface-experience/widget-behavioral-configurations/per-instance-widget-configuration.md) — Provides a system for managing per-instance data such as position and scale for individual desktop widgets. ([source](https://docs.noctalia.dev/v4/development/plugins/desktop-widget-settings/))
- [Window Effects](https://awesome-repositories.com/f/user-interface-experience/window-effects.md) — Provides a system to adjust window visual properties and apply blur effects for a uniform interface. ([source](https://docs.noctalia.dev/v4/getting-started/compositor-settings/hyprland/))

### Part of an Awesome List

- [Bars and Widgets](https://awesome-repositories.com/f/awesome-lists/devtools/bars-and-widgets.md) — Provides a framework to build UI components for status bars that display system information or trigger actions. ([source](https://docs.noctalia.dev/v4/development/plugins/bar-widget/))
- [Cross-Application Theme Synchronization](https://awesome-repositories.com/f/awesome-lists/devtools/cross-application-theme-synchronization.md) — Synchronizes color schemes and visual styles automatically across various external applications and system components.
- [Panel Trigger Mechanisms](https://awesome-repositories.com/f/awesome-lists/devtools/status-bars-and-panels/desktop-panel-systems/panel-trigger-mechanisms.md) — Implements a mechanism to open dedicated system panels immediately following interactions with bar widgets. ([source](https://docs.noctalia.dev/v4/development/plugins/bar-widget/))
- [Quick Settings Toggles](https://awesome-repositories.com/f/awesome-lists/devtools/status-bars-and-panels/desktop-panel-systems/quick-settings-toggles.md) — Provides configurable toggle buttons in the central panel for triggering system shortcuts and interfaces. ([source](https://docs.noctalia.dev/v4/development/plugins/overview/))

### Networking & Communication

- [Shell IPC Bridges](https://awesome-repositories.com/f/networking-communication/shell-ipc-bridges.md) — Exposes communication endpoints that allow external scripts and keybindings to trigger shell actions and plugin functions.

### Software Engineering & Architecture

- [IPC Command Routers](https://awesome-repositories.com/f/software-engineering-architecture/command-routing-architectures/ipc-command-routers.md) — Routes communication calls between external processes and internal shell functions to trigger system actions.
- [Declarative Configuration Systems](https://awesome-repositories.com/f/software-engineering-architecture/declarative-configuration-systems.md) — Utilizes a declarative configuration system to set system defaults and user preferences. ([source](https://docs.noctalia.dev/v4/getting-started/nixos/))
- [Event-Driven UI Rendering](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-architectures/event-driven-ui-rendering.md) — Displays floating UI components that update in real time based on system events and persisted data.
- [Manifest-Based Plugin Loading](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/plugin-module-systems/modular-plugin-architectures/plugin-based-architectures/plugin-based-architectures/manifest-based-plugin-loading.md) — Loads modular UI components and background services using declarative manifests and markup files.
- [Background Processing](https://awesome-repositories.com/f/software-engineering-architecture/background-processing.md) — Features a background processing engine for monitoring system events and executing commands independently of the UI. ([source](https://docs.noctalia.dev/v4/development/plugins/overview/))
- [Custom Widget Registrations](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures/developer-authoring-interfaces/custom-module-implementations/module-functionality-extenders/plugin-extenders/custom-widget-registrations.md) — Provides a registration system to add custom components to the widget picker for deployment. ([source](https://docs.noctalia.dev/v4/configuration/desktop-widgets/))
- [Plugin Installation and Management](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/extensibility/plugin-architectures/plugin-installation-utilities/plugin-installation-and-management.md) — Automatically configures and installs missing plugins from a local directory during the startup process. ([source](https://docs.noctalia.dev/v4/getting-started/nixos/))
- [Theme Synchronizations](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/workflow-automation-integrations/external-application-integrations/theme-synchronizations.md) — Implements a generator for configuration files to synchronize visual styles and color palettes across third-party applications. ([source](https://docs.noctalia.dev/v4/theming/user-templates/))
- [Shell Plugin State Management](https://awesome-repositories.com/f/software-engineering-architecture/shell-plugin-state-management.md) — Provides an API for controlling panel visibility and persisting plugin settings. ([source](https://docs.noctalia.dev/v4/development/plugins/ipc/))

### Web Development

- [UI Configuration Mappings](https://awesome-repositories.com/f/web-development/data-mapping/declarative-mapping-engines/configuration-file-mappings/ui-configuration-mappings.md) — Maps user preferences and system defaults to interface properties via a structured configuration module.

### Artificial Intelligence & ML

- [Hot-Reloaded Plugin Development](https://awesome-repositories.com/f/artificial-intelligence-ml/ml-visualization-libraries/custom-plugin-development/plugin-creation-from-templates/hot-reloaded-plugin-development.md) — Automatically updates active UI components upon saving source files without restarting the host. ([source](https://docs.noctalia.dev/v4/development/plugins/getting-started/))

### Data & Databases

- [Plugin Preferences](https://awesome-repositories.com/f/data-databases/key-value-persistence-stores/app-settings-persistence/plugin-preferences.md) — Implements a mechanism to save and load user-configured plugin preferences to disk for persistence across sessions. ([source](https://docs.noctalia.dev/v4/development/plugins/api/))
- [Settings Integration](https://awesome-repositories.com/f/data-databases/key-value-persistence-stores/app-settings-persistence/plugin-preferences/settings-integration.md) — Integrates plugin configuration interfaces directly into the centralized system settings panel. ([source](https://docs.noctalia.dev/v4/development/plugins/overview/))

### Graphics & Multimedia

- [Plugin Overlays](https://awesome-repositories.com/f/graphics-multimedia/screen-overlays/plugin-overlays.md) — Displays detailed plugin interfaces as full-screen overlays triggered by specific widgets or system events. ([source](https://docs.noctalia.dev/v4/development/plugins/panel/))

### System Administration & Monitoring

- [Notification Silencing](https://awesome-repositories.com/f/system-administration-monitoring/alert-notification-systems/notification-silencing.md) — Implements a Do Not Disturb mode to suppress incoming notification alerts. ([source](https://docs.noctalia.dev/v4/getting-started/keybinds/interface-and-plugins/))
- [System Resource Monitors](https://awesome-repositories.com/f/system-administration-monitoring/system-resource-monitors.md) — Includes a dedicated interface for tracking real-time system performance and hardware resource usage. ([source](https://docs.noctalia.dev/v4/getting-started/keybinds/core-and-navigation/))
