The RSS Reader is 98% complete. The main goal of pulling in a news feed and showing it on-screen is finished.
Each feed is described as a name and a web address, one per line in a text file. The text file is then read by the program that uses the information to load news information. Each line consists of the name of the feed a tab -> and the actual web address to the feed. The information on each line is used by the program to show a readable name for a news feed and all the headlines that can be downloaded for that feed at the actual web address associated with that feed name.
RSS Feeds File
The program is driven off a feeds text file that contains each feed web address. The text file lives in the same file folder as the program. The text file has been the same since 2015 while the user interfaces on top of it have changed. Prior to this, I used a SQLite database but gave that up as I find the plain text file requires less code and since the needs of the program are simple, the text file better supports simplicity.
RSS Reader @ 4K Resolution
Since 2013, I’ve written and completed 2 or 3 different versions of the RSS reader. The earlier versions work well but have a more traditional UI design. They look like traditional windows applications. Those versions work okay with monitors that are not set to 4K resolution and that required a redo. I later updated some of those earlier versions to handle 4K and they run just fine under a 4K resolution. I decided to continue with a new layout as that works better for the future. This new version is calibrated to work with 4K resolution and has a simpler foundation. The way news feeds are pulled and saved for offline reading is much cleaner and harmonious. Finally, I saw an opportunity to update the layout to potentially work for both desktop and mobile environments.
RSS Reader Screen Resized
A difficult issue with breaking with a traditional design is handling resize adequately. The user interface technology behind this program, FLTK, works well for traditional layouts and automatic sizing of different parts of the screen. Effort was required work FLTK into the ideal design that is also somewhat fluid.
Shrink and Enlarge
System Compatibility and Future Plans
The program was built on and is default compatible with Fedora Linux Workstation with FLTK and Poco C++ libraries installed. The GitHub repository for the program contains everything to build the program on the command-line and run it. The last bit of functionality is to allow the addition of new RSS feeds without the need to hand edit the feeds text file. That is straightforward but I ran out of time for today. Later, it may be possible to see this program entered into the official Fedora repository. Maybe publish to Android. I do not plan on making a Windows version but the open source nature of the program makes compiling it for Windows a trivial affair.