Introduction
Veila is a secure, elegant, low-latency, Wayland-first screen locker written in Rust.
It is built for wlroots-style compositors - Hyprland, Sway, Niri, Labwc, MangoWC, and others - around one guiding rule: the secure lock path must stay small, predictable, and fast.
Veila is designed to feel modern and polished without turning the lockscreen into a heavy UI stack. The visual side aims for an intentional, refined look, but the implementation stays minimal enough that styling and effects do not define the performance profile of the secure lock path.
Veila is not a fullscreen window pretending to be a lockscreen. It is a compositor-aware application that uses the Wayland session-lock protocol and a dedicated daemon to manage lock, authentication, and unlock state.
Features
Secure by Design
Built around the secure Wayland lock path, not a fake fullscreen window. Authentication comes first, theming and visual polish layer on top.
Locks Instantly
Locks immediately. Visual effects and widgets are preloaded so nothing causes hiccups the moment your session locks.
Multi-Monitor Aware
Every monitor is treated as a first-class citizen. No stretched bitmaps, no visual inconsistencies even across different resolutions.
No heavy UI toolkit
Modern look, no bloated UI stack behind it. Just a clean and lightweight lockscreen.
Visual Customization
Keep it simple or make it your own. Wallpapers, blur, colors, widgets and layout options are all there when you want them.
Theme Presets and Custom Themes
Veila comes with ready-made themes, but you can create your own if you want more control. You can switch themes easily and still change small details in your main config.
Hot Reload
Tweak your config or theme and reload without restarting daemon.
Screenshot
Render preview screenshots, test themes without locking your session. Useful for development.
Compositor Support
Hyprland, Sway, Niri, Labwc, MangoWC, and others. Compositors like GNOME, KDE, and other desktop environment compositors are out of scope.