A self-hosted, cloud-native RSS platform built for scale, performance, and full ownership.
Aggregate, personalize, and control your news — powered by a production-grade 3-tier architecture.
🚀 Full Stack • ☁️ Cloud Native • 🏗️ DevOps Ready • 🔐 Multi-User
- Overview
- Features
- Screenshots / Demo
- Configuration
- Tech Stack
- Requirements
- Installation / Setup
- Working
- Project Structure
- Documentation
- Contribution
- License
- Author & Credits
FeedReader is a self-hosted, multi-user RSS aggregation platform designed with a production-grade architecture.
Modern RSS tools:
- Limit customization
- Lock users into ecosystems
- Lack scalability and control
FeedReader provides:
- Full ownership of your data
- Cloud-native scalability
- Developer-friendly extensibility
- Developers building full-stack/cloud portfolios
- DevOps engineers learning infra automation
- Power users who want control over content feeds
- 🧩 Universal Feed Support — Subscribe to any RSS/Atom feed instantly
- 👤 Multi-User Isolation — Secure, independent user environments
- 📰 Offline Article Storage — Never lose access to saved content
- 🖼️ Auto Thumbnail Extraction — Clean, modern reading UI
- 📦 OPML Import/Export — Seamless migration between platforms
- ⚡ High Availability Architecture — Load-balanced & scalable
- ☁️ Cloud Monitoring — Integrated alerts for system health
- 🐳 Dockerized Deployment — Consistent dev & production environments
| Environment | Description |
|---|---|
| Development | Local Docker-based setup |
| Staging | AWS EC2 with Terraform |
| Production | Fully automated infra with monitoring |
| Variable | Description |
|---|---|
| DB_HOST | MySQL host |
| DB_USER | Database user |
| DB_PASS | Database password |
| JWT_SECRET | Authentication secret |
| Layer | Technology | Purpose |
|---|---|---|
| Frontend | Vanilla JS | Lightweight UI rendering |
| Backend | Node.js (Express) | API & business logic |
| Database | MySQL | Persistent storage |
| Infra | Terraform | Infrastructure as Code |
| Cloud | AWS | Scalable hosting |
| Container | Docker | Environment consistency |
| Monitoring | CloudWatch | Alerts & metrics |
- Node.js ≥ 18
- Docker & Docker Compose
- Terraform ≥ 1.0
- AWS CLI configured
- MySQL (local or cloud)
git clone https://github.com/mdskun/feedreader.git
cd feedreaderdocker-compose up --buildhttp://localhost:3000cd terraform
terraform init
terraform apply- Register / Login
- Add RSS feed URL
- System fetches and parses articles
- Articles stored in database
- User reads content via UI
- Backend fetches feeds using cron jobs
- Articles parsed and normalized
- Stored in MySQL with user association
- Frontend renders feeds dynamically
- Load balancer distributes traffic
- Monitoring triggers alerts on anomalies
feedreader/
│
├── frontend/ # UI layer
├── backend/ # API & business logic
├── docs # The related documents
├── screenshots # The screenshots saved
├── database/ # Schema & migrations
├── terraform/ # Infrastructure code
├── .env.example
├── docker-compose.yml
├── LICENCE
└── README.md
- Feed Parser → Extracts RSS content
- Auth System → User isolation & security
- Scheduler → Periodic feed updates
- Infra Layer → AWS provisioning
FeedReader follows a 3-Tier Architecture:
- Presentation Layer → Frontend (UI)
- Application Layer → Backend APIs
- Data Layer → MySQL Database
Includes:
- Load Balancer (ALB)
- Auto Scaling
- VPC with public/private subnets
viusal refrance is at ARCHITECTURE
| Version | Changes |
|---|---|
| v1.0.0 | Initial production-ready release |
Contributions are welcome!
- Fork the repo
- Create a feature branch
- Commit changes
- Push to branch
- Open Pull Request
This project is licensed under the MIT License.
Manthan D Soni
Built with precision, scalability, and engineering excellence 🚀


