Latest 1.0.0
License MIT
Platforms ios 11.0, tvos 11.0
Frameworks UIKit


Build Status

Github Current ReleaseCocoapods PlatformsXcode 10.0+iOS 11.0+Swift 5.0+Github Repo SizeGithub Code SizeGithub Closed PR's
Carthage compatible


codebeat badge


A country picker for iOS, tvOS ad watchOS with features you will only find distributed in many different country-picker implementations. The following list highlights the most valuable features:

  • Filter countries by using the searchbar
  • Quickly find a country by using the indexbar on the right side
  • Select a country from the history of selected countries – still in progress
  • Localized by using standard components and Apple’s Locale class
  • Theming support to easily match your design


Columbus is compatible with iOS 11 and higher and builds with Xcode 10 and Swift 5.0.


To install via CocoaPods, simply add the following line to your Podfile and run pod install to install the newest version:

pod "Columbus"


Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks. To integrate Columbus into your Xcode project using Carthage, specify it in your Cartfile:

github "Blackjacx/Columbus"

Using Carthage has some advantages in contrast to Cocopods for this framework. Since it needs to compile the asset catalog for over 200 flag assets it is much faster to build the framework once using Carthage and hard-integrate it into your app. If you use Cocoapods the asset catalog is compiled together with Columbus each time you do a clean build and probably also when Xcode thinks Columbus needs to be compiled again.



let config = DefaultConfig()
Columbus.config = config

let countryPicker = CountryPickerViewController(initialRegionCode: "DE", didSelectClosure: { [weak self] (country) in
present(countryPicker, animated: true)


The repo includes an example project. It shows the main use case of the project – the country picker. To run it, just type pod try Columbus in your console and it will be downloaded and opened for you. The following set of screenshots highlights the features unique to Columbus:

Filtering Indexbar History Localization Theming
Searchbar Indexbar History Localization Theming


… still in progress …


… still in progress …


  • If you found a bug, please open an issue.
  • If you have a feature request, please open an issue.
  • If you want to contribute, please submit a pull request.


Stefan Herold@Blackjacxxx


Localize the cancel button of a UISearchBar


Thanks For The Flag Icons


Columbus is available under the MIT license. See the LICENSE file for more info.

Latest podspec

    "name": "Columbus",
    "version": "1.0.0",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    "summary": "A country picker for iOS, tvOS and watchOS.",
    "description": "A country picker for iOS, tvOS and watchOS with features you will only find distributed in many different country-picker implementations.",
    "homepage": "",
    "social_media_url": "",
    "authors": {
        "Stefan Herold": "[email protected]"
    "source": {
        "git": "",
        "tag": "1.0.0"
    "source_files": "Source/Classes/**/*",
    "platforms": {
        "ios": "11.0",
        "tvos": "11.0"
    "resource_bundles": {
        "Resources": [
    "frameworks": "UIKit"

Pin It on Pinterest

Share This