# Table of Contents * [About](#org4ab08b6) * [Configuration](#org581ca61) * [Example Config](#orgb769597) * [Building](#orgbf66ce2) * [Prerequisites](#org727b3da) * [Installation](#orgdd31739) * [Usage](#org4a9b3c6) # About Elkowar’s Wacky Widgets is a standalone Widget System made in rust to add AwesomeWM like widgets to any WM # Configuration Eww’s configuration should be placed in `~/.config/eww/eww.conf` and any `scss` styles you want to add should be put into `~/.config/eww/eww.scss`. ## Example Config widgets: { some_widget: { structure: { layout: { class: "container", children: [ { layout: { orientation: "v" children: [ { button: "brah" } ] } } { layout: { children: [ "$$date" { button: "Some button" } { slider: { value: "$$some_value", min: 0, max: 100, onchange: "notify-send 'changed' {}" } } { slider: { value: "$$some_value", orientation: "h" } } "hu" ] } } ] } } }, test: { structure: { some_widget: { some_value: "$$ooph" } } }, bar: { structure: { layout: { children: [ { layout: { halign: left, children: "text" } } { layout: { halign: center, hexpand: false, children: "$$date" }} { layout: { halign: end, hexpand: false, children: [ "$$date" { slider: { value: "$$some_value", min: 0, max: 100, onchange: "notify-send 'changed' {}" } } "$$date" ] } } { label: { text: { run: "date", interval: 1s } } } ] } } }, } default_vars: { foo: 12 date: "neverrrr" }, windows: { main_window: { pos.x: 0 pos.y: 1080 size.x: 2560 size.y: 29 widget: { bar: { some_value: "$$foo" } } } } # Building ## Prerequisites - rustc - cargo Get them at ## Installation Build the Binary using -: $ git clone https://github.com/Elkowar/eww.git $ cd eww $ cargo build --release then copy the built binary from `./target/release` to anywhere in `$PATH` (example - `~/.local/bin`) # Usage Create a Config and then just do `eww`!