bea4dev/shoji-bar-4
Productivity & UtilitiesA Material 3 Expressive desktop shell for ShojiWM with bar, dock, quick settings, notifications and lock screen.
Overview
shoji-bar-4 is a desktop shell for the ShojiWM Wayland compositor, written in Rust on AntiWebUI. It provides the desktop components a user expects around a window manager: a top bar with launcher, workspaces, active window, rolling clock, now-playing, tray and status icons; an auto-hiding dock; quick settings, calendar, launcher, clipboard history, media player, notifications, on-screen display and lock screen. Dynamic color can be derived from a seed or the wallpaper and applied to the shell, including window frames, with a spring animation. The shell draws nothing while idle, which it reports as 0% CPU when nothing moves.
It is aimed at ShojiWM users who want a complete Material 3 Expressive shell rather than assembling separate panel and widget programs, and at Rust developers interested in building UI on AntiWebUI.
Quick start
You need ShojiWM, a Rust toolchain, and the usual desktop services: NetworkManager, BlueZ, PipeWire, UPower, power-profiles-daemon and logind. Clipboard history additionally requires cliphist and wl-clipboard; zenity is used for picking a user picture.
Clone the repository into the location ShojiWM's default config expects, then build:
git clone https://github.com/bea4dev/shoji-bar-4 ~/.config/shoji-bar-4
cd ~/.config/shoji-bar-4
cargo build --release
The default ShojiWM configuration starts ~/.config/shoji-bar-4/target/release/shoji-bar-4 with the session, binds keys such as Super for the launcher, Super+N for quick settings, Super+C for the calendar, Super+V for clipboard, and Super+L for the lock screen, and draws window frames in the shell's colors. If you use another configuration, follow Using it with ShojiWM.
More detail is in the feature documentation and the usage and settings guide.
Constraints
- The shell requires ShojiWM; it is not a standalone desktop environment for other Wayland compositors.
- The build requires a Rust toolchain, and the first build compiles the shell and its AntiWebUI dependency locally.
- Networking, Bluetooth, audio, power and session integration depend on NetworkManager, BlueZ, PipeWire, UPower, power-profiles-daemon and logind being present.
- Clipboard history depends on external packages
cliphistandwl-clipboard. - Building against a locally modified AntiWebUI, offscreen previews and CPU measurement are covered in the development notes.
- The project is MIT licensed.
HotRepo's take
The repository appears in the Rust new-project list on 2026-11-10 with 100 stars and 4 forks gained over a growth window from 06:58 to 22:45 UTC; no best position is recorded on the all-language daily list. This is a very new project, so the data so far says little about sustained adoption. What stands out technically is the explicit design constraint of not drawing frames while idle and the spring-driven colour transitions; the source layout and build instructions are concrete enough to evaluate the shell's fit with an existing ShojiWM setup.
Written by AI from the project's README, updated . The project's own docs are the source of truth.
You might also like
- Alexays/WaybarWayland status bar for wlroots compositors, built with C++ and GTK.
- anomalyco/hokumA single Wayland control center for notifications, PipeWire sound and Bluetooth, drawn with Rune.
- Open-Shell/Open-Shell-MenuBrings a classic-style Start menu, Explorer toolbar, and status bar back to Windows 7 through 11.