WikiCountry is an app that lets you learn quick facts about countries all over the world, including each of their capital city, flag, official languages, currencies, and more!
Read further about a country via an in-app Wikipedia browser. Then let others know you’re a genius geograpeep! It's your geography Swiss-knife!
- App Store (Expired due to Developer account not renewed)
- Mac App Store (Expired due to Developer account not renewed)
Addressed below are the most prominent concepts I was able to learn and implement in the app.
Concept | Details |
---|---|
`Model-View-Controller` Architecture | Codebase is structured with MVC-oriented architecture in mind, with separation of concerns |
`Coordinator` Design Pattern | I also deployed the `Coordinator` concept introduced by Soroush Khanlou to separate navigation from view controllers |
Network Monitoring | Network logic is designed to switch between online-offline internet connection status. If online, it can be used to fetch JSON from server, otherwise it can failsafe to parsing from a bundled JSON file. |
Dynamic image ratio | The diversity of world flags is respected with dynamic flag image ratio, namely the Swiss 🇨🇭 or Nepali 🇳🇵 flags. |
Storyboard and Programmatic AutoLayout | A mix of conventional Storyboard and programmatic AutoLayout used efficiently in the code. |
WikiCountry was initially coded in correspondence to Paul Hudson’s "100 Days Of Swift" challenge, day 59.
However, as I was able to expand WikiCountry much beyond the course’s original scope, I enjoy using WikiCountry so much for being a geography fanatic, and I’d love to offer it as a gift to like-minded Apple users out there, I have decided to publish it to the App Store.
Please do your due diligence with the info provided by WikiCountry before citing any in your professional work :)
The concept and instruction to deploy coordinator pattern is from Soroush Khanlou and Paul Hudson.