GAEmes: A board game database built on Google App Engine

My first proper game
It's no surprise to many of you that I'm pretty big into board games. For me it all started when some friends invited me to a game night at their place back when I was in college. We played crazy games like 7 Wonders, Small World, and Settlers of Catan. These same friends were the ones who gave me my first proper game: Bohnanza.

Fast forward several years into the future and that one game turned into a collection of over 100 games. Keeping track of that collection starts to get a bit tedious when it's large and distributed throughout different closets and shelves in the apartment. As a result a few years ago I cobbled together a MySQL database with a shoddy html/php frontend.

This database allowed me to query my collection for games that could accommodate a certain player count and/or time limit. It was particularly useful when friends would come over and we'd sit down to figure out what to play.

Now that I've got this blog to look after I figured a fun project would be to open source my work in a more useful way. As a result, I've just publicly released the initial version of my most recent project: GAEmes

GAEmes is essentially a re-creation of that database I made so long ago. In true fashion the front end looks like rubbish, but it's functional.

GAEmes database landing page
A couple of things that set GAEmes apart from my first attempt are it lives in Google App Engine and actually has an authenticated admin page. App Engine is great for a number of reasons. It's scalable, low maintenance, free*, and isn't burning a hole in the electric bill at the apartment. The admin interface allows for the addition of games to the database by app owners (authenticated by Google account).

GAEmes database admin page
The best news is the only prerequisite is having a Google account (and a bit of time to fiddle with deploying to App Engine). If you're not interested in the code on GitHub perhaps you'll find the official Riley GAEmes Database interesting.

~MJ

*Free, assuming you stay beneath the daily quotas and don't have a billing account set up.

4 comments:

AoZain said...

I need dis

Jimmy J said...

Ahhhh… for the love of Bohnanza! You must have some really cool friends!

Jon Crain said...

Nice promo for GAE :)
Also, this is severely lacking data for the current ranking, description, etc from boardgamegeek of your games. It looks like they have a fairly nice API to use...

Matt Riley said...

@David
I've put some basic deployment instructions on the github page. Definitely happy to help out if you're interested :-)

@Jim
Yea, they're alright :-P. Bohnanza is still my all time favorite game!

@Jon
I had looked at the BGG API briefly. It was enough of a project getting it to this point (learning python, GAE, and interacting with the datastore). Perhaps v1.0 will have some type of BGG integration.