Six Must Have Developer Tools

There are a handful of tools that every developer can benefit from. These are six tools that I rely on to be productive every day.

Tower

Tower - Git client for normal users

Almost everyone uses Git for source control, but it's complicated to use from the command-line and while Xcode exposes some aspects of git, I prefer to use Tower. Tower provides an easy to use interface that allows access to the basic functionalities of git as well as supporting drag and drop for cherry picking, the ability to undo actions, a conflict wizard, and creating pull requests (although Xcode has some great interactions with pull requests that dwarf what Tower offers).

The basic license is $69/year for a single user. If you need to connect to an enterprise-hosted instance of git, you'll need the $99/year pro version. There is a free trial available. (Tip, mid-summer/early fall there is usually a pretty great discount available.)

Website

A Companion for SwiftUI - Discoverable documentation for SwiftUI

A Companion for SwiftUI - Discoverable documentation for SwiftUI

A Companion for SwiftUI provides easy to navigate and comprehensive coverage of SwiftUI views, protocols, modifiers, styles and more. This is really something Apple should provide as the reference for SwiftUI is opaque and not at all discoverable.

There are inline code samples for most entries and interactive examples that run within the application. A Companion for SwiftUI is $49.99 on the Mac App Store and is also available directly from SwiftUI Labs.

Mac App Store • Website

Xcodes

Xcodes - Xcode version management tool

Xcodes is an open source tool that makes it easy to have multiple versions of Xcode installed at the same time. It also allows you to download and install a version of Xcode ridiculously fast.

Warning: Some people have had issues getting locked out of their iCloud developer accounts using the download functionality. You can download your builds manually from developer.apple.com and just use Xcodes to switch between different versions.

Xcodes on GitHub • Website

Proxyman

Proxyman - Network proxy and debugging tool

Proxyman is a debugging proxy that makes testing and debugging interactions HTTP/S endpoints much easier. Best of all, it's built for macOS and has a fantastic user interface. 

It's somewhat complicated due to all that it offers, including: proxy local applications, including the iOS simulator, as well as remote iOS devices. You can intercept incoming and outgoing requests from an app, set breakpoints, create filters, debug GraphQL, alter the JSON that you send/receive.

Proxyman is available directly from Proxyman, or through a SetApp subscription. The trial version gives you the basics. To unlock everything it's a $69 license for a single device and one year of updates (although it is a perpetual license).

SetApp • Website

iOS Specific

RocketSim

RocketSim - Extend your simulator in many ways

RocketSim, at its most basic level, provides a point and click user interface to xcrun simctl. You get access to some of its feature with the unlicensed version, but you'll need a subscription to unlock the full power of the app.

It makes taking screenshots and recordings of your simulator easy, and can also add the appropriate bezel for the device in the output. It can show touches, prepare images optimized for App Store Connect. You can also compare design mockups to the output in the simulator, overlay grids and rulers, toggle accessibility options (increase contrast, reduce transparency, reduce motion, etc.), and change dynamic type sizes.

In addition to the visual capabilities, you can edit and view user defaults for an application, simulate airplane mode and multiple locations, simulate deeplinks, and push notifications. RocketSim also makes it easy to see inside your application bundle, grant and revoke access permissions, and change locales and timezones.

The build insights will give you detailed stats over time. Track your Xcode build times, if an Xcode version impacted your builds, and tell you which Swift Packages are the slowest to build.

It's available on the Mac App Store for $5.99/month or $39.99/year. There is some functionality in the free version so you can see what it offers.

Mac App Store • Website

Reveal

Reveal - Simulator view debugging tool

Xcode offers a view hierarchy debugger, but it's limited. Reveal, from Itty Bitty Apps, is an incredibly powerful tool for inspecting and tweaking your iOS interfaces. The latest version builds upon those basics and now can provide guidance and auditing of your UI for Apple's Human Interface Guidelines (the HIG), accessibility, UIKit best practices, and more. It works with both UIKit and SwiftUI views. You can also tweak many view settings in realtime and see the immediate effect in the simulator.

This is a tool that Apple should be providing, more than any other on my list. Apple should snap up Reveal (and Tony and Chris) and make it part of the developer tools.

It's pricey at $179/year, but if you're doing any serious iOS development it's an investment that will pay off, especially for applications that require great accessibility. And there is a free trial.

Website