A minimal, cross-platform news aggregator written in Flutter. Available on Android, Windows and Linux.
rssPresso is a minimal, cross-platform news aggregator written in Flutter.
Import your favorite RSS/Atom feeds and start reading ahead. Load the full content of an article with a click of a button, or open it externally. You can star your article for later - and, when you're ready, simply filter your feed by saved or unread articles. Easily search your feeds to find what you want. Switch between different UI layouts to suit your needs.
Enjoy a modern Material design with a light & dark theme. Free and open source - for your freedom.
- Currently supported platforms: Android, Windows, Linux
- Planned: macOS (Unfortunately I do not currently own a macOS device; to build and test rssPresso, a macOS device is needed)
Download and install the rssPresso-Android.apk file from the GitHub releases page.
Download and execute the rssPresso-Windows.exe file from the GitHub releases page.
Supported | Planned |
---|---|
AppImage | Flatpak (Flathub) |
.deb | .rpm |
Snap | |
AUR |
To install rssPresso as an AppImage, download the rssPresso-Linux.AppImage file from the GitHub releases page, make it executable and run it. For better desktop integration consider using AppImageLauncher.
To install rssPresso as a .deb package, download the rssPresso-Linux.deb file from the GitHub releases page and install it.
- Import & export your feeds via OPML files
- Load the full content of an article
- Star articles & mark articles as read/unread
- Search for articles
- Filter feeds by unread or saved articles
- Material design with a light & dark theme
- Switch between different UI layouts
- Free and open source (GPLv3)
- ...and many more features planned
These are the ways you can contribute to rssPresso:
Open an issue on GitHub: Open issue. Remember to check for duplicates and try to give important information such as the app version, your operating system, etc.
Feel free to send in a pull request! To get started with Flutter, follow this link: https://docs.flutter.dev/get-started/install
- Clone this repository
- Switch to the project's directory and run
flutter pub get
to get all necessary packages. To test the app, run the project in debug mode by selecting a device in your preferred Flutter IDE and running the app in debug mode - Build rssPresso (see steps for the different platforms below)
Windows executable: Run the following command in your terminal on a Windows machine: flutter build windows
– the output file will be generated at rsspresso\build\windows\runner\Release\rsspresso.exe
.
Linux executable: Run the following command in your terminal: flutter build linux
– the output files, including the executable, will be generated at rsspresso/build/linux/x64/release/bundle
.
- Upload on F-Droid [Android]
- Upload on Flathub [Linux]
- Organize feeds into custom groups
- Sync with RSS services like the Fever API, Google Reader API, Nextcloud News, Feedbin, Inoreader, etc.
- Integrate YouTube subscriptions
- Background article fetching
- Desktop keyboard shortcuts
- Push notifications for desktop & mobile
- Multi language support
- Your features
The packages used for this app, also listed in the pubspec.yaml file. See their respective licenses.
Package | Use case |
---|---|
cached_network_image | Cache images from the network |
content_parser | Load full article content |
dart_rss | Parse RSS/Atom xml data |
file_picker | Import/export OPML files |
flutter_file_dialog | Export OPML files on Android |
flutter_markdown | Display Markdown data |
flutter_riverpod | State management |
html | Parse HTML data |
html2md | Convert HTML to Markdown |
http | Request website data |
intl | Parse dates |
package_info_plus | Display app version number |
path | Path transformations |
path_provider | Load platform specific paths |
permission_handler | Show Android permission dialog |
shared_preferences | Save/load app data |
url_launcher | Open URLs in Browser |
window_manager | Desktop window operations |
xml | Parse xml data |
This project was greatly inspired by other RSS readers. Without these projects, rssPresso wouldn't have looked the same as now.
- Fluent Reader (Desktop)
- Fluent Reader Lite (Android)
- Feeder (Android)
Extracting content: content_parser
To extract the full content of an article, content_parser is used. This is an incomplete port from the JavaScript library Postlight Parser to Dart. Postlight Parser itself is licensed under the MIT License (see here).
This project is licensed under the GNU General Public License Version 3. For details, see LICENSE.