DEV Community

Krzysztof Platis
Krzysztof Platis

Posted on • Updated 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.

Speech-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 speech 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

Oldest comments (4)

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! 🥳

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

🤣