Coder Social home page Coder Social logo

yang991178 / fluent-reader Goto Github PK

View Code? Open in Web Editor NEW
6.6K 6.6K 383.0 18.95 MB

Modern desktop RSS reader built with Electron, React, and Fluent UI

Home Page: https://hyliu.me/fluent-reader/

License: BSD 3-Clause "New" or "Revised" License

TypeScript 98.65% HTML 0.09% JavaScript 0.43% Shell 0.83%
electron linux macos react rss rss-reader typescript windows

fluent-reader's Introduction

Fluent Reader

A modern desktop RSS reader


Download

For Windows 10 users, the recommended way of installation is through Microsoft Store. This enables auto-update and experimental ARM64 support. macOS users can also get Fluent Reader from the Mac App Store.

If you are using Linux or an older version of Windows, you can get Fluent Reader from GitHub releases.

Mobile App

The repo of the mobile version of this app can be found here.

Features

  • A modern UI inspired by Fluent Design System with full dark mode support.
  • Read locally or sync with self-hosted services compatible with Fever or Google Reader API.
  • Sync with RSS Services including Inoreader, Feedbin, The Old Reader, BazQux Reader, and more.
  • Importing or exporting OPML files, full application data backup & restoration.
  • Read the full content with the built-in article view or load webpages by default.
  • Search for articles with regular expressions or filter by read status.
  • Organize your subscriptions with folder-like groupings.
  • Single-key keyboard shortcuts.
  • Hide, mark as read, or star articles automatically as they arrive with regular expression rules.
  • Fetch articles in the background and send push notifications.

Support for other RSS services are under fundraising.

Development

Contribute

Help make Fluent Reader better by reporting bugs or opening feature requests through GitHub issues.

You can also help internationalize the app by providing translations into additional languages. Refer to the repo of react-intl-universal to get started on internationalization.

If you enjoy using this app, consider supporting its development by donating through GitHub Sponsors, Paypal, or Alipay.

Build from source

# Install dependencies
npm install

# Compile ts & dependencies
npm run build

# Start the application
npm run electron

# Generate certificate for signature
electron-builder create-self-signed-cert
# Package the app for Windows
npm run package-win

Developed with

License

BSD

fluent-reader's People

Contributors

0x1336 avatar andrewasd avatar cognition9144 avatar dependabot[bot] avatar dybdeskarphet avatar eson57 avatar fabianski7 avatar geogiraux avatar jerryc127 avatar justjulez420 avatar kant avatar mrwillcom avatar nonamepro0 avatar nxblnd avatar ssungboong avatar superhamsteri avatar thevllad avatar tiancheng2000 avatar toinane avatar vikdevelop avatar vistaus avatar yang991178 avatar yawks avatar yjavaherian avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fluent-reader's Issues

Not able to add Source

Describe the bug
When trying to subscribe to specific news it is giving an Network error.

To Reproduce
Steps to reproduce the behavior:

  1. Click Add new source
  2. Try URL like https://theverge.com or https://techrunch.com
  3. What I get is network error. Refer screenshot

Expected behavior
I should be able to add source

Screenshots
Screen Shot 2020-07-03 at 10 46 16 PM

Desktop (please complete the following information):

  • OS: macOS catalina

[Fundraising] Support for RSS services

Support for the following services are being considered. There is a fundraising on GitHub Sponsors to help cover up the costs for hosting and testing additional services.

  • Fever API #2
  • Inoreader #10
  • Feedly #4
  • Feedbin
  • Nextcloud News
  • Google Reader API

Please feel free to suggest additional services in follow-ups.

您也可以通过支付宝捐赠并备注希望支持的API,所得将一并计入上述目标。

有两个bug,一个是「点击通知直接在浏览器中打开」,一个是「未读文章会自动消失」

第一个「点击通知直接打开浏览器」:
之前我在这里提了这个功能请求,但是好像有些问题:
当点击通知时,如果此时 Safari 是在全屏状态下,那么就会先在 Safari 中打开该网页,然后又跳转到 Fluent Reader 下在应用内打开这个网页;如果 Safari 不是在全屏状态下,那就是没问题的

第二个「未读文章会自动消失」:
出现过了很多次,有的文章我明明没有点开,想留着之后再看;但是晚上或者第二天的时候我就发现这个文章被标记为「已读」了

Feed auto-discovery

Is your feature request related to a problem? Please describe.
Most RSS readers out there support RSS auto-discovery, which allows the user to enter the URL of a site to follow, and the app automatically figures out its RSS feed from the website's HTML. Fluent Reader doesn't, and entering a website URL gives an XML parsing error.

Describe the solution you'd like
When a website URL is entered, Fluent Reader should find the HTML link tag linking to its RSS feed and subscribe to that feed.

Miniflux Unread Count <> Fluent Reader Count

Describe the bug
Logged into Miniflux web browser and checked the unread count of Reddit category. It shows 182. Did a sync on Fluent Reader and it shows the Reddit unread count at 149. I then checked the Podcasts category unread count on Miniflux and it shows 53. Fluent Reader shows 10. It's just these two categories. All my other categories are accurate.

Expected behavior
Expectation is that Fluent Reader unread counts match that within Miniflux web app

Screenshots
Fluent_Reader_RlG4jWDqJw
firefox_KsDm7jLTWn
firefox_9WBZunpNwm

Platform (please complete the following information):

  • OS: Windows 10 2004
  • Version 0.7.2

Additional context
Thank you

关于多选订阅源进行管理

订阅源比较多,但是管理页面只可以单选。无法多选进行删除订阅源。

希望可以增加多选功能方便管理。

fluent-reader Can pallets be supported

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Podcast RSS Feeds

Is your feature request related to a problem? Please describe.
A Integration for RSS Feeds with special XML-Elements for Podcast & Audio.

Describe the solution you'd like
Playing the Podcast for every Item with <enclosure>-Element. This is a Element, where the Audio-HTTP-Link is saved.
For example:

<enclosure url="https://cdn.podigee.com/media/podcast_25688_c_t_uplink_episode_264299_unsere_schonsten_raspi_erlebnisse_c_t_uplink_33_9.mp3" type="audio/mpeg" length="37927047"/>

Describe alternatives you've considered
Some Integrations with the <itunes:...>-Elements.

Additional context
Here is a example Podcast RSS with a lot ot Elements: https://www.heise.de/ct/uplink/ctuplink.rss

Feature request: 提供本地数据同步功能

比方说我需要在多台PC上同步数据,包括订阅清单、阅读进度等等。
希望能够将所有数据存放在自定义文件夹中,可供第三方同步盘跨设备使用。
也为移动端支持提供可能。

Question / Idea - Installation with Homebrew

Is your feature request related to a problem? Please describe.

Just a simple question as no one asked it yet, do you plan to make it available via Homebrew?

Describe the solution you'd like

The possibility to install fluent-reader with Homebrew:

brew cask install fluent-reader

Additional context

Unfortunately I cannot help to do that, I just don't know how to.

Thank you.

很多RSS都无法抓取

Describe the bug
软件十分优雅漂亮,可惜有些小瑕疵。
一方面导入(OPML文件是从Inoreader导出的)等待时间过长,要等一分钟到两分钟不定。
另一方面导入经常出问题,第一次导入三十多个只成功8个,之后又尝试了几次就是全部无法导入。过了两天后再尝试又成功导入几个,但还是有很多导入失败。
另外订阅源管理加个多选是不是会更好些?

Desktop (please complete the following information):

  • OS: Windows 10
  • Version 微软商店最新版

Can't use fever on Windows

Describe the bug
Can't use Fever API on Windows

To Reproduce
Steps to reproduce the behavior:

  1. Go to Service
  2. Enter endpoint and other information
  3. Press verify button
  4. See error

Expected behavior
Auth successful

Screenshots
image

Platform (please complete the following information):

  • OS: Windows 10 1903
  • Version 0.7.0

Additional context
It seems that the problem occur when I try to enter an endpoint like "{host}:{port}/plugins/fever/".
I tried my best to debug it but I failed.It's time to sleep.

全部已读功能需优化

To Reproduce
Steps to reproduce the behavior:

  1. 处于“仅未读文章”视图
  2. 点击"全部标记为已读"
  3. 视图未更新。

Expected behavior
处于未读文章模式下时,点击全部标记已读后,文章应全部消失。

Desktop (please complete the following information):

  • Microsoft store.
  • Version [0.5.0]

Miniflux: Menu Shows Multiple of the Same Category rather than just one

Describe the bug
Menu shows multiple categories rather than showing just one category

To Reproduce
Steps to reproduce the behavior:

  1. Launch Fluent Reader.exe
  2. Configure Service via Fever API for first sync
  3. After first sync complete, click on Menu button in upper left hand corner
  4. Some of the categories are all rolled up into one category but others show multiple categories listed and only contain a single RSS feed per category
  5. See screen shots for better clarification

Expected behavior
Expect to only have one category with multiple RSS feeds within each category in the Menu

Screenshots
Fluent_Reader_pwdbubhHIJ
Fluent_Reader_6RmAnA0X0i

Platform (please complete the following information):

  • OS: Windows 10 2004 (OS Build 19041.450)
  • Version 0.7.2

Additional context
Using Miniflux via Fever API to connect; Sync Limit set to 1000 latest articles

Remember filtering option on startup

Currently, the item list will show all articles from selected groups or feeds when the app starts up. When I choose to show unread only, it works but the app still show all articles when starting up next time. This is kind of annoying and I hope it can remember the choice and show items as when it was closed.

Thanks for considering this.

Only Sync Unread Articles

Is your feature request related to a problem? Please describe.
To help stay under the 1000 latest article sync limit, add a setting to only sync the Unread articles. Unless I clear out the history in Miniflux, both read and unread articles are synced which after a few days can easily put me over 1000

Describe the solution you'd like
add a setting to only sync the Unread articles

Additional context
Thank you for your consideration

The logic of drawer's folder seems a little bit odd

Click on the folder's title, I expect to open/close the folder,
but it closes/expands the upper folder.
emm, kinda werid...

Another issue is it seems not so compatible with portrait monitor.
Regardless I maximize this app on a portrait 4K screen with 200% UI scale,
it could only show the drawer or the contents of a feed/folder.
Hope the width of drawer could be flexible.
As well hope it could show drawer and feed's contents simultaneously and have a better experience with portrait screen.

Thanks for your great work again~

How to use a socks5 proxy?

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Add the ability to mark multiple entries as read

Is your feature request related to a problem? Please describe.
When a feed has many unread entries and you want to go through the title of every entries before mark them as read, you will need to click every entries or go through all of them by clicking "load more" until to the end of the list. The first method is almost impossible if there are hundreds or thousands of unread entries in the feed.

For the second method, one need to read all the entries from the beginning to the end before switching to another feed or closing the reader. Otherwise, you will need to remember and find where you've read last time and continue to read the rest, which is not good either.

Describe the solution you'd like
Add a button or shortcut to mark all the loaded entries (current page) as read. I am not sure if all services support this method.

Describe alternatives you've considered

  • Automatically mark the entries disappeared away from the top as read when the user scrolls the entry list. This will post many requests to the server for service-managed feeds.
  • Allow to select multiple entries, e.g., using click one entry, hold shift key, click another entry to select all entries between the two entries, then mark them as read by right click menu.

導入RSS錯誤

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Platform (please complete the following information):

  • OS: [e.g. Windows 10 2004]
  • Version [e.g. 0.6.1]

Additional context
Add any other context about the problem here.

Fluent Reader v0.6.2 Beta
導入inoreader的xml 出錯
第一次導入 76個無法導入
第二次導入 83個出錯

Snipaste_2020-07-24_21-40-04
Snipaste_2020-07-24_21-39-02

Is it possible to make Fluent Reader force-import opml without any error warning?

I've set up RSSHub on my router and have subscribed hundreds of feeds.
But RSSHub is not always working properly.
If I import opml to Fluent Reader, most of the feeds from RSSHub would get error.
Then if I import opml again, Fluent Reader would get errors and duplicated groups.

So is it possible to make Fluent Reader force-import opml?

Anyway, thanks for your great work.
Fluent Reader is the best RSS reader I have ever used.

希望支持 inoreader

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Instant View (Reader mode)

Is your feature request related to a problem? Please describe.
It is not always convenient to read articles from different sites. Or maybe you want to read anything from the same place.

Describe the solution you'd like
I think, it would be very convenient to use Telegram's instant view in order to present posts.

Describe alternatives you've considered
I don't know about any alternatives to this. Telegram has a great database of sites and how to get text from them.

Additional context
Instant view documentation: https://instantview.telegram.org/
Also, for implementation details, we can look at some of open-source Telegram clients.

Search functionality is case sensitive

Describe the bug
When using the search bar inside the application, articles are only "found" if they match the case sensitivity of the string. Might be a nice bit of functionality to have for some users who might have large feeds. 😄

To Reproduce
Steps to reproduce the behavior:

  1. Open application
  2. Load some articles
  3. Search for a word in an article's title that doesn't match the case sensitivity

Expected behavior
The application should show article results regardless of case sensitivity of user input.

Screenshots
Not following case sensitivity:
image

Using case sensitivity:
image

Platform (please complete the following information):

  • OS: Windows 10 Pro (10.0.18363 Build 18363)
  • Version: latest version of the code (114d180)

增加快捷键

希望能加一些快捷键,比如一键标为当前类别下所有的文章为已读。

Open in specific browser / Scale zoom / Autodiscover source url

Hello,

Good app but need features for daily use:

  • Open the news in a specified browser (my default browser is not the browser to read the news).
  • Can zoom in percentages for better reading of titles and texts (my eyes need a little more font size).
  • Autodiscover source (rss link) with just domain (rss links on websites are not always easy to find).

Thank you

中文乱码

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

Render HTML tags in title

I have several feeds with items containing simple HTML tags like i, sup, sub, em in title frequently. Currently, these tags are displayed as is without rendering in the entry lists and articles, which is very ugly and decreases readability. I think there are two options to improve.

  1. Render and display the tags as italic, superscript, or subscript texts. This would be the ideal solution.
  2. Unwrap the tags and display them as ordinary texts. This is not perfect but still better than current method.

Thanks.

Wrong encoding

Describe the bug
Sadly, there is sites that don't use UTF-8 for their rss feeds.

To Reproduce
Steps to reproduce the behavior:

  1. Add https://4pda.ru/feed/rss to your rss feeds.

Expected behavior
I would see normal symbols, not question marks.

Screenshots
image

Desktop:

  • OS: Windows 10
  • Version 0.6.0

建议增加手动同步功能

当前最高抓取频次只能到10分钟一次,对于阅读速度比较快的人来说,还是显得慢了些,没有自主控制同步频次的操作感。建议增加手动同步功能(手动同步全部订阅源或针对某一个/某一组订阅源进行同步),就像outlook有自动同步邮件,同时也可以手动收取一样。

Fever API Support

Is your feature request related to a problem? Please describe.
sync with self-hosted RSS service

Describe the solution you'd like
support fever API (Tiny Tiny RSS, miniflux, etc.)

HTTP/SOCKS5 Proxy

Some of the RSS subscription sources I add are blocked by GFW, so I need to use an in-app proxy.
However, I noticed that fluent-reader currently only uses PAC proxies, and the proxy software I use only HTTP proxy and SOCK5 proxy are provided. Are developers considering adding the option to add HTTP or SOCK5 proxies?
Alternatively, consider invoking a system proxy.
Thank you very much for your efforts!

Incompatibility with FreshRSS Fever API

Describe the bug
I connected Fluent to my FreshRSS (hosted on a YunoHost, in case it changes anything). The connection is OK and it fetch my feeds, but they are all considered as empty.
Another useful info : I have hundreds of feeds and thousands of unread articles (so many that some apps crash due to this)

To Reproduce
Steps to reproduce the behavior:

  1. Install a FreshRSS somewhere
  2. Connect Fluent to it
  3. Try to read your feeds
  4. Nothing to read

Screenshots
image

Platform (please complete the following information):

  • OS: Ubuntu 20.04
  • Version 0.7.0

Additional context
I found no relevant logs server-side, and I have no idea on where to search for logs in this app

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.