# Module ib

The `ib` module contains properties and rules for building Interface Builder documents, storyboards, asset catalogs, and icon sets.

This module is only available on OS X and iOS.

## General Properties

### warnings

Type: | `bool`
Default: | `true`

Whether to print warnings when compiling. Does not apply to icon sets.

### errors

Type: | `bool`
Default: | `true`

Whether to print warnings when compiling. Does not apply to icon sets.

### notices

Type: | `bool`
Default: | `true`

Whether to print warnings when compiling. Does not apply to icon sets.

### flags

Type: | `stringList`
Default: | undefined

Additional flags to pass to the underlying tool (ibtool, actool, iconutil).

## Properties Specific to NIBs and Storyboards

### ibtoolName

Type: | `string`
Default: | `"ibtool"`

Name of the ibtool binary used to compile NIBs and storyboards. This should not normally need to be changed.

### ibtoolPath

Type: | `string`
Default: | `ibtoolName`

Directory where the ibtool binary is located. This should not normally need to be changed.

### flatten

Type: | `bool`
Default: | `true`

Compiles XIBs and storyboards into flattened (non-wrapper) files. Set to `false` to preserve editability of the resulting nib and storyboard bundles in Interface Builder. This property should not normally need to be changed.

### module

Type: | `string`
Default: | `undefined`

Sets the name of the module that the nib or storyboard is a part of. Requires Xcode 6 or newer.

### autoActivateCustomFonts

Type: | `bool`
Default: | `true`

Instructs the ibtool compiler to add custom fonts to the application's Info.plist when compiling XIBs and storyboards, which will cause the fonts to activate upon application launch. Requires Xcode 6 or newer.

## Properties Specific to Asset Catalogs

### actoolName

Type: | `string`
Default: | `"actool"`

Name of the actool binary used to compile asset catalogs. This should not normally need to be changed.

### actoolPath

Type: | `string`
Default: | `actoolName`

Directory where the actool binary is located. This should not normally need to be changed.

### appIconName

Type: | `string`
Default: | `undefined`

Name of the resource in the asset catalog that will be used as the application's icon. Used to generate the partial Info.plist which will be merged into the resulting app. If this property is `undefined`, no application icon will be specified.

### launchImageName

Type: | `string`
Default: | `undefined`

Name of the resource in the asset catalog that will be used as the application's launch image. Used to generate the partial Info.plist which will be merged into the resulting app. If this property is `undefined`, no launch image will be specified. Only applies to iOS applications.

### compressPngs

Type: | `bool`
Default: | `true`

Whether to compress PNG image files when building asset catalogs.

## Properties Specific to Icon Sets

### iconutilName

Type: | `string`
Default: | `"iconutil"`

Name of the iconutil binary used to compile icon sets. This should not normally need to be changed.

### iconutilPath

Type: | `string`
Default: | `iconutilName`

Directory where the iconutil binary is located. This should not normally need to be changed.