Swiftpack.co -  PiXeL16/IBLocalizable as Swift Package
Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
Localize your views directly in Interface Builder with IBLocalizable
.package(url: "https://github.com/PiXeL16/IBLocalizable.git", from: "1.3.0")


Localize your views easily in Interface Builder with IBLocalizable.

codecov.io Language CocoaPods Compatible Awesome GitHub license

With IBLocalizable, you can localize your views in Interface Builder easily. Simply set the new Localizable String property that shows up in Interface builder to the value that you added in your Localizable .string file. Most views can be localized this way without a single line of code.


Swift package manager

Add .Package(url: "https://github.com/PiXeL16/IBLocalizable.git",majorVersion: 1) to your Package.swift


Add pod 'IBLocalizable' to your Podfile.


Add github "PiXeL16/IBLocalizable" to your Cartfile.

Manual Installation

  • Please note, installation via CocoaPods or Carthage is much simpler and recommended.

Download and drop /IBLocalizable in your project.

Supported Views

  • UILabel
  • UIButton
  • UINavigationItem (Navigation titles)
  • UIBarItem (BarButton, TabBarItem, etc)
  • UITextField
  • UITextView
  • UISearchBar

Supporting custom views

Custom views can be supported easily. Just create an extension and implement the Localizable Protocol.

If your custom view extends from UIView you only need to extend your custom view and implement the localizableProperty.

For example: lets say that I have a custom view that contains several UILabel and a UIImageView. I will like to localize one of the UILabel.

import UIKit
extension MyCustomView {

    public override var localizableProperty: String?{

            return self.label.text
            self.label.text = newValue

Thats it! :smile:.


After the package its installed simply open your Storyboard or Interface Builder. All of the supported views will show a new Localizable String property.


Since everything is extension based, IBLocalizable should play nice with other libraries or pods that you are using.

Build Performance

Since IBLocalizable only uses IBInspectable and never IBDesignable, your incremental builds will continue to work. (http://www.openradar.me/20690594)

Sample Project

In the Xcode Project you can find a sample project of a simple Login view controller. All of this is automatically localizable in English and Spanish by just using IBLocalizable.





To do

  • Support more views (TableView Cells, etc)
  • Improve sample project.


Chris Jimenez - http://code.chrisjimenez.net, @chrisjimeneznat

:beer: Donate

If you want to buy me a beer, you can donate to my coin addresses below:








IBLocalizable is released under the MIT license. See LICENSE for details.


Stars: 465
Last commit: 2 weeks ago

Ad: Job Offers

iOS Software Engineer @ Perry Street Software
Perry Street Software is Jack’d and SCRUFF. We are two of the world’s largest gay, bi, trans and queer social dating apps on iOS and Android. Our brands reach more than 20 million members worldwide so members can connect, meet and express themselves on a platform that prioritizes privacy and security. We invest heavily into SwiftUI and using Swift Packages to modularize the codebase.

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API