Prototype mobile brewfest app

TAGS:

For the fourth year in a row, we're attending (and volunteering) at the Oregon Brewfest. This year, we decided to write an app to help us in the enjoyment of this lovely yearly event.

OBF is considered by many to be one of the best beer festivals drawing from top brewers in the United States and you can't beat the downtown Portland location along the Willamette river. The OBF site provides detailed information about the 85 brewers and their hand-crafted beers but we wanted something a bit more portable so we prototyped an app we call Brewfest Companion (aka "Bru Note").

We wanted an app that would easily allow the user to flip back and forth between an alphabetical list of brewers and a "grouped view" by style. For example, you're interested in seeing which beer Lucky Labrador is pouring or you want to see all Saison styles in attendance. In either of those views, it should also be easy to read the full description of the beer.

The first task was to source the data from OBF. We wrote a command line tool to parse the ugly and malformed HTML tables. For quick data juggling and manipulation, Python is our language of choice. Adding Beautiful Soup to the mix makes parsing HTML almost painless. At this stage, we manually edited the styles to conform to more standard, generally accepted styles.

After parsing, we generated a small sqlite3 database that can be loaded and queried on the phone bundled with the application.

Next, we built our app using Xcode 3. The structure of the code is a UITabBarController, two UINavigationControllers, and two UITableViewControllers. This allows us to load a tab bar that displays two buttons (Brewers and Styles).

  • when Brewers is selected (default) it loads the brewers table, alphabetical sort
    with the name of the brewer and their beer.
  • When Styles is selected a grouped table is loaded, where each brewer is grouped by style.
  • In either of those views, selecting the beer, displays the brewer, beer, style, ABV, IBU and a description.


brewers-view.jpgstyles-view.jpgbeer-view.jpg

Attached is the source for the project. If you decide to use it, learn from it, extend it, or you're interested in hiring us to develop an app for you, please contact us.

Comments

  • Showing 1-0 of 0

Post new comment

Image CAPTCHA
Enter the characters shown in the image.