Overview
Discover what makes TinyFeed powerful
**tinyfeed** is a lightweight, self‑hosted feed aggregation tool written in Go. It consumes any number of RSS, Atom, or JSON‑feed URLs and outputs a single static HTML page that can be served by any web server. The project deliberately eschews databases, configuration files, and runtime dependencies in favor of a pure CLI that generates deterministic HTML. This design makes tinyfeed ideal for environments where simplicity and reproducibility are paramount, such as cron‑driven dashboards or static site generators.
Feed Parsing
Customizable Rendering
Theming
Daemon Mode
Overview
tinyfeed is a lightweight, self‑hosted feed aggregation tool written in Go. It consumes any number of RSS, Atom, or JSON‑feed URLs and outputs a single static HTML page that can be served by any web server. The project deliberately eschews databases, configuration files, and runtime dependencies in favor of a pure CLI that generates deterministic HTML. This design makes tinyfeed ideal for environments where simplicity and reproducibility are paramount, such as cron‑driven dashboards or static site generators.
Key Features
- Feed Parsing – Powered by the mature
gofeedlibrary, tinyfeed handles all common feed formats and auto‑detects encoding. - Customizable Rendering – Developers can supply their own CSS or HTML templates; the CLI exposes placeholders for titles, dates, and content.
- Theming – The generated page automatically switches between dark and light modes based on the user’s system preference, using CSS media queries.
- Daemon Mode – A lightweight background process can be started to periodically regenerate the feed page, making it suitable for real‑time dashboards without a full web framework.
- Accessibility – The HTML output follows WCAG 2.1 AA guidelines: semantic tags, proper contrast ratios, and keyboard navigation support.
Technical Stack
- Language: Go (1.20+), compiled to a single binary.
- Parsing Library:
github.com/mmcdole/gofeed– handles feed discovery, parsing, and error recovery. - Template Engine: Go’s standard
html/templatepackage; developers can override the default template by providing a file path. - Styling: Pure CSS; optional external stylesheets can be linked via the CLI.
- Build & Distribution: Uses Go modules; binaries are available for Linux, macOS, and Windows. No external runtime is required.
Deployment & Infrastructure
- Self‑Hosting – The binary can be dropped onto any machine; no service manager is required, though tinyfeed supports
systemd,openrc, and cron for scheduled runs. - Containerization – A minimal Docker image is available on Docker Hub; the image contains only the binary and a lightweight
scratchbase, keeping attack surface minimal. - Scalability – Because the output is static, scaling is achieved by serving the generated file via a CDN or load‑balanced web server. The generator itself scales linearly with CPU cores, as each feed is fetched concurrently.
Integration & Extensibility
- API – While tinyfeed has no HTTP API, its CLI accepts JSON payloads via stdin, enabling integration with CI/CD pipelines or serverless functions.
- Webhooks – Developers can hook the daemon mode into webhook triggers (e.g., a GitHub Actions workflow) to regenerate feeds on demand.
- Plugins – The project exposes a small hook for custom feed processors: by implementing the
FeedProcessorinterface, developers can inject transformations (e.g., Markdown rendering or profanity filtering) before the HTML is rendered.
Developer Experience
- Configuration – All options are exposed as command‑line flags; no hidden configuration files reduce friction.
- Documentation – The official site hosts comprehensive guides (installation, usage, customization) with examples and screenshots.
- Community – The repository has an active issue tracker, and contributors are encouraged to propose demos or theme extensions via pull requests.
- Licensing – BSD‑3‑Clause, allowing commercial use without attribution requirements.
Use Cases
- Personal Dashboards – Generate a home‑screen RSS feed page that can be pinned to a browser or TV.
- Team Knowledge Bases – Embed a static feed page into an internal wiki or Confluence space to surface relevant industry news.
- Static Site Integration – Combine tinyfeed with static site generators (Hugo, Jekyll) to produce a unified site that includes dynamic content without server-side rendering.
- CI‑Driven Reports – Use the daemon mode in CI pipelines to produce build status or security advisories as an HTML page that can be served from a CDN.
Advantages Over Alternatives
- Zero Runtime Dependencies – No database or server stack means fewer points of failure and easier compliance with security policies.
- Deterministic Output – The same input always yields the same HTML, simplifying caching and version control.
- Performance – Compiled Go binaries execute quickly; concurrent feed fetching reduces latency compared to single‑threaded alternatives.
- Licensing Flexibility – BSD license allows integration into proprietary products without copyleft obligations.
In summary, tinyfeed offers developers a minimal yet powerful tool for aggregating feeds into static web pages. Its Go‑centric design, combined with an emphasis on configurability and container friendliness, makes it a compelling choice for any project that needs reliable, lightweight feed rendering without the overhead of a full web application.
Open SourceReady to get started?
Join the community and start self-hosting TinyFeed today
Related Apps in other
Immich
Self‑hosted photo and video manager
Syncthing
Peer‑to‑peer file sync, no central server
Strapi
Open-source headless CMS for modern developers
reveal.js
Create stunning web‑based presentations with HTML, CSS and JavaScript
Stirling-PDF
Local web PDF editor with split, merge, convert and more
MinIO
Fast, S3-compatible object storage for AI and analytics
Weekly Views
Repository Health
Information
Explore More Apps
Superdesk
Digital newsroom platform for end‑to‑end news creation and distribution
Strapi
Open-source headless CMS for modern developers
minimal-git-server
Lightweight Git server with CLI and multi‑user support
DreamFactory
Auto‑generate secure, documented APIs for your data
Socialhome
Federated personal profile and social networking platform
DavMail
Gateway for Exchange and Office 365 using POP/IMAP/SMTP
