Skip to content

Nurysso/Hecate

Repository files navigation

🌙 Hecate

Typing SVG

✦ Dynamic theming that adapts to your wallpaper ✦
with powerful GUI customization tools and beautiful widgets

License: GNU-gpl3 Hyprland Made with Love


🎬 See It In Action

💿 Installation

✨ Usage



🌟 Features

╔══════════════════════════════════════════════════════════════════════════════╗
║                                                                              ║
║     🎨 DYNAMIC THEMING  •  🖥️ GUI HELPER  •  📦 WIDGETS  •  🚀 SMART SETUP   ║
║                                                                              ║
╚══════════════════════════════════════════════════════════════════════════════╝

Dynamic Theming

Colors that dance with your wallpaper

Hecate automatically extracts colors from your wallpaper and applies them across your entire system. Watch your interface transform with every wallpaper change.

✦ Powered by PyWall


Hecate Settings GUI ⭐ NEW

Customization made visual

A powerful graphical interface to customize your Hyprland experience:

  • Keybind Editor — Visual keybinding configuration
  • Waybar Customizer — Switch layouts and styles with ease
  • Preferences Manager — Control theme modes and settings
  • Theme Selector — Browse and apply color schemes
  • Monitor Configuration — Arrange multi-monitor setups visually

Smart Installation

Interactive setup that asks for your preferences upfront

Less manual config file editing, more customization!


QuickShell Widgets ⭐ NEW

Beautiful desktop widgets at your fingertips

  • 🕐 Clock Widget — Elegant time display
  • 🚀 QuickApps — Launch favorite apps instantly
  • 💻 System Info — Real-time CPU, GPU, and RAM monitoring
  • 🎵 Audio Visualizer — Integrated Cava audio visualization

Multi-Shell Support

Your shell, your choice

Choose your preferred shell during installation:

Bash  •  Zsh  •  Fish

Multiple Terminals

Terminal freedom

Support for your favorite terminal emulator:

Alacritty  •  Kitty  •  Foot  •  Ghostty

Safe Backups

Peace of mind included

Automatically backs up your existing configurations before making any changes.



🎯 Supported Applications

Hecate provides beautiful, coordinated configurations for all your favorite tools


Category Applications
Compositors Hyprland
GUI Tools Hecate Helper (Keybinds • Waybar • Themes • Monitors)
Widgets QuickShell (Clock • QuickApps • System Info • Audio)
Terminals AlacrittyKittyFootGhostty
Shells BashZshFish
Bars Waybar
Notifications SwayNC
Launchers Rofi
Logout Wlogout
Wallpapers Waypaper
System Info Fastfetch


📦 Installation

🚀 Quick Start

Important

Hecate will detect your package manager automatically (pacman, yay, paru). If paru is installed on your system, the script selects paru to install packages.


Prerequisites

Ensure you have git and gum installed:

sudo pacman -S git gum

⚡ One-Line Install

curl -fsSL https://raw.githubusercontent.com/nurysso/Hecate/main/install.sh | bash

🔧 Manual Installation

# Clone the repository
git clone https://github.com/nurysso/Hecate.git
cd Hecate

# Make the installer executable
chmod +x install.sh

# Run the installer
./install.sh

Installation complete! 🎉

Continue reading to discover all the features...



🎨 Hecate Settings GUI

Powerful customization at your fingertips


Hecate Helper GUI



The Hecate Helper is a comprehensive GUI tool that puts customization at your fingertips


Keybind Editor

┌─────────────────────────────────────────────────────────┐
• Visual keybinding configuration interface
• Search and filter keybindings
• Live conflict detection(Yet to add | stay tuned)
└─────────────────────────────────────────────────────────┘

Waybar Customizer

┌─────────────────────────────────────────────────────────┐
• Layout Switcher — Toggle between Waybar layouts
• Style Gallery — Preview and apply pre-made themes
└─────────────────────────────────────────────────────────┘

Preferences Manager

┌─────────────────────────────────────────────────────────┐
• Toggle between **Dynamic** and **Static** theme modes
• Configure auto-start applications
• Set default terminal, browser and shell
• Manage Hecate preferences
└─────────────────────────────────────────────────────────┘

Theme Selector

┌─────────────────────────────────────────────────────────┐
• Browse through curated color schemes
• Quick apply with one click
└─────────────────────────────────────────────────────────┘

Monitor Configuration

┌─────────────────────────────────────────────────────────┐
• Visual Monitor Arrangement — Drag-and-drop monitor positioning
• Resolution and refresh rate selection
• Display scaling options
• Multi-monitor setup made easy
• Live configuration testing
└─────────────────────────────────────────────────────────┘

🚀 Launch Hecate Helper

# Run from anywhere
Hecate-Settings

# Or use the keybinding
SUPER + H


📱 QuickShell Widgets

Enhance your desktop with beautiful, functional widgets


QuickShell Widgets

Clock Widget

Elegant time and date display with multiple format options, customizable appearance, and smooth animations.


QuickApps Launcher

  • Pin your favorite applications with quick access grid layout.
  • config available at ~/.config/hecate/quickapps.conf

System Info Monitor

  • CPU Usage — Real-time processor monitoring with temperature
  • GPU Stats — Graphics card utilization and memory
  • RAM Usage — Memory consumption with available/total display

Audio Visualizer

  • Integrated Cava audio visualization synchronized with system audio, customizable colors matching your theme, and multiple visualization modes.
  • config available at ~/.config/cava/config_widget


⚙️ Configuration

Fine-tune Hecate to match your workflow


📝 Hecate Configuration File

Hecate stores your preferences in ~/.config/hecate/hecate.toml:

# Hecate Dotfiles Configuration
# This file manages your Hecate installation settings

[metadata]
version = "0.4.1 shy eagle"
install_date = "2025-10-15"
last_update = "2025-10-15"
repo_url = "https://github.com/nurysso/Hecate.git"

[theme]
# Theme mode: "dynamic" or "static"
# dynamic: Automatically updates system colors when wallpaper changes
# static: Keeps colors unchanged regardless of wallpaper
mode = "dynamic"

[preferences]
term = "kitty"
browser = "firefox"
shell = "fish"
profile = "minimal"

Theme Modes

Dynamic Mode

[theme]
mode = "dynamic"

Features:

  • Colors automatically extracted from wallpaper
  • Real-time updates across all applications
  • Seamless visual harmony
  • Powered by Matugen and PyWall

Static Mode

[theme]
mode = "static"

Features:

  • Fixed color scheme
  • Manual theme changes only
  • Predictable appearance

📂 Configuration Structure

All configuration files are located in ~/.config/:

~/.config/
├── hypr/              # Hyprland configuration
├── waybar/            # Status bar layouts and styles
├── rofi/              # Application launcher themes
├── swaync/            # Notification center
├── wlogout/           # Logout menu
├── quickshell/        # Widget configurations
├── alacritty/         # Terminal configs
├── kitty/             # Terminal configs
├── foot/              # Terminal configs
├── ghostty/           # Terminal configs
└── hecate/            # Hecate main config


🎨 Dynamic Theming in Action

Hecate uses PyWall to intelligently extract colors from your wallpaper


Colors are automatically applied to:


  • Waybar — Status bar colors and modules
  • Rofi — Application launcher themes
  • SwayNC — Notification styling
  • Wlogout — Logout menu appearance
  • QuickShell Widgets — Widget color schemes
  • Terminals — Alacritty, Kitty, Foot, Ghostty

Simply change your wallpaper with SUPER+CTRL+W

and watch your entire desktop environment transform!



🔨 Post-Installation

Get started with these essential steps


🖼️ Setup Wallpaper

Press SUPER+CTRL+W to open the wallpaper selector

See the magic happen!

🎨 Launch GUI Helper

Press SUPER+H or run Hecate-Settings

Access the configuration interface

📱 Enable Widgets

Press SUPER+W to toggle desktop widgets

Enhance your desktop experience


Note

Hyprland plugins have been removed from the system as they can break when Hyprland is updated.



Keybindings

Hecate automatically generates keybindings based on your preferred applications


Key Combination Action
SUPER + Return Open Terminal
SUPER + D Application Launcher (Rofi)
SUPER + H Hecate Settings Keybind GUI
SUPER + CTRL + W Wallpaper Selector
SUPER + SHIFT + N Toggle Notifications
SUPER + Q Close Window
SUPER + 1-9 Switch Workspace
SUPER + SHIFT + 1-9 Move Window to Workspace

Tip

Full keybinding list available in ~/.config/hypr/keybinds.conf or in the Hecate-Settings GUI



🤝 Contributing

Contributions are welcome! Here's how you can help:


╔═══════════════════════════════════════════════════════════════╗
║                                                               ║
║ Fork  →  Create Branch  →  Add feature  →  Push  →  PR        ║
║                                                               ║
╚═══════════════════════════════════════════════════════════════╝

Contribution Steps

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Add feature your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Areas for Contribution

Themes & Visuals

  • Create and share color schemes
  • Design new widget styles
  • Improve GUI aesthetics

Widget Development

  • Build new QuickShell widgets
  • Enhance existing widgets
  • Add widget customization options

GUI Enhancements

  • Improve Hecate Helper features
  • Add new configuration panels
  • Enhance user experience

Application Support

  • Add support for more terminals
  • Integrate new status bars
  • Expand launcher options

Documentation

  • Improve guides and tutorials
  • Create video walkthroughs
  • Translate documentation

Bug Fixes

  • Help squash bugs
  • Improve stability
  • Optimize performance

Check out our Contributing Guide for detailed information



🐛 Troubleshooting


Hecate Helper won't launch
# try running in terminal to see error
Hecate-Settings

Widgets not showing up
# Restart QuickShell
pkill quickshell
quickshell

Theme not applying to all applications
# Regenerate theme
wal -n -i path/to/wallpaper.png
#  Check ~/.config/waypaper/config.ini have this line
post_command = ~/.config/hecate/scripts/hecate-system-colors.sh
# If still not changed then try manual running
~/.config/hecate/scripts/hecate-system-colors.sh


License

This project is licensed under the GNU-gpl3 License

See the LICENSE file for details



Acknowledgments

Built on the shoulders of giants


Hyprland
Amazing Wayland compositor
PyWall
Color palette generation
QuickShell
Widget framework
Cava
Audio visualizer



🌙 Hecate

Transform Your Desktop


Stars Forks Issues Pull Requests



Made with ♥ by nurysso


Hecate — Greek goddess of magic, crossroads, and transformation



⭐ Star this repo if you like it!


About

Experience hyprland like never before

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published