Nib files contain archived or "freeze-dried" objects and are used to store interface components on Mac OS X. These are serialised into a proprietary binary format. As with much of Mac OS X, this is a system partly inherited from NeXTStep and OpenStep, which have similar systems, as does GNUStep. They are normally created using Apple's Interface Builder tool. It is an interesting way of doing things, as the interface components are not stored or created in code, but reather serialized as objects, complete with attributes, connection information and class references.

The name 'nib' is a reference to the Cocoa API used on OS X - a nib is the name of part of a cocoa pod, but also an acronym of NeXT Interface Builder. Hmm.. chicken or egg.

An application's interface elements, from menus to windows to dialog boxes, are stored in nib files within the .app bundle.