• Stars
    star
    4,548
  • Rank 9,359 (Top 0.2 %)
  • Language
    Go
  • License
    MIT License
  • Created over 9 years ago
  • Updated 10 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Monitor a process and trigger a notification.

noti

Testing

Monitor a process and trigger a notification.

Never sit and wait for some long-running process to finish. Noti can alert you when it's done. You can receive messages on your computer or phone.

macOS Banner Notification

Services

Noti can send notifications on a number of services.

Service macOS Linux Windows
Banner ✔ ✔ ✔
Speech ✔ ✔ ✔
BearyChat ✔ ✔ ✔
Keybase ✔ ✔ ✔
Mattermost ✔ ✔ ✔
Pushbullet ✔ ✔ ✔
Pushover ✔ ✔ ✔
Pushsafer ✔ ✔ ✔
Simplepush ✔ ✔ ✔
Slack ✔ ✔ ✔
Telegram ✔ ✔ ✔
Zulip ✔ ✔ ✔
Twilio ✔ ✔ ✔
GChat ✔ ✔ ✔
Chanify ✔ ✔ ✔

Check the screenshots directory to see what the notifications look like on different platforms.

Installation

Install the Go binary with these commands.

# macOS install with Brew
brew install noti

# macOS install with curl
curl -L $(curl -s https://api.github.com/repos/variadico/noti/releases/latest | awk '/browser_download_url/ { print $2 }' | grep 'darwin-amd64' | sed 's/"//g') | tar -xz

# Linux install with curl
curl -L $(curl -s https://api.github.com/repos/variadico/noti/releases/latest | awk '/browser_download_url/ { print $2 }' | grep 'linux-amd64' | sed 's/"//g') | tar -xz

Or download it with your browser from the latest release page.

From source

If you want to build from the source, then build like this.

# build binary
make build
# build binary and move to Go bin dir
make install

Examples

Just put noti at the beginning or end of your regular commands. For more details, check the docs.

Display a notification when tar finishes compressing files.

noti tar -cjf music.tar.bz2 Music/

Add noti after a command, in case you forgot at the beginning.

clang foo.c -Wall -lm -L/usr/X11R6/lib -lX11 -o bizz; noti

If you already started a command but forgot to use noti, then you can do this to get notified when that process' PID disappears.

noti --pwatch 1234

You can also press ctrl+z after you started a process. This will temporarily suspend the process, but you can resume it with noti.

$ dd if=/dev/zero of=foo bs=1M count=2000
^Z
zsh: suspended  dd if=/dev/zero of=foo bs=1M count=2000
$ fg; noti
[1]  + continued  dd if=/dev/zero of=foo bs=1M count=2000
2000+0 records in
2000+0 records out
2097152000 bytes (2.1 GB, 2.0 GiB) copied, 12 s, 175 MB/s

Additionally, noti can send a message piped from stdin with -.

$ make test 2>&1 | tail --lines 5 | noti -t "Test Results" -m -

More Repositories