Live on https://rss-reader.dutl.uk/ !
A simple client-side RSS aggregator built with Vue.js. This application allows users to enter multiple RSS feed URLs, fetches and aggregates the feeds, sorts the posts by date, and displays the most recent posts first. It also allows users to bookmark the page with the current RSS feeds.
- Fetch multiple RSS feeds simultaneously.
- Display the aggregated posts sorted by date.
- Render HTML content of the posts.
- Display additional metadata (publication date, feed title) for each post.
- Save state on url & a "Bookmark Me" button to bookmark the page with the current RSS feed URLs (compatibility varies)
-
Clone the repository:
git clone https://github.com/cemreefe/client-side-rss-reader.git cd client-side-rss-reader
-
Open the
index.html
file in your browser:open index.html
- Enter the RSS feed URLs in the textarea, separated by commas.
- Click the 🔄 button to fetch and display the feeds.
- Click on ☾ to toggle dark mode.
- Click on a post title to view its content. Click on the title again or use the "close" button at the end of the post to hide the content.
- Click the "Bookmark Me" button to bookmark the page with the current feeds.
- Click ⚙ to open advanced settings.
- Set a cache TTL to keep the posts in cache until next fetch.
- Use the blocklist to filter out content.
- This is a front-end tool, so connections are not great. Set a truncation size to early-kill every feed fetch request when a certain response size is hit. The higher this number is, the more posts you can fetch, and the more chance the request will timeout and return no feeds (improvements coming soon!).
- Use kindle mode to use this feed with your kindle. The kindle mode aut-adjusts the page location based on the post you're viewing and gives you handy buttons to traverse posts so that you won't have to scroll.
- Enable mark-as-read if you'd like to keep track of what you have or haven't read.
Use with caution! This data is persisted on your browser, and it will go away if you clear browser cache.
If your data is dear, don't forget to occasionally export your read list so you can import it if you lose your data.
- Hide posts marked as read, or don't. If you decide to keep them around, they are going to appear faded.
- Read posts list operations. Export, import or clear your read posts data.
Enter RSS feeds separated by a comma:
https://blog.jim-nielsen.com/feed.xml, https://manuelmoreale.com/feed/rss
You'll see that your url is now pointing to:
- Vue.js: Used for reactive UI components and data binding.
- Axios: Used for making HTTP requests to fetch RSS feeds.
- RSS Parser: Used to parse the RSS feed XML into JSON format.
- HTML5 and CSS3: Used for structuring and styling the application.
Feel free to open a pull request if you see a technical improvement. For product improvements, please start a discussion in issues.