AnyBar

OS X menubar status indicator

Stars
5.83K
Forks
169
Open issues
17
Closed issues
34
Last release
about 3 years ago
Last commit
almost 2 years ago
Watchers
5.83K
Total releases
9
Total commits
98
Open PRs
0
Closed PRs
33
Repo URL
Platform
Mac
License
epl-1.0
Category
Offers premium version?
NO
Proprietary?
NO
About

AnyBar: OS X menubar status indicator

AnyBar is a small indicator for your menubar that does one simple thing: it displays a colored dot. What the dot means and when to change it is up to you.

Download

Version 0.2.3:

Or using Homebrew Cask:

brew install --cask anybar
Support us

Usage

AnyBar is controlled via a UDP port (1738 by default). Before any commands can be sent, AnyBar.app must be launched:

open -a AnyBar

Once launched, you may send it a message to change the style of the dot:

echo -n "black" | nc -4u -w0 localhost 1738

If you use bash, you might prefer this instead:

bash -c 'echo -n "black" > /dev/udp/localhost/1738'

The following default commands change the style of the dot:

Command Preview

white

red

orange

yellow

green

cyan

blue

purple

black

question

exclamation

filled

hollow

black and white always has black or white fill. On Big Sur, where text color of menubar might change depending on the wallpaper, you might want to use filled and hollow instead. They are inverted when menubar changes its appearance.

To quit, send quit.

Alternative clients

Bash alias:

$ function anybar { echo -n $1 | nc -4u -w0 localhost ${2:-1738}; }

$ anybar red $ anybar green 1739

Or with /dev/udp:

function anybar { echo -n $1 > /dev/udp/localhost/${2:-1738}; }

Zsh with completion:

Fish shell with completion:

Go:

Node:

Deno:

PHP:

Java:

Python:

Ruby:

Rust:

Nim:

Erlang:

C:

C#:

Crystal:

Emacs:

AppleScript:

tell application "AnyBar" to set image name to "blue"

tell application "AnyBar" to set current to get image name as Unicode text display notification current

Alfred:

Integrations

Running multiple instances

You can run several instances of AnyBar as long as they listen on different ports. Use the ANYBAR_PORT environment variable to change the port and open -na to run several instances:

ANYBAR_PORT=1738 open -na AnyBar
ANYBAR_PORT=1739 open -na AnyBar
ANYBAR_PORT=1740 open -na AnyBar
Environment variables to specify a title and the initial color of the dot

A title can be set to distinguish dots in the menubar:

ANYBAR_PORT=1738 ANYBAR_TITLE=First  open -na AnyBar
ANYBAR_PORT=1739 ANYBAR_TITLE=Second open -na AnyBar
ANYBAR_PORT=1740 ANYBAR_TITLE=Third  open -na AnyBar

And the initial color of the dot can also be set:

ANYBAR_INIT=blue open -na AnyBar
Custom images

AnyBar can detect and use local custom images stored in the ~/.AnyBar directory. For example, if you have a ~/.AnyBar/square@2x.png image, send square to port 1738 and it will be displayed. Images should be 19×19 pixels for standard resolution, and 38x38 pixels for retina (@2x).

Ports

License

Copyright © 2015 Nikita Prokopov

Licensed under Eclipse Public License (see LICENSE).

Alternative Projects

Subscribe to Open Source Businees Newsletter

Twice a month we will interview people behind open source businesses. We will talk about how they are building a business on top of open source projects.

We'll never share your email with anyone else.