HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
Athou
commafeed
Java2013–2025
Athou / commafeed

commafeed

Google Reader inspired self-hosted personal RSS reader.

20Distinct people
23Mentions
0Explicit recommenders
3.6KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Google Reader inspired self-hosted personal RSS reader.

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year23 dated mentions

Observed mentions: 2013-04-13 18:34:59 UTC to 2025-01-18 09:34:00 UTC.

0369122013-01-01 00:00:00 UTC to 2014-01-01 00:00:00 UTC (exclusive): 11 mentions; 2 submissions, 9 comments20132014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments20192020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 3 mentions; 1 submissions, 2 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2025

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20132013-01-01 00:00:00 UTC2014-01-01 00:00:00 UTC1129
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC101
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC110
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC000
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC000
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC101
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC000
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC000
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC000
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC312
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC211
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC303
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC101

From the project README

An excerpt from the repository, fetched Nov 13, 2026.

Read the project’s introduction
CommaFeed Google Reader inspired self-hosted RSS reader, based on Quarkus and React/TypeScript. Features 4 different layouts Light/Dark theme Fully responsive, works great on both mobile and desktop Keyboard shortcuts for almost everything Support for right-to-left feeds Translated in 25+ languages Supports thousands of users and millions of feeds OPML import/export REST API Fever and Google Reader API for native mobile apps Can automatically mark articles as read based on user-defined rules Push notifications when new articles are published Highly customizable with custom CSS and JavaScript Browser extension Compiles to native code for blazing fast startup and low memory usage Supports 4 databases H2 (embedded database) PostgreSQL MySQL MariaDB Usage Public instance A free public instance is available at https://www.commafeed.com. It has no ads, no tracking, and your data is never exploited or sold to third parties. The service is funded entirely through donations. However, this public instance does have a few limitations compared to self-hosted setups, outlined here. Docker Docker is the easiest way to get started with self-hosted CommaFeed. Docker images are built automatically and are available at https://hub.docker.com/r/athou/commafeed Cloud hosting PikaPods offers 1-click cloud hosting solutions starting at $1/month with a free $5 welcome credit and officially supports CommaFeed. PikaPods shares 20% of the revenue back to CommaFeed. Download a precompiled package Go to the release page and download the latest version for your operating system and database of choice. There are two types of packages: The linux-x86_64, linux-aarch_64 and windows-x86_64 packages are compiled natively and contain an executable that can be run directly. The jvm package is a zip file containing all .jar files required to run the application. This package works on all platforms but requires a JRE and is started with java -jar quarkus-run.jar. If available for your operating system, the native package is recommended because it has a faster startup time and lower memory usage. Build from sources ./mvnw clean package [-P<database> [-Pnative]] [-DskipTests] <database> can be one of h2, postgresql, mysql or mariadb. The default is h2. -Pnative compiles the application to native code. This requires either GraalVM to be installed (GRAALVM_HOME environment variable pointing to a GraalVM installation) or a container environment to be available (docker/podman/...). -DskipTests to speed up the build process by skipping tests. When the build is complete: a zip containing all jars required to run the application is located at commafeed-server/target/commafeed-<version>-<database>-jvm.zip. Extract it and run the application with java -jar quarkus-run.jar if you used the native profile, the executable is located at commafeed-server/target/commafeed-<version>-<database>-<platform>-<arch>-runner[.exe] Distribution packages Arch Linux users can use the CommaFeed package on AUR, which builds native binaries with GraalVM for all supported databases. Configuration CommaFeed doesn't require any configuration to run with its embedded database (H2). The database file will be stored in the data directory of the current directory. To use a different database, you will need to configure the following properties: quarkus.datasource.jdbc.url e.g. for H2: jdbc:h2:./data/db;DEFRAG_ALWAYS=TRUE e.g. for PostgreSQL: jdbc:postgresql://localhost:5432/commafeed e.g. for MySQL: jdbc:mysql://localhost/commafeed?autoReconnect=true&failOverReadOnly=false&maxReconnects=20&rewriteBatchedStatements=true&timezone=UTC e.g. for MariaDB: jdbc:mariadb://localhost/commafeed?autoReconnect=true&failOverReadOnly=false&maxReconnects=20&rewriteBatchedStatements=true&timezone=UTC quarkus.datasource.username quarkus.datasource.password There are multiple ways to configure CommaFeed: a config/application.properties properties file relative to the working directory (keys in kebab-case) Command line arguments each prefixed with -D (keys in kebab-case) Environment variables (keys in UPPER_CASE) a .env file in the working directory (keys in UPPER_CASE) When in doubt, the properties file is recommended because CommaFeed will be able to warn about invalid properties and typos. All CommaFeed settings are optional and have sensible default values. When logging in, credentials are stored in an encrypted cookie. The encryption key is randomly generated at startup, meaning that you will have to log back in after each restart of the application. To prevent this, you can set the quarkus.http.auth.session.encryption-key property to a fixed value (min. 16 characters). All other Quarkus settings can be found here. When started, the server will listen on http://localhost:8082. Updates When CommaFeed is up and running, you can subscribe to this feed to be notified of new releases. Memory management The Java Virtual Machine (JVM) is rather greedy by default and will not release unused memory to the operating system. This is because acquiring memory from the operating system is a relatively expensive operation. This can be problematic on systems with limited memory. Hard limit (native and jvm packages) The JVM can be configured to use a maximum amount of memory with the -Xmx parameter. For example, to limit the JVM to 256MB of memory, use -Xmx256m. Dynamic sizing (jvm package) In addition to the previous setting, the JVM can be configured to release unused memory to the operating system with the following parameters: -Xms20m -XX:+UseG1GC -XX:+UseStringDeduplication -XX:-ShrinkHeapInSteps -XX:G1PeriodicGCInterval=10000 -XX:-G1PeriodicGCInvokesConcurrent -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=10 See here and here for more information. OpenJ9 (jvm package) The OpenJ9 JVM is a more memory-efficient alternative to the HotSpot JVM, at the cost of slightly slower throughput. IBM provides precompiled binaries for OpenJ9 named Semeru. This is the JVM used in the
Read the full README on GitHub

What Hacker News says

23 sources
I have a blog where I post a few posts per year. [1] /feed.xml is served with an Expires header of 24 hours. I wrote a tool that allows me to query the webserver logs using SQLite [2]. Over the past 90 days, these are the top 10 requesters grouped by ip address (remote_addr column redacted here): requests_per_day user_agent 283 Reeder/5050001 CFNetwork/1568.300.101 Darwin/24.2.0 274 CommaFeed/4.4.0 (https://github.com/Athou/commafeed) 127 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 52 NetNewsWire (RSS Reader; https://netnewswire.com/) 47 Tiny Tiny RSS/23.04-0578bf80 (https://tt-rss.org/) 47 Refeed Reader/v1 (+https://www.refeed.dev/) 46 Se
Read the rest
lfoss/2.18 (SimplePie/1.5.1; +https://selfoss.aditu.de) 41 Reeder/5040601 CFNetwork/1568.100.1.1.1 Darwin/24.0.0 39 Tiny Tiny RSS/23.04 (Unsupported) (https://tt-rss.org/) 34 FreshRSS/1.24.3 (Linux; https://freshrss.org) Reeder is loading the feed every 5 minutes, and in the vast majority of cases it’s getting a 301 response because it tries to access the http version that redirects to https. At least it has state and it gets 304 Not Modified in the remaining cases. If I order by body bytes served rather than number of requests (and group by remote_addr again), these are the worst consumers: body_megabytes_per_year user_agent 149.75943975 Refeed Reader/v1 (+https://www.refeed.dev/) 95.90771025 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 75.00080025 rss-parser 73.023702 Tiny Tiny RSS/24.09-0163884ef (Unsupported) (https://tt-rss.org/) 38.402385 Tiny Tiny RSS/24.11-42ebdb02 (https://tt-rss.org/) 37.984539 Selfoss/2.20-cf74581 (+https://selfoss.aditu.de) 30.3982965 NetNewsWire (RSS Reader; https://netnewswire.com/) 28.18013325 Tiny Tiny RSS/23.04-0578bf80 (https://tt-rss.org/) 26.330142 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36 24.838461 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36 The top consumer, Refeed, is responsible for about 2.25% of all egress of my webserver. (Counting only body bytes, not http overhead.) [1]: https://ruudvanasseldonk.com/writing [2]: https://github.com/ruuda/sqlog/blob/d129db35da9bbf95d8c2e97d...
In Feed readers which don't take "no" for an answer
Why aren't you using an rss feed reader to "subscribe" to all the channels you like and filtering through that? I have all my stuff subscribed in commafeed (https://github.com/Athou/commafeed/ but freshrss is also quite good https://github.com/FreshRSS/FreshRSS) I only ever go to youtube main page if I have time to spare and want to see something new, it's wonderful. If you combine this with some ad blocks and sponsorblock it makes youtube splendid again.
In BlockTube, a YouTube Content Blocker
Really like your point on OSS. Even if you don't make a whole "marketing site" - you can get a lot of mileage by considering your README as a sales page (and not just a technical document). Here's an actual example, compare the READMEs for these open source RSS readers: https://github.com/samuelclay/NewsBlur/blob/master/README.md https://github.com/SSilence/selfoss/blob/master/README.md https://github.com/swanson/stringer/blob/master/README.md https://github.com/Athou/commafeed/blob/master/README.md https://github.com/feedbin/feedbin/blob/master/README.md https://github.com/gothfox/Tiny-Tiny-RSS/blob/master/README.... Which ones jump out at you? Which ones are memorable? Which do you want to install/contribute to/star? (I'm biased because I wrote one, but I was very intentional which how the README looks and reads!)
In Making Your Writing Work Harder For You

Showing the 15 most recent of 23 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.