DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’»

Krzysztof Platis
Krzysztof Platis

Posted on

Get a sound notification when your long-lasting script completes πŸ””

Never again miss the moment when your long-lasting script in the background completes, thanks to sound notifications! While the script is running, you can safely switch to an other task πŸ§‘β€πŸ’» or take a break β˜•οΈ, being sure you won’t forget to check script’s results at the right time.

Speach-synthesized message

$ npm build && say β€žBuild succeeded!” || say β€žBuild failed!”
Enter fullscreen mode Exit fullscreen mode

On MacOS you can use the command β€˜say’ for the speach synthesis via the CLI. With the help of operators && and || you can set a different message for a build success and failure.

Note: there seem to exist equivalent commands to β€˜say’ on other operating systems: ptts on Windows and espeak on Linux (which may differ a bit in syntax), however I didn’t try them.

Feel less frustrated

In the past I used to either stare a few minutes at the terminal waiting for the script to complete (which drained my energy and focus capabilities) or switch to an other task, eventually forgetting about the running script in the background. It was the most frustrating, was when I figured out the build failed. And it failed very early, just after I switched to an other task.

Be more productive

Sound notifications really helped me to be more productive while fixing bugs which required from me re-building an app many times a day. Especially when it was a long-lasting production build of a big Angular SSR application.

PS. For fun, you can customize the messages 😁, e.g.:

$ npm build && say β€žThis is Sparta!” || say β€žBuild failed. Get back, you lazybones!”
Enter fullscreen mode Exit fullscreen mode

Top comments (4)

Collapse
 
balastrong profile image
Leonardo Montini

We used this in the past for a long script setting up the dev environment.
At the end it said something like "Thanks for setting everything up, don't forget to install Firefox and come on AS Rome!".

The Firefox and AS Rome (the football club) was an inside joke between the devs.

Fun fact: after a few days we've been told by the marketing department that someone used that script during a demo and all the clients heard that and did weird faces.

Pro tip: use it with caution! πŸ˜†

Collapse
 
krisplatis profile image
Krzysztof Platis

🀣

Collapse
 
hilleer profile image
Daniel Hillmann

Thanks for sharing this! I had no idea. Bet it will be helpful running npm install in our big mono-repos πŸ™ƒ

Collapse
 
krisplatis profile image
Krzysztof Platis

I'm more than happy if it helps you! πŸ₯³

Let's Get Wacky


Use any Linode offering to create something unique or silly in the DEV x Linode Hackathon 2022 and win the Wacky Wildcard category

β†’ Join the Hackathon <-