[ Paperboy-GUI screenshot ]Paperboy RSS aims to provide the all around best open-source set of tools for aggregating and reading news feeds. It uses XSLT letting you effectively transform XML documents into any literally text format. What does this mean? Simple, Paperboy can read any feed (or other XML) format and output any format. Paperboy is under active development and is available in a fully stable release version.

Current features include:

Paperboy is designed so that it has a very wide user audience. Both everyday users wanting to keep up on political blogs and seasoned webmasters wanting to have their page generated from their feeds hourly can benefit from it. Paperboy is distributed under the GPL, meaning you can download, modify, and redistribute it as long as it remains free. See the downloads section for more information on how you can get the latest version.

Paperboy RSS version 1.0.0 (stable) released!

After a year of programming, Paperboy RSS v1.0 has been released. A big thanks goes out to all who helped out in the project for creating such a great program, thanks guys. Please download the current release and give us feedback on how we can make Paperboy RSS better.

How Paperboy Works

Paperboy is designed so that the core components are in a base program, and then extension programs (like Paperboy-GUI or the daemon) are provided for specific user needs. This makes the code easier to maintain and also makes it easier to use just the parts you want without all the bloat of a shambling behemoth. Following is a basic explanation of how the paperboy base program handles inputs and acts on them:

[ processing ]

As you can see, paperboy really has only three internal steps that it needs to complete: parsing user input, downloading feeds with libcurl, and applying XSLT stylesheets to those downloaded feeds. More methods have also been added in the base program (such as the use of joining mode) but you can read more about that in the documentation.

Paperboy also includes a couple of extension programs, programs meant to enhance the ability of the base program. Extension programs work by calling the paperboy base program to do the dirty work. This means that an extension program can do its main chore better and not have to worry about downloading feeds, parsing stylesheets, etc... This also means that the base program can be kept very portable. For example, consider what would happen if we tried to include GUI support in the base program. We would have to decide on a windowing library to use, eliminating a lot of people. This way, you can also run the base program without Paperboy-GUI installed.

Because extension programs need to know certain things (like the path to the paperboy base program executable), configuration files are sometimes required. You can read more about their syntax and structure in the documentation.