Show HN: Artemis, a Calm Web Reader
275 points
1 day ago
| 16 comments
| artemis.jamesg.blog
| HN
Earlier this year, I made a web reader that only showed a list of post titles, author domains, and links. The reader only updated once per day, so I wouldn't feel compelled to keep checking for new posts.

I have been using the tool, which I called Artemis, for several months. Every morning, I looked forward to my "morning paper" of blogs I love reading.

There are no notifications, read vs. unread states, counts of posts, etc. Only the last seven days of posts are available. The colour scheme is changeable. Dark mode is supported. All popular feed formats are supported.

There is no reading interface to read blog posts; rather, the links take you to the authors' websites. Many of my favourite bloggers put a lot of effort into the design of their blogs and like to change things up; I wanted an experience that embraced that.

The reader is now available for anyone to use (with invite code "hn").

digest
2 hours ago
[-]
For those looking for something like this but that updates on your own schedule and handles more than just RSS, I built Digest - https://usedigest.com
reply
aurea
1 day ago
[-]
I have been thinking of creating a similar app; however I wanted to do a "Sunday paper". This look nice and I like the minimalist design, but I would prefer to have solution that I can self-host.
reply
exprez135
22 hours ago
[-]
The tool actually is open source, so you could self-host it if you wish. MIT license, in Python. The repository [1] is linked in the blog post the author wrote about the project [2].

[1]: https://github.com/capjamesg/web-reader

[2]: https://jamesg.blog/2024/11/30/designing-a-calm-web-reader/

reply
zerojames
21 hours ago
[-]
The open source version is a bit different from the hosted one: the open source code involves running the polling script, then building a static site (which is how I run the site for several months as a single-user project).

I am planning to move the polling changes upstream soon and then figure out a plan for open sourcing the full project.

reply
stanislavb
10 hours ago
[-]
I've been thinking of it, too. And, I've created one a few years ago. It's been running 100% uptime and for free since then - lenns.io. I'd be happy if you give it a go and let me know what you think.
reply
dewey
22 hours ago
[-]
This would be interesting as a project using the Miniflux API (https://github.com/miniflux/v2). That way it would already use my existing feeds and I don't have a separate "reading tool".
reply
stanislavb
10 hours ago
[-]
I created something similar a few years ago. It's been running fine for me and several other people. Its free, too. It's calm too, although it updates as often as 1-5 minutes.

I'd be happy if someone gives it a go and shares some feedback. I'd say it's quite similar to Artemis; however - you can set different priorities to the sources and the relevant topics.

Cheers - lenns.io

reply
szszrk
9 hours ago
[-]
It would benefit from a screenshot of the actual UI. On mobile there is little that would make me want to register.

You know how we are with creating accounts just to have a glance...

The description looks solid to me, though.

reply
stanislavb
5 hours ago
[-]
Fair enough. I’ll setup a demo account, too.
reply
szszrk
5 hours ago
[-]
That would be perfect.

A newspaper-like projects always gather interest of tinkerers. People love to do things like that for eink devices, export that to pdf to be displayed offline and so on

This could be a nice way to provide clean content, prefiltered.

reply
kayvulpe
5 hours ago
[-]
reply
kenrick95
1 day ago
[-]
I tried to import the OPML file exported by https://wordpress.com/read/subscriptions but it says "Failed to parse OPML."

Edit: just managed to find the support email. I'll send you the OPML file through it~

reply
zerojames
23 hours ago
[-]
Apologies for the inconvenience. A fix has been deployed.
reply
conroydave
23 hours ago
[-]
this is why HN is the best
reply
kenrick95
14 hours ago
[-]
Thanks a lot for the prompt support!
reply
zerojames
1 day ago
[-]
Thank you for the email. The OPML import is a bit of a newer feature so it hasn't had as much testing. I'll take a look to see what's going on and get back to you.
reply
xnx
1 day ago
[-]
I love the idea of a simple, digest-style, mode. Might make some version of this for Instagram. There's nothing so important on Instagram that it can't wait for the next day.
reply
venusenvy47
1 day ago
[-]
Can you recommend a tool that could check an Instagram feed once a day for the current photos? I found a command line tool, but it tries to download the whole account, rather than just the daily updates.

https://instaloader.github.io/

reply
xnx
1 day ago
[-]
That's exactly the tool I would use. There are options you can use to configure what posts are downloaded:

https://instaloader.github.io/cli-options.html#which-posts-t...

https://instaloader.github.io/basic-usage.html#filter-posts

reply
venusenvy47
1 day ago
[-]
Actually, I made a mistake. That tool I haven't got working yet because of the necessary authentication. I've been using this one without auth, but it downloads everything.

https://github.com/mikf/gallery-dl

reply
butz
17 hours ago
[-]
Isn't updating once a day a bit too rare for content heavy websites, like HN? I use online RSS reader just to keep up with all updates when I am not online. With updates once a day I'd probably be using desktop RSS reader app.
reply
jfim
14 hours ago
[-]
I believe the idea is to have a source that updates infrequently, so that one isn't compelled to refresh it all the time.

It's not unlike one service that I saw where you'd get email once per day in your inbox, at a specific time.

reply
imiric
22 hours ago
[-]
This looks great! Congrats on shipping.

Have you considered open sourcing it? I would rather self-host something like this.

reply
exprez135
22 hours ago
[-]
It is actually open source, though I'm not sure if it's linked directly on the site. (It is linked in his blog post.) The repository: https://github.com/capjamesg/web-reader
reply
imiric
21 hours ago
[-]
Ah, thanks, I missed it.
reply
kayge
22 hours ago
[-]
Looks like it's already open source: https://github.com/capjamesg/web-reader
reply
carlosjobim
17 hours ago
[-]
Why does every show HN post attract beggars?
reply
butz
17 hours ago
[-]
Technical question: how are you dealing with feeds blocked by cloudflare protection or captchas?
reply
zerojames
17 hours ago
[-]
Good question. I haven't found this to be an issue yet, perhaps because of the infrequency with which resources are accessed.

With that said, I can't guarantee this is not an issue. There are a few feeds that return errors that I need to investigate.

reply
moehm
14 hours ago
[-]
Message the authors about this. Most website owners don't know their cms is also creating a rss/atom feed. Sometimes it took awhile, but I had moderate success with it.
reply
borg16
23 hours ago
[-]
thanks. I pay for miniflux through pikapods that I can now get rid of, thanks to your free and alternative offering.
reply
alexpadula
21 hours ago
[-]
Awesome!
reply
rakoo
23 hours ago
[-]
For reference, and not implying it's better or worse than your work OP, I've pleasantly used Fraidycat (https://fraidyc.at/) in the past. It's a webextension, so completely local, and also incorporates the idea of having a "calmer" experience: no infinite list of links to check, different update rates, ...

I love your philosophy page, OP ! (https://jamesg.blog/2024/11/30/designing-a-calm-web-reader/)

reply
zerojames
23 hours ago
[-]
Thank you! I think how something is made, and the decisions that got it to where it is, is just as important as the thing itself.

One of the delightful things about the web is we can all bring our own ideas and designs to problems.

I haven't written about this yet, but one thing on my mind is the importance of good import/export features. With good import/export features, we can all move around and try different softwares to see which ones we like!

reply
rakoo
21 hours ago
[-]
Indeed, import/export is one of the most important design point centering control back to the user, and even better is abstracted storage of data: if I had a single OPML file accessible from everywhere (with auth, of course) and all tools took the universally accessible path, I could change feeds in one tool and automatically see the result in another without fussing out import/export buttons and procedures.
reply
mmahemoff
1 day ago
[-]
What's a good place to discover high-quality RSS feeds these days?
reply
freetonik
1 day ago
[-]
I'm curating a collection here https://minifeed.net/blogs/
reply
dqv
23 hours ago
[-]
Aw dang, looks like I can't subscribe to it in my feed reader. Still, this is a great collection. Thanks for sharing
reply
freetonik
23 hours ago
[-]
Do you mean to subscribe to the whole collection, one RSS feed for all the blogs in my list? I mean, I guess I can build that feature, but it's gonna be quite a firehose.
reply
drdec
1 hour ago
[-]
My impression was that they wanted to be notified of new blogs via RSS, not the content of the blogs.

But I could be wrong

reply
onli
23 hours ago
[-]
Not sure what parent meant, but the right way should be an opml file with the feeds, which the feed reader then can import. But maybe you are offering that already?
reply
freetonik
22 hours ago
[-]
Here, I quickly put together an OPML generator: https://minifeed.net/blogs/opml.xml
reply
dqv
20 hours ago
[-]
Whoa, you did not have to do that! Thank you so much :)
reply
freetonik
23 hours ago
[-]
Ah, sorry, that makes perfect sense. Not yet, but I plan to implement this soon.
reply
CharlesW
23 hours ago
[-]
One tip: Every Substack has a feed, which is a nice alternative to having everything dropped in your email in-box. You just append "/feed" to the end of a newsletter URL, e.g. https://simonw.substack.com/feed.
reply
marginalia_nu
22 hours ago
[-]
I've been doing adjacent work for my search engine[1], and found substack to annoyingly be one of the sites that employ bot mitigation for its RSS endpoints. If you fetch at a very low rate it works fine, but for these types of bulk retrieval.

Substack is also a bit of a pain to integrate with because they have zero useful contact information and direct all inquiries to a chatbot that is beyond useless, makes it so you have to guess how they want you to interact with their servers since there is nobody to answer questions.

[1] Preview of my take of the idea: https://mastodon.social/@marginalia/113670235590972416

reply
freetonik
22 hours ago
[-]
I wonder if Substack would at some point remove or at least cripple this feature. Right now it seems the full-content RSS is served.
reply
nelsonfigueroa
23 hours ago
[-]
I added one of the random RSS feeds from https://indieblog.page/rss. I’ve discovered cool blogs this way that I now subscribe to directly.
reply
freetonik
23 hours ago
[-]
That's a very cool idea!
reply
aharris6
22 hours ago
[-]
I am working on a site, which is very pre-beta at this point, that works to help solve this problem using bluesky's "starter pack" model. Basically sharing curated lists of good follows. Give it a look at https://feed.computer if that seems interesting!
reply
hombre_fatal
20 hours ago
[-]
Heh, that was my question too once I signed up.

I think OP’s project is a nice place to potentially have some default feeds. Both for purposes but also because it’s nice to see some interesting content once you sign up. Maybe even just major news items.

reply
quinto_quarto
1 day ago
[-]
i made a directory of indie creators from across the web here, which i'm not sure what to do with: https://fanzine.world/

I believe you can RSS most of them. certainly all the substacks.

reply
rixed
22 hours ago
[-]
Create a reader like Artemis and wait for people to upload their own bookmarks?
reply
charles_f
1 day ago
[-]
I'm just picking the rss for the links I like on hn
reply
asb
20 hours ago
[-]
I think this is a really interesting area. I wrote a command line took for web reading with some similar motivations. In my case, you queue up the articles to read the next day.

https://muxup.com/pwr

reply
zerojames
20 hours ago
[-]
Nice!

P.S. I love the colour choices and the colour stripe interactions on your website. So cool!

reply
nahimn
23 hours ago
[-]
HN hug of death - “Internal Server Error”
reply