Console Brawl

Console Brawl

Console Brawl is a React Native app currently available for iOS and Android. This is a side project I've been working on for a while now; from initial concept, through to design and development, and finally deployment to the app stores. This is my first native app build, and as you can imagine I learnt a lot throughout the process.

The basic app concept is to pit two video games consoles against each other and find out which console you prefer. The user will then be presented with a game from each platform, and choose which one they prefer. After a number of rounds, their preferred platform is calculated based on the number of games they liked that are only available on that platform.

It's a pretty simple idea, but something that I thought would be kind of fun! Maybe it's because I grew up in the days of Sega versus Nintendo, and then Sony versus Nintendo. Where it just seemed like everybody was loyal to one or the other and the school yard arguments over which console was better would rage. So in Console Brawl, you can select from any console from the 8-bit era right up to the current generation, and see which one you'd prefer.

This is possible thanks to the Giant Bomb API, which is an open source games database, with data on pretty much every game ever released. The app is built with React Native, it's written entirely in JavaScript and uses Redux for state management. Since it's React Native, it's not a “mobile web app”, an “HTML5 app”, or a “hybrid app”. It's a real mobile app that's indistinguishable from an app built using Objective-C or Java.

Along with the Giant Bomb API, I also created my own API for the app using Node.js. In order to reduce the amount of requests to the rate limited Giant Bomb API. The Console Brawl API was built using Node.js, Express, Mongoose and MongoDB. You can find the public Github repo for the API here.

I'm using Zeit's awesome realtime global deployment service Now to host my Node.js app. I encourage you to check it out how amazingly simple it is to deploy your JavaScript apps with.

I wrote a blog post detailing this process and my experience building a mobile app as a front-end developer. I also built a little promo website for the app, which is also built using React and Next.js You can download Console Brawl from the app store and Google Play for free now.

Website → iOS Version → Android Version →