Nuclide supports both native iOS development in Objective-C and cross-platform development in React Native.

This section discusses primarily native iOS development since there is a whole separate section dedicated to React Native.


Features

When you open an Objective-C file (e.g., .h, .m, .mm), you automatically get support for default features such as Automatic Square Bracket Completion.

However, if you compile your project with Buck, you get richer features such as Autocomplete and Jump to Definition.

Running Applications

Currently, the easiest way to build and run a native iOS application is from Xcode itself. You can also use the command-line tools such as xcodebuild, etc.

Buck Integration

Nuclide supports the Buck build system. See the Buck guide for how to build, run, and debug iOS apps.

Debugging

Debugging native Objective-C iOS applications is supported using Buck.

Simulator Logs

When running your iOS project in the iOS simulator, you can open and view the simulator logs directly within Nuclide. From the Command Palette, search for Nuclide iOS Simulator Logs: Start.

Currently, the logs are very verbose as they do not delineate between actual underlying simulator information with the actual running application.