Very cool idea! Thanks for sharing these details Here are a few personal thoughts:
I can’t wait for notifications to work! I believe that they will be really helpful to me (e.g. because I manage all the Janitor projects for now, I’d love to know when an image rebuild has succeeded or failed).
Also, being notified about a code review will be really awesome when we implement sending commits to code review from Cloud9 (I believe we would be the first service to notify users about a code review!)
Since not everyone likes to receive notifications, I think we should have this feature off by default (but anyone could activate it, e.g. from a Settings URL like https://janitor.technology/settings/preferences/ or https://janitor.technology/settings/notifications/ where we could also add options for email notifications etc.)
Managing the “read” state of notifications is pretty hard, e.g. what happens when I read a notification that was pushed to me? Will there still be a red “1” next to the notifications tab, “forcing” me to go read this notification again in the tab? (Personally I think we should either push notifications, or set a red icon, but not both). Also, what happens if we also notify a user via email? The good news is that services like GitHub, Twitter, Facebook etc have already put a lot of effort into getting this right, and we can probably just imitate them.
I’m not sure how valuable it is to Delete or Dismiss notifications, so if it’s complex to implement I suggest we see about this later (e.g. on Twitter, I think you can’t delete notifications, but that’s ok because you clearly see which notifications are new, and then you have an “infinitely scrolling” list with all previous notifications in case you need to find them again). Also I guess a filter search will be hard to get right, so maybe we can also see about this later (and if we do show all the notifications for now, they’ll be pretty easy to find already by simply scrolling or using the browser’s Cmd+F feature).
Nit: In the top bar, we try to keep items ordered alphabetically (and also almost everywhere else in the project and its code). Please move “Notifications” left of “Settings”.
Thanks again for working on this really cool feature! I believe it’s going to help a lot of people.