Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
138 changes: 138 additions & 0 deletions selfhosted/40369.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
DOCUMENTATION BY A SAI TEJA - 2400040369

FreshRSS — Self-Hosted RSS Feed Reader
Overview

FreshRSS is a free, open-source, self-hosted RSS feed aggregator that allows users to collect and read updates from multiple websites, blogs, YouTube channels, and online publications in one unified dashboard.

Instead of visiting individual websites, FreshRSS automatically fetches new content via RSS or Atom feeds and displays them in a clean, ad-free, chronological interface. It works entirely on your own server — giving you full control, privacy, and offline access to your subscribed content.

Key Features

1 Centralized Reading – View all news, articles, and video updates in one dashboard.

2 Automatic Feed Updates – Fetches new content periodically via cron or background jobs.

3 Multi-User Support – Multiple accounts can be created on the same instance.

4 API Support – Compatible with third-party apps such as Reeder, FeedMe, and NetNewsWire.

5 Extensible & Customizable – Supports themes, extensions, and custom CSS.

6 Offline & Ad-Free – Stores content locally, free from ads or tracking.

7 Lightweight & Fast – Works even on low-end hardware (like Raspberry Pi).

Use Case Example

Suppose you regularly follow:

Tech blogs like Ars Technica or The Verge,

YouTube channels such as Linus Tech Tips,

Open-source project updates from GitHub releases.

Instead of visiting each separately, you simply subscribe to their feed URLs in FreshRSS.
FreshRSS then automatically fetches and displays all new articles and videos — in one place, sorted by date or category.

- Installation (via Docker – easiest method)
1️⃣ Install Docker and Docker Compose
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
# logout & log back in after this


Verify:

docker --version
docker compose version

2️⃣ Create the Project Directory
mkdir ~/freshrss
cd ~/freshrss

3️⃣ Create a Docker Compose File

Create and edit:

nano docker-compose.yml


Paste:

version: "3.9"
services:
freshrss:
image: freshrss/freshrss:latest
container_name: freshrss
ports:
- "8080:80"
volumes:
- ./data:/var/www/FreshRSS/data
- ./extensions:/var/www/FreshRSS/extensions
restart: unless-stopped


Save and exit (Ctrl + O, Enter, Ctrl + X).

4️⃣ Start FreshRSS
docker compose up -d


Check if it’s running:

docker ps


If it shows freshrss running → ✅ success.

5️⃣ Open in Browser

Go to:

http://localhost:8080


You’ll see the FreshRSS setup wizard.

Follow the on-screen steps:

Choose language → Next

Select database → SQLite (simplest)

Create an admin account → Next

Login → and start adding feeds!

6️⃣ Add Feeds (Example: YouTube Channel)

Go to the YouTube channel → view page source → find channel_id.

Create a feed URL:

https://www.youtube.com/feeds/videos.xml?channel_id=UCX6OQ3DkcsbYNE6H8uQQuVA


Paste it into FreshRSS → Subscription Management → Add a feed.

Assign to category (optional) → Done.

7️⃣ Auto-Start on Boot

Docker handles this automatically thanks to:

restart: unless-stopped


Your FreshRSS container will start every time the system boots — no manual commands needed.

🧠 Summary
Feature Description
Purpose Aggregates news & updates from multiple sources via RSS
Type Self-hosted web application
Stack PHP / SQLite (or MySQL) / Docker
Access Web browser, mobile RSS apps
Advantages Privacy, offline access, centralization, speed
Setup Time ~5–10 minutes with Docker