I had nothing better to do with some spare time. I used my desktop as my alarm for a while, but there really were not any good (native UI) alarms for Linux. I had grown to hate onlineclock.net which I had used as my alarm. It breaks if you lose your internet connection. It requires flash. It's ugly. I often misset it or had my volume down. It angered me. So I made this.
One thing that isn't obvious is that I'm logging the times I'm going to sleep and when I get up. I honestly have no idea how much sleep I'm getting per week. With this I'll be able to easily track it.
My main regret is that this took ~30hrs of work.
Right now there is no reason to (though our alarms are being logged). But later (if I ever get around to it) it will save your settings and let you schedule alarms.
Only modern browsers are supported. Originally I was only going to support current Chrome and FF4+, but I decided to support FF3.6+. Safari probably works? IE doesn't. I don't know about Opera. Really everything works best in Chrome. Even FF is a little janky.
Some websites (like NPR) do not support listening to their content in iframes and so I have to open the site in a new window. If your browser blocks the popups the content will not work. Nevertheless we detect that case and play a default alarm.
The non-HTML5 sound alarms use content on other websites and calls their JS. As such if you block their javascript the alarm will not work. (Note that the applications checks to see if you have an active intenret connection before using them and degrades properly). As a precaution all remote alarms trigger a file-based alarm after a period of time.