markdown · 1572 bytes Raw Blame History

ers

Window border renderer for macOS. Draws colored overlay borders around application windows using private SkyLight framework APIs.

Built as a companion to tarmac, but runs standalone.

Usage

ers [OPTIONS] [WINDOW_ID]

OPTIONS:
  -w, --width <PX>       Border width in pixels (default: 4.0)
  -r, --radius <PX>      Corner radius (default: 10.0)
  -c, --color <HEX>      Active border color (default: #5294e2)
  -i, --inactive <HEX>   Inactive border color (default: #59595980)
      --active-only      Only show border on focused window
      --list             List on-screen windows and exit
  -h, --help             Show this help

Run with no arguments to border all windows. Ctrl-C to stop (overlays are cleaned up).

Debug logging: RUST_LOG=debug ers

With tarmac

tarmac manages ers as a child process. Set border_width > 0 in your ~/.config/tarmac/init.lua:

gar.set("border_width", "4")
gar.set("border_color_focused", "#5294e2")
gar.set("border_color_unfocused", "#59595980")
gar.set("border_radius", "10")

tarmac spawns ers automatically with --active-only. Config reloads restart ers.

Install

cargo install --path .

Requirements

  • macOS (Apple Silicon or Intel)
  • Accessibility permissions (System Settings → Privacy & Security → Accessibility)

Limitations

  • Uses private macOS APIs (SkyLight/CGS). These are undocumented and may break across macOS versions.
  • Tested on macOS Tahoe. Should work on Monterey and later but no guarantees.

License

MIT

View source
1 # ers
2
3 Window border renderer for macOS. Draws colored overlay borders around application windows using private SkyLight framework APIs.
4
5 Built as a companion to [tarmac](https://github.com/gardesk/tarmac), but runs standalone.
6
7 ## Usage
8
9 ```
10 ers [OPTIONS] [WINDOW_ID]
11
12 OPTIONS:
13 -w, --width <PX> Border width in pixels (default: 4.0)
14 -r, --radius <PX> Corner radius (default: 10.0)
15 -c, --color <HEX> Active border color (default: #5294e2)
16 -i, --inactive <HEX> Inactive border color (default: #59595980)
17 --active-only Only show border on focused window
18 --list List on-screen windows and exit
19 -h, --help Show this help
20 ```
21
22 Run with no arguments to border all windows. Ctrl-C to stop (overlays are cleaned up).
23
24 Debug logging: `RUST_LOG=debug ers`
25
26 ## With tarmac
27
28 tarmac manages ers as a child process. Set `border_width > 0` in your `~/.config/tarmac/init.lua`:
29
30 ```lua
31 gar.set("border_width", "4")
32 gar.set("border_color_focused", "#5294e2")
33 gar.set("border_color_unfocused", "#59595980")
34 gar.set("border_radius", "10")
35 ```
36
37 tarmac spawns ers automatically with `--active-only`. Config reloads restart ers.
38
39 ## Install
40
41 ```
42 cargo install --path .
43 ```
44
45 ## Requirements
46
47 - macOS (Apple Silicon or Intel)
48 - Accessibility permissions (System Settings → Privacy & Security → Accessibility)
49
50 ## Limitations
51
52 - Uses private macOS APIs (SkyLight/CGS). These are undocumented and may break across macOS versions.
53 - Tested on macOS Tahoe. Should work on Monterey and later but no guarantees.
54
55 ## License
56
57 MIT