A modern RSS reader built with React, TypeScript, and MongoDB.
You can run this application in two ways:
- Node.js 20 or later
- MongoDB
- npm or yarn
- Start MongoDB:
mongod- Start the backend:
cd backend
npm install
npm run dev- Start the frontend:
cd frontend
npm install
npm run dev- Open http://localhost:3000 in your browser
- Docker
- Docker Compose
- Build and start all services:
docker-compose up --build- Open http://localhost:3000 in your browser
docker-compose downTo remove all data (including the MongoDB volume):
docker-compose down -v- Add and manage RSS feeds
- Organize feeds in folders
- Mark items as read/unread
- Dark mode support
- Drag and drop feed organization
- Real-time feed updates
The backend provides the following API endpoints:
GET /api/feeds- Get all feedsPOST /api/feeds- Create a new feedDELETE /api/feeds/:id- Delete a feedGET /api/folders- Get all foldersPOST /api/folders- Create a new folderDELETE /api/folders/:id- Delete a folderPUT /api/feeds/:id/folder- Update feed's folderGET /api/feeds/:id/items- Get feed itemsPOST /api/feeds/:id/fetch- Fetch new items for a feedPUT /api/items/:id/read- Mark an item as read
- React
- TypeScript
- Vite
- Tailwind CSS
- Framer Motion
- Shadcn UI
- Node.js
- Express
- TypeScript
- MongoDB
- Mongoose
- RSS Parser
- Frontend development server includes hot module replacement
- Backend development server uses nodemon for automatic reloading
- TypeScript is used throughout the project for type safety
GPL-3.0