I needed to undertake a programming project with a graphical user interface, so I decided on something based around Philadelphia. While I live in the suburbs, I find myself going to Philly for school, work, or recreation. Because of this, I end up relying on public transportation and am subjected to the city’s weather, which is often different than that in my town.
I decided to create an aggregator that is broken down into quadrants. One quadrant is for transportation, so it will give you regional rail information, bus information, as well as traffic problems. A second quadrant reports Reddit headlines from r/Philadelphia and some associated information about them. A third quadrant reports weather and forecast information for Philadelphia and surrounding areas. The final quadrant gives tweets pertaining to Philadelphia news as well as SEPTA, PATCO, and NJ Transit information.
The resulting program is a simple Java Swing application called “Philter” that can be run on any machine with internet access. While you do have to get your own API keys and build the project yourself, the source is freely available and modifiable. A lot of the grunt work in this program is actually carried out by the APIs (six are used in total) which return results to calls in the popular JSON format.
If anything, Philter can be seen as a work in progress as some work can be done to increase functionality (add traffic maps, etc) as well as aesthetics (layout, etc). It’s a good program if you are interested in learning about JSON parsing or how basic GUIs work.
You can currently get the project from its GitHub repository. Feel free to fork or request a pull.