Introducing Fun With Flags!
Today I would like to share with you my new mobile app, I finally released on Google Play Store. It's called "Fun With Flags!" and it's a simple quiz game that helps the players learn all the flags of the world.
I've worked with mobile before, writing JavaScript code running on mobile-friendly websites, however I have never had an opportunity to get involved in full, end-to-end mobile application development and publishing process. This project was a great way for me to see how it's done and surly it will help me release more stuff in the future.
The idea of the app is nothing new, there are plenty of similar ones already on the market, but since I love travel and geography I thought simple quiz game about all the colorful flags of the world is definitely something worth exploring.
During the process I learnt few valuable things about the JavaScript development for web and mobile and the differences between the two; I hit couple of bumps and had to compromise a thing or two. Luckily in overall I managed to create an app I wanted to and I am happy with the result.
Technology
I knew I want to write my application in JavaScript therefore obvious choice of the technology was PhoneGap. PhoneGap allows you to package JavaScript and HTML code in a native app. It's using 100% width x 100% height WebView control that runs device specific web browser instance therefore powering your JavaScript code. PhoneGap also provides JavaScript API allowing you to access device-specific features, such as vibrate, compass, camera and so on.
Another framework worth mentioning is jQuery Mobile which I used to simplify the creation of the UI elements, such as buttons, list, page transitions and so on.
The core of the app is OO JavaScript, responsible for storing level data, selecting random flags from the continent flag set, manipulating UI and checking the user's progress.
The Game
The game is based on many similar ideas, where user has to find the flag of the country displayed at the bottom of the screen. User has to choose correct flag from presented 12 alternatives. Clearing one level perfectly unlocks next level.
In the Story Mode I hand-picked flags I considered most recognizable and tried to artificially create more difficult levels by selecting flags which I consider less known.
I built several Challenge levels, where used has to correctly identify flags with certain common elements, such as with one dominant color or repetitive feature such as star or cross.
Training Mode allows for constant practice, allowing the user to select the set of flags based on the continent.
I thought it would be cool if users could get different achievements based on the knowledge they gain as they play and unlock next levels.
It took me under 2 weeks to deliver this app, and that includes logo design which I'm particularly proud of :)
Below you can see few screnshots from the app: Main Menu, Game Level, Challenge Level, List of All Flags, Training Mode continent selection screen and Achievements screen.






I hope you enjoyed this post and like the app I developed. If you are a happy owner of the Android phone, get Fun with Flags! on Google Play Store Now!