Hi everyone!
After being silent for quite some time considering SteemWatch, the notification center for Steem, I am coming back with some relatively fresh blood and ideas :-) I have a regular job right now, but I am occasionally thinking about where to take SteemWatch next. And it occurred to me that it would make sense to consult you, the community!

Ideas
Let's begin with some practical things. But no worries, we will get to the cool stuff as well.
The Invisible: Scalability, Robustness and Flexibility
SteemWatch is a single Go executable right now, although not entirely monolithic. I would like to split the executable into multiple components (executables) so that there is always just a single component taking care of particular concern. For example, there could be a receiver processing incoming blocks, turning them into events and putting these into Kafka, NATS Steaming or whatever. Then any other component could easily plug into the block/event stream later on.
I am also pretty sure that some of you experienced https://steemwatch.com being down just because the block processor component had some issues. Splitting the functionality into multiple executables would also prevent this from happening, although I am probably at fault here since it is definitely possible to make things better even without splitting SW into multiple executables.
Decoupling Event Matching from Notification Dispatching
Right now there is a single page where you specify the events you are interested in. When any matching event occurs, it is passed to all notifiers configured for your account (e.g. Slack, Steemit Chat and what not). This is rather simple and clear, but not particularly flexible.
I think that it would be nice to be able to create a filter, or event matcher, that could match any number of events, and then assign these matchers to particular notifiers. This would make it possible to e.g. send money transactions-related events via SMS (not that SteemWatch supports that right now) while keeping articles-related events in your email (not that SteemWatch supports that right now either).
It would be obviously possible to assign one particular matcher to multiple notifiers.
Stats & Analytics
When dispatching events, SteemWatch could wrap content links so that a SteemWatch endpoint is visited when the link is clicked. This would make it possible to collect anonymous data regarding the number of people clicking an article via SteemWatch.
The seconds part would be an interface to browse the statistics for your articles or basically any article/content on Steem.
Post Promotion
Let's say you want to promote an article. What about telling SteemWatch to just send it to people using the available notifiers? Well, that could be annoying for the people listening on the other end. Not everybody wants to be spammed.
But wait, there could be some advantage to it. Let's say you could enable or disable receiving post promotions for your account and you would receive free credit for sending post promotions via SteemWatch yourself when enabled. What do you say now?
There is a lot to think about, this is just an idea. The promoted posts could be only sent to people that would seem to be interested and the probability would be high that they would actually click the link.
Your Ideas
Now it is your time. Feel free to use comments!
Disclaimer
This post is not a promise of anything, we are just brainstorming here!