app/notes/20170427-1312.md
Projects: Gentle-Alerts
gentle-alerts
1493298776
[Gentle-Alerts](https://chrome.google.com/webstore/detail/gentle-alerts/bcjaadnpjolbaginfighnpcdjmbeiahn)
is a chrome extension that I built to fix the problem of noisy popup alerts in Chrome. Using Google Calendar
a lot, I used to get a popup alert before every event that I was invited to. Fiddling with its built-in
"browser notifications", I wasn't very satisfied because of its pop-over UX. I therefore decided to
create Gentle-Alerts to solve this problem for Calendar and all other websites.
Gentle-Alerts works by overriding the `window.alert` built-in function with a custom function
that shows a browser modal. In building Gentle-Alerts, I had some fun with some different frontend
programming rules. Rather than the usual problem of writing javascript code that has to be compatible
with different browsers with a known environment, writing the javascript for Gentle-Alerts required
me to write javascript code compatible specifically for Chrome but running against the javascript
environment of any website. I therefore kept the code pretty simple and used only vanilla javascript
without any third-party dependencies.
- Code: [Github](https://github.com/albertyw/gentle-alerts)
- Extension: [Chrome Web Store](https://chrome.google.com/webstore/detail/gentle-alerts/bcjaadnpjolbaginfighnpcdjmbeiahn)
- Library: [NPM](https://www.npmjs.com/package/gentle-alerts)
Thanks to [Chris Lewis](http://chrislewis.com.au/), [David Hamme](https://github.com/hammeiam),
[Song Feng](https://github.com/songfenguber), and [Scott Kennedy](https://github.com/sdkennedy)
for testing the extension.