Logo

Sparkles A hackable shell for Hyprland Powered by Fabric Sparkles

[![GitHub stars](https://img.shields.io/github/stars/S4NKALP/Modus?style=for-the-badge&logo=github&color=FFB686&logoColor=D9E0EE&labelColor=292324)](https://github.com/S4NKALP/Modus/stargazers) [![Hyprland](https://img.shields.io/badge/Made%20for-Hyprland-pink?style=for-the-badge&logo=linux&logoColor=D9E0EE&labelColor=292324&color=C6A0F6)](https://hyprland.org/) [![Maintained](https://img.shields.io/badge/Maintained-Yes-blue?style=for-the-badge&logo=linux&logoColor=D9E0EE&labelColor=292324&color=3362E1)]() [![Discord](https://dcbadge.limes.pink/api/server/https://discord.gg/tRFxkbQ3Zq)](https://discord.gg/tRFxkbQ3Zq)

Home Screen:

fabric

Lock Screen:

fabric

## Installation > [!CAUTION] > > - You need a working installation of hyprland and knowledge of how it works > - There may not be all packages in your system install them accordingly ```bash git clone https://github.com/S4NKALP/Modus ~/.config/Modus cd ~/.config/Modus ./install.sh ``` > [!TIP] > > ## Post Installation > > - Install recommended [Icon theme](https://github.com/vinceliuice/MacTahoe-icon-theme) , [GTK theme](https://github.com/vinceliuice/MacTahoe-gtk-theme) and [Cursor Theme](https://github.com/vinceliuice/MacTahoe-icon-theme/tree/main/cursors)
> - Check `config/hypr/modus.conf` edit it according to your device and copy it to your hyprland config > - For Lock Screen Bind keys to `uv run lock`

Rocket Todo

## Configuration Config files are in `config/` directory, using TOML format: | File | Purpose | | ---------------------- | ---------------------- | | `config/config.toml` | Main app configuration | | `config/mods.toml` | Custom mod definitions | | `config/launcher.toml` | Launcher settings | | `config/dock.toml` | Dock pinned apps | ## Custom Mods Define panel buttons that run commands or show dropdowns in `config/mods.toml`: ```toml [Mods.terminal] icon = "terminal.svg" icon-size = 16 order = 1 on-clicked = "kitty" [Mods.color-picker] icon = "misc/color-picker.svg" icon-size = 22 order = 0 on-left = "hyprpicker -a -n -f hex && sleep 0.1 && ..." on-middle = "hyprpicker -a -n -f rgb && sleep 0.1 && ..." on-right = "hyprpicker -n -f hsv | wl-copy -n && sleep 0.1 && ..." ``` - `icon` — SVG filename in `src/assets/icons/` - `icon-size` — defaults to 16 - `order` — button position (lower = first) - `on-clicked` — shell command on any click - `on-left`, `on-middle`, `on-right` — per-mouse-button commands (optional) - `options` — dropdown menu entries (optional, each with `label` + `on-clicked`) - Supports `&&`, `|`, and full shell syntax (runs via `sh -c`) - File monitoring enables live reload — edit `mods.toml` and changes apply instantly ## Manual Installation ```bash paru -S fabric-cli-git gtk-session-lock uv apple-fonts cinnamon-desktop hyprshot hypridle hyprpicker grim slurp gnome-bluetooth-3.0 cliphist matugen-bin awww swappy wl-clipboard webp-pixbuf-loader acpi wf-recorder brightnessctl power-profile-daemon uwsm libnotify playerctl ffmpeg --needed git clone https://github.com/S4NKALP/Modus ~/.config/Modus cd ~/.config/Modus uv sync uv run start ``` - [x] Launcher - [x] Lock Screen - [x] Dock - [x] Notification - [x] Control Center - [x] Music Player - [x] Desktop Widgets - [x] New Launcher (like Spotlight) - [x] Settings - [x] ~~Magnifier hover effect on Dock~~ - [x] ~~New Application Switcher~~ - [x] Panel Widget - [x] MacOS like Widget - [x] Expandable Notification Centre - [x] Installation Script - [x] Migrate to a `uv` managed Python virtual environment - [ ] Proper Documentation - [ ] Pomodoro Timer Widget - [x] To-do List Widget ## Bug Fixes (the bug found till now) - [x] WiFi - [x] wifi off button looks bigger - [x] Metadata Changes delay in Media Player - [x] Active Window Title showing `Unknown` when no active window - [x] Notification Escape Char Issue ## Team - [SANKALP](https://github.com/S4NKALP/) - [tr1x_em](https://github.com/tr1xem) ## Special Thanks A big thank you to the following people for their incredible help with code and creative ideas. Your help made a real difference! - [darsh](https://github.com/its-darsh): for creating Fabric, which made everything possible. - [gummy bear album](https://github.com/muhchaudhary): for sharing fantastic code snippets that saved me time and effort. - [axenide](https://github.com/Axenide): for the amazing config that not only inspired parts of mine but also provided some gems I couldn’t resist borrowing. - [E3nviction](https://github.com/E3nviction/): for code snippets and ideas that were incredibly helpful. I truly appreciate your support