-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
FR: Newsdownloader rebuild - ideas to extend the plugin's functionality #9225
Description
I've been working on a rebuild of Newsdownloader. After my recent failed refactoring attempt, I decided that it would be best for my sanity (and for the plugin) if it were started over from scratch. So far it's going well, and you can see the current progress on my repo.
I'm trying to design the code such that it can accommodate new functionality without over complicating the bread-and-butter of the plugin. Obviously, we want it to download RSS feeds and convert them to Epubs. :) Less obviously, we might want to have a bit of control over how that happens. Here are some ideas:
- Option to set per-feed download locations.
- Ability to group feeds together, and have the feeds' new posts downloaded into a single Epub (similar to the "volumization" feature request).
- Ability to do per-feed downloading (or in the case above, per-group downloading)
- Ability to create an "infinite epub" (new posts are appended to an existing Epub).
- Visual indicator or interface to show which feeds have downloaded new posts.
- UI indicator for whether feed is correctly configured and valid (valid might mean different things for atom/rss)
I can't promise I will actually implement these features. I'm mostly putting them out there in this FR to gather feedback, and to remind myself to design the code so that these features could hypothetically be implemented (wishful thinking?).
Let me know what you think!
References/Resources
Atom Specs
Atom feed for testing
RSS Specs @ Harvard
RSS Specs from RSS Board
EPUB 3.2 Specs
TODO
- Change name of Article/ArticleFactory class to Entry/EntryFactory, which is more in keeping with the spirit of Atom/RSS (it can be anything, not just articles)
- Add error messages to Feed and Entry fetch routines... and other routines that will likely be tethered to user output.
-
Validate feed as part of fetch routine - Make Epub builder, factory, etc.
- Test feeds that list content as a file download
- Unit testing
- Create UI to add subscriptions
-
Create UI to add publications - Create logic to store feed download history
- Get feed entries from initial sync, instead of individual requests
- Create HTML template (that includes a header and footer) to build an entry from body content
- Add option to create download folder (and use feed for the dir name)
- Remove old "results" when no longer relevant
- Make the feed add UI nicer