MCPSERV.CLUB
CommaFeed

CommaFeed

Self-Hosted

Self-hosted RSS reader inspired by Google Reader

Active(100)
3.2kstars
1views
Updated 16 hours ago
CommaFeed screenshot

Overview

Discover what makes CommaFeed powerful

CommaFeed is a self‑hosted RSS reader that marries a lightweight Java back‑end with a modern React/TypeScript front‑end. At its core, it ingests syndicated feeds via HTTP(S), parses XML/Atom payloads, and stores article metadata in a relational database. The application exposes a REST API that mirrors the functionality of popular services such as Google Reader, and it additionally implements a Fever‑compatible API so that native mobile clients can consume feeds directly. The server is built with **Quarkus**, a Kubernetes‑native Java framework that delivers fast startup times and minimal memory footprints, especially when compiled to native binaries with GraalVM.

Backend

Frontend

Databases

Containerization

Overview

CommaFeed is a self‑hosted RSS reader that marries a lightweight Java back‑end with a modern React/TypeScript front‑end. At its core, it ingests syndicated feeds via HTTP(S), parses XML/Atom payloads, and stores article metadata in a relational database. The application exposes a REST API that mirrors the functionality of popular services such as Google Reader, and it additionally implements a Fever‑compatible API so that native mobile clients can consume feeds directly. The server is built with Quarkus, a Kubernetes‑native Java framework that delivers fast startup times and minimal memory footprints, especially when compiled to native binaries with GraalVM.

Technical Stack

  • Backend: Quarkus (Jakarta EE) running on the JVM or compiled to native code with GraalVM. The server layer uses JPA/Hibernate for persistence, CDI for dependency injection, and RESTEasy Reactive to expose HTTP endpoints.
  • Frontend: React + TypeScript with a responsive design that supports light/dark themes, RTL feeds, and keyboard shortcuts. The UI is served as a single‑page application (SPA) from the same Quarkus deployment, simplifying CORS and authentication.
  • Databases: Four supported back‑ends – embedded H2 for quick starts, PostgreSQL, MySQL, and MariaDB for production workloads. The data model is defined via JPA entities, allowing developers to switch databases by changing a Maven profile.
  • Containerization: Official Docker images are published to Docker Hub (athou/commafeed). The image is a multi‑stage build that includes the native executable when the -Pnative profile is used, resulting in a single binary that can run on any Linux/Windows host without a JRE.

Core Capabilities & APIs

  • Feed Management: Import/export via OPML, bulk subscription handling, and automatic feed discovery.
  • Article Lifecycle: Marking read/unread, starring, tagging, and rule‑based auto‑archiving.
  • REST API: Full CRUD for feeds, entries, and user settings; supports pagination, filtering, and search.
  • Fever API: A drop‑in replacement for the Fever protocol, enabling existing mobile clients to sync without modifications.
  • Extensibility: Custom CSS and JavaScript hooks allow front‑end tweaks; the back‑end exposes a plug‑in architecture through Quarkus extensions, making it straightforward to add new authentication providers or analytics sinks.

Deployment & Infrastructure

The application can be run as a native binary, a JVM jar, or inside Docker. For production, the recommended approach is to use the native Docker image with a PostgreSQL or MariaDB database. Quarkus’ native mode reduces memory usage to ~50 MiB and achieves < 200 ms cold starts, making it suitable for small‑to‑medium clusters or even single‑node deployments on a Raspberry Pi. The Docker Compose example in the repo demonstrates how to wire the service with a PostgreSQL container, while Kubernetes manifests are available via Helm charts in the community.

Integration & Extensibility

CommaFeed’s plugin system is built on Quarkus’ CDI extensions, allowing developers to inject custom services or intercept requests. The REST API is fully documented with OpenAPI annotations, enabling auto‑generated clients in any language. Webhooks are not yet native but can be added via a custom CDI bean that publishes events on article fetch or user action. The front‑end exposes a global commafeed object that can be leveraged by browser extensions or third‑party scripts.

Developer Experience

Configuration is minimal: the embedded H2 database requires no setup, while other databases are configured via standard Quarkus properties (quarkus.datasource.*). The source tree is well‑structured, with separate modules for server and client. Documentation covers custom CSS/JS, OPML handling, and the Fever API in depth. The community is active on GitHub Issues, and contributors can easily add support for new databases or authentication methods thanks to the modular Maven project layout.

Use Cases

  • Enterprise Knowledge Base: Deploy on a private intranet to aggregate internal blogs, release notes, and policy documents.
  • Personal Knowledge Management: Run a lightweight instance on a home server to keep all feeds in one place with zero vendor lock‑in.
  • Educational Platforms: Provide students with a unified feed of course announcements, research papers, and news.
  • Developer Toolchains: Integrate the Fever API into custom mobile clients or automation scripts that trigger actions when new entries appear.

Advantages

CommaFeed offers a compelling blend of performance, flexibility, and open‑source freedom. Its native compilation yields startup times comparable to Go or Rust services while retaining the rich ecosystem of Java libraries. The multi‑database support and Quarkus’ cloud‑native features make it easy to scale horizontally with minimal overhead. Licensing is permissive (MIT), ensuring no cost barriers for enterprises or hobbyists alike. For developers seeking a self‑hosted RSS reader that can be extended, embedded in other services, or deployed as a lightweight microservice, CommaFeed provides the technical depth and community backing to make that possible.

Open SourceReady to get started?

Join the community and start self-hosting CommaFeed today

Weekly Views

Loading...
Support Us
Most Popular

Infrastructure Supporter

$5/month

Keep our servers running and help us maintain the best directory for developers

Repository Health

Loading health data...

Information

Category
other
License
APACHE-2.0
Stars
3.2k
Technical Specs
Pricing
Open Source
Database
Multiple
Docker
Official
Supported OS
LinuxWindowsDocker
Author
Athou
Athou
Last Updated
16 hours ago