Skip to content

hyprland-community/awesome-hyprland

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 

Repository files navigation

Awesome Hyprland

Discord

Awesome list for Hyprland, that includes useful tools and libraries that either work or are designed for Hyprland!

Language Bindings

Hyprlang configuration tools

  • tree-sitter-hyprlang c (tree-sitter grammar for Hyprland config files, made to be used with neovim)
  • hyprls go (A LSP server for Hyprland configuration files)
  • Hyprparse rust (Hypr config file parser, with support for the web)

Plugins

  • split-monitor-workspaces c++ (A small Hyprland plugin to provide awesome-like workspace behavior)
  • hyprgrass c++ (Hyprland plugin for touch gestures)
  • hyprNStack c++ (Hyprland plugin for N-stack tiling layout)
  • hyprRiver c++ (River layouts for Hyprland)
  • hyprfocus c++ (Flashfocus-inspired plugin that adds flashing when changing focus, useful for borderless)
  • hyprland-dwindle-autogroup c++ (overrides grouping behavior on dwindle layout)
  • hy3 c++ (Adds i3-like manual tiling)
  • hyprland-virtual-desktops c++ (manages multiple screen's workspaces as if they were a single virtual desktop)
  • Hypr-DarkWindow c++ (Hyprland plugin that adds possibility to invert the color of specific windows)
  • grab-workspace c++ (plugin that moves a workspace to the current monitor and shows it)
  • hycov c++ (Hyprland plugin that displays all open clients in a grid view)
  • hyprscroller c++ (scrolling layout plugin similar to PaperWM or niri)
  • hyprspace c++ (Hyprland plugin that adds workspace overview similar to KDE Plasma and macOS)
  • hyprland-easymotion c++ (Plugin to enable 'easymotion' navigation. Inspired by Xmonad easymotion)
  • hyprslidr c++ (A Hyprland plugin for a sliding window layout. Inspired by PaperWM.)
  • dynamic-cursors c++ (a plugin to make your hyprland cursor more realistic, also adds shake to find.)
  • hyprchroma c++ (Adds transparent background support to applications that don't normally support it without decreasing opacity or affecting readability)
  • border++ c++ (Adds one or two additional borders to windows)
  • hyprbars c++ (Adds title bars to windows)
  • hyprtrails c++ (Adds trails behind windows)
  • cs:go vulkan fix c++ (Fixes custom resolutions on CS:GO with -vulkan)
  • hyprwinwrap c++ (Allows you to put any app as a wallpaper)
  • hyprexpo c++ (Adds an expo-like workspace overview)

IPC plugins

These technically aren't hyprland plugins, but extend hyprland functionality using only IPC

  • pyprland python
    • expose (brings every window to the focused workspace, then allows switching to its workspace)
    • layout_center (a layout maximizing one window at a time with a margin around it)
    • lost_windows (attempt to recover windows which are out of reach)
    • magnify (toggles the magnified state)
    • scratchpads (use your favorite applications as dropdowns)
    • system_notifier (adds custom desktop notifications)
    • shortcuts_menu (allows making menus with rofi, dmenu & similar apps)
    • fetch_client_menu select a window to be moved to your active workspace (using rofi, dmenu, etc...)
    • toggle_dpms (toggles the dpms on every monitor)
    • toggle_special (easier usage of special workspaces to "stash" windows)
    • wallpapers (random wallpapers from a list of folders)
    • Multi screen:

Tools

Official tools

Status Bar/Shell

  • quickshell c++ (Simple and flexbile QtQuick based desktop shell toolkit)
  • ags typescript (A customizable and extensible shell for Hyprland)
  • fabric python (Fabric is a python widgets framework for wayland and X11 using gtk)
  • eww rust (Widget framework built on gtk, that can be used as a statusbar)
  • sysshell c++ (Generic shell for wayland)
  • waybar c++ (Like polybar, but for wlroots, very customizable)
  • Hybrid rust (Featureful bar made for wlroots based compositors)
  • hyprland-autoname-workspaces rust (Workspaces auto renamer, tested with waybar)
  • ironbar rust (Very customizable bar with gui components)
  • nwg-panel python (GTK3-based panel with good support for Hyprland)
  • nwg-dock-hyprland go (GTK3-based dock for Hyprland)
  • gBar c++ (GTK3 based blazingly fast and efficient status bar)
  • sysbar c++ (Modular status bar for wayland)
  • HyprPanel typescript (A Bar/Panel for Hyprland with extensive customizability and context menus.)
  • hyprpanel go (An opinionated GTK4 panel/shell)
  • ashell rust (A ready to go Wayland status bar for Hyprland)

Notifications

Notification Daemons

  • mako c (Very simple and configurable notification daemon)
  • dunst c (Very customizable notification daemon)
  • SwayNotificationCenter vala (GNOME like notification daemon, with GUI and all)
  • fnott c (Featureful and configurable notification daemon)
  • hyprnotify go (Notification daemon with 'hyprctl notify' as backend)

OSD

  • SwayOSD rust (GNOME like OSD written in gtk)
  • Avizo vala (macOS like OSD written in gtk, also comes with nice scripts)
  • Wob c (dead simple OSD inspired by xob)
  • syshud c++ (Simple heads up display written in gtkmm 4)

Misc

  • Ianny rust (Periodically informs user to take breaks by keeping track of usage patterns)
  • syspower c++ (Simple power menu/shutdown screen written in gtkmm 4)
  • easyeffects c++ (Limiter, compressor, convolver, equalizer and auto volume and many other plugins for PipeWire applications)
  • hyprgui rust (GUI for configuring Hyprland)

Runners, Menus, and Application Launchers

  • rofi-wayland c (Rofi fork with support for wlroots)
  • tofi c (very tiny rofi inspired menu)
  • bemenu c (looks like dmenu, but crossplatform)
  • wofi c (simple menu made in gtk)
  • fuzzel c (simple application launcher similar to rofi's drun mode)
  • yofi rust (yofi is a minimalistic menu for wayland)
  • anyrun rust (A wayland native, highly customizable runner, similar to krunner)
  • walker go (A wayland native, highly customizable and extensible runner)
  • hypr-empty rust (Open a runner on empty workspaces)
  • nwg-drawer go (Gnome-ish application drawer)
  • sysmenu c++ (Simple program launcher written in gtkmm 4)

Wallpaper

  • Hyprpaper c++ (blazing fast wayland wallpaper utility with IPC controls)
  • swww rust (Wallpaper daemon with live switching, awesome animations, and GIF support)
  • mpvpaper c (Wallpaper daemon that wraps MPV, useful for videos, and more advanced usage)
  • swaybg c (Very simple wallpaper daemon used by default on sway)
  • waypaper python (GUI wallpaper setter)
  • waypaper engine typescript (GUI wallpaper setter with playlist capabilities)
  • wpaperd rust (Minimal wallpaper daemon for Wayland)
  • hyprwall rust(GUI for setting wallpapers with hyprpaper, swww, swaybg, wallutils, and feh)

Display

  • iio-hyprland c (Listen iio-sensor-proxy and auto change Hyprland output orientation)
  • wlr-rander c (An xrandr clone for wlroots compositors)
  • kanshi c (Dynamic display configuration)
  • Wayout rust (For turning off display, useful for idle) (can be replicated using hyprctl)
  • monitor-attached rust (Run the user's script when you connect or disconnect monitors)
  • wl-mirror c (A simple Wayland output mirror client)
  • hyprshade python (Frontend to Hyprland's screen shader feature)
  • hyproled shell (A shader utility to prevent OLED burn in)
  • wlsunset c (Day/night gamma adjustments for Wayland)
  • Hyprlux rust (Automatically adjust gamma based on time of day and toggle vibrance when certain windows are in focus)
  • wluma rust (Automatically adjust screen brightness based on the screen contents and amount of ambient light)

NOTICE: Wluma needs to be updated to support newer Hyprland versions, as it currently relies on the unstable DMA-buf protocol.

Workspace

  • hyprdim rust (Automatically dim windows when switching between them)
  • hyprnome rust (GNOME-like workspace switching in Hyprland)
  • Hyprfreeze shell (Utility to suspend a game process and other programs)
  • hyprkool rust (plugin that adds kde activities and grid layouts. also allows to switch workspaces when cursor touches edges)
  • hyprswitch rust (A CLI/GUI that allows switching between windows in Hyprland)
  • hypr-ws-switcher shell (A script to switch workspaces based on the active screen, like awesomewm)
  • hypract rust (Adds KDE plasma like activities to Hyprland ) (Deprecated, use hyprkool instead)
  • hyprnavi rust (Simple horizontal navigation feature for hyprland)

Screenshotting

All in one Tools

  • Watershot rust (A simple wayland native screenshot tool)
  • Grimblast shell (Port of grimshot, which is an abstraction over grim and slurp)
  • Flameshot c++ (All in one screenshotting tool with gui, annotation, + more) (To use make sure you have grim flag enabled)
  • Hyprshot shell (Another grimshot-like tool to make things easier)
  • satty rust (A screenshot annotation tool inspired by Swappy and Flameshot)
  • swappy c (A Wayland native snapshot editing tool, inspired by Snappy on macOS)

Raw Tools

  • Grim c (basic screenshot tool)
  • grim-hyprland c (drop-in replacement Grim fork with support for Hyprland's window capture protocol)
  • Wayshot rust (basic screenshot tool made for speed and in rust)
  • slurp c (basic area selection tool)
  • Hyprpicker c++ (wlroots-compatible Wayland color picker that does not suck)
  • Wayfreeze rust (Tool to freeze the screen of a Wayland compositor)

Recording

  • wf-recorder c++ (Simple screenrecorder, like grim but records video)
  • wl-screenrec rust (Simple and efficient screenrecorder for AMD and Intel GPUs)

Annotation

  • swappy c (Annotation gui made in gtk)

Zooming utilities

  • woomer rust (Zooming utility for Wayland inspired by tsoding's boomer)

Input

On-screen Keyboards

  • sysboard c++ (Simple virtual keyboard for wayland)
  • wvkbd c (On-screen keyboard for wlroots)

Locking, Idle, Clipboard and Login

Misc

  • Wlogout c (Logout menu)
  • wayprompt zig (pinentry prompter)
  • nwg-bar go (GTK3-based logout bar)
  • wleave rust (A Wayland-native logout script written in Gtk3)
  • vigiland rust (A CLI tool to inhibit the idle behaviour of a Wayland compositor, e.g. prevent locking, screen turning off, etc.)

Idle Daemons

  • hypridle c++ (Hyprland's idle daemon)
  • swayidle c (Idle daemon used by default in sway, also only one I could find for wlroots)

Lockers

  • swaylock c (Sway's default locker, very configurable, and popular)
  • swaylock-effects c (Fork of swaylock, but with effects ^)
  • waylock zig (A small screenlocker for Wayland compositors)
  • hyprlock c++ (Hyprland's GPU-accelerated screen locking utility)
  • syslock c++ (Simple screen locker for wayland written in gtkmm 4)

Clipboard Managers

  • clipman go (A simple clipboard manager for Wayland)
  • cliphist go (Wayland clipboard manager)
Display Managers
  • GDM c
  • SDDM c++
  • lightdm c (Display manager with a bunch of greeters, more info on gh repo)
  • Greetd rust (Login daemon with a couple greeters, bellow are some good ones)
    • gtkgreet c (Very simple gtk greeter)
    • qtgreet c++ (Configurable and overall more complicated greeter in QT)
    • wlgreet rust (Very basic greeter in raw wayland and SCTK)
    • tuigreet rust (Graphical console greeter for greetd)