Hello there! This is another edition of Building Lotus and this email is here to tell you about Screener - a feature I borrowed from HEY.

What is Screener?

If you haven't used HEY yet, the "Screener" is like a front door for your email inbox. If you get an email from someone new, Screener will catch it and ask whether you want to have it in your inbox or not. There's an entire page dedicated to describing Screener at hey.com/features/the-screener, but I hope that TLDR was good enough to quickly understand the idea.

Screener in Lotus

I thought it was a very smart feature and it would certainly be great to have in Lotus, because I think the same logic can be applied to GitHub notifications as well.

There's nothing stopping anyone with a GitHub account to keep @mentioning you in any thread inside any repository. For maintainers with a large following, this behavior can spam the hell out of their inbox. Making things worse, unsubscribing from a thread on GitHub doesn't actually unsubscribe you forever. As soon as you're @mentioned again, you'll be re-subscribed without your approval. There are only two ways out of this:

  1. Ignoring all notifications from that repository
  2. Blocking people

Both of these aren't really the best solutions, because sometimes you're just not interested in that particular thread, but don't want to mute repositories and people for no reason.

This is why Screener is going to be useful in Lotus. When you start the app, it's going to check if there are notifications from threads you haven't seen before. If there are, a message with a cute and animated (of course) bell icon will be shown:

It notifies you that there are 5 new threads in the Screener, waiting to be reviewed before they land in your inbox. It's going to sit in the top right corner of your inbox and it's not going to distract you. No macOS notifications, no icon badges, no sounds. Inbox is yours and Screener is there to protect it.

It's worth noting that unlike HEY, Screener in Lotus doesn't apply to notifications from:

I also took a slightly different visual approach on the Screener page to make it simpler and less crowded. In Lotus only one notification is visible at a time, which you can add to inbox or ignore it forever. There's also a large preview of the thread on GitHub with everything stripped out, leaving only the important part - the conversation.

I think having just one notification combined with simple "Yes" or "No" call-to-action buttons lets users go through the Screener queue quickly without dreading the long list of incoming notifications to deal with.

I believe Screener in Lotus is going to have a big impact on maintainers. It will make sure their inbox stays filled with threads they care about and can focus on.

Screener isn't implemented yet though, what you saw in this email is a prototype of the UI for it. However, I'm glad to say that I took two weeks off work, so I should move forward much faster than I was before.

I will also probably rename it to something else, since HEY already names it that way. I thought I'd leave it as "Screener" while I'm bulding Lotus to avoid one of two hardest problems in programming - naming things. I lost an unreasonable amount of time thinking about a perfect name in the past and I'm not going to let it stop me now!

Thank you for reading and see you next weekend!


P.S. Replies to this email should now be working, so if you have any feedback, questions or just want to chat - just hit "reply" or reach out on Twitter. Thanks Jason (the creator of Buttondown) for fixing it!

I'm building Lotus in the open and I'm sending out progress updates just like this one every Sunday.

I won't send spam and you can unsubscribe anytime.