iOS Dev Tools

The greatest iOS development tools, including websites, desktop and mobile apps, and back-end services.
Updated daily by Adam Swinden.

If you have any suggestions for tools that you would like to see added to the list, please let me know by email, Twitter, Facebook, Google+ or


The iOS Dev Tools audience includes some of the most engaged iOS Developers looking to find the best tools and services to help them build the next top app. If you've got something awesome to shout about that developers are going to love, then iOS Dev Tools is a great place to promote it. Learn more.

Recently Added

New Sensor Tower

An App Store Optimization service to help you optimise your app's visibility in the App Store. Sensor Tower lets you automatically track daily keyword rankings for your app and its competitors to identify which are working the best. You can also get tips to improve your existing keywords and suggestions for new keywords that include search traffic estimates, and competitiveness difficulty ratings. Once you've found keywords that are working well, Sensor Tower can help you translate them into 20+ different languages to improve your rankings in other countries.

New SmudgeKit

A drop in replacement for UIWindow that adds circular views to the screen as visual representations of all touch events. SmudgeKit is ideal for creating app preview videos or screenshots so that viewers can see exactly where touch events are happening. There is practically no implementation needed to use SmudgeKit - you just need to replace your root UIWindow with SmudgyWindow. If necessary you can also change the appearance by editing the SmudgeLayer implementation.

New Spectrum

An OS X app for creating and managing beautiful colour schemes. Spectrum uses colour theory and harmony rules to make it easy to create aesthetically pleasing colour schemes by suggesting complementing shades and tints that go well with your existing swatches. It can also automatically generate colour schemes from images and lets you capture colours from your screen using the built-in colour picker. Unfortunately it cannot export to UIColor or NSColor but it does support CSS, PNG, Photoshop and Illustrator. There is also an iOS version so you can create colour schemes on the go!

New CocoaLumberjack

A fast and simple yet powerful and flexible logging framework for Mac and iOS. CocoaLumberjack is really easy to use as it's DDLog macros use the exact same syntax as NSLog, but is an order of magnitude faster and offers many more powerful features. You can configure it send log statements to multiple loggers such as a file, the console, or a custom logger to send your log statements to a database or over the network. It's also extremely configurable with options to change log levels per file, logger or Xcode configuration and also to compress archived log files and upload log files to a central server.


A tool that lets you manage all your iOS provisioning profiles from the command line. With just one command, Sigh can download the latest provisioning profile for your app, renew a provisioning profile, repair a provisioning profile when it is broken and create a new provisioning profile if it doesn't exist already. It supports App Store, Ad Hoc, Enterprise and Development profiles as well as multiple Apple accounts, multiple teams and storing your credentials securely in the Keychain. Sigh is a better option than letting Xcode manage everything as it gives you control and can easily be integrated into your CI-server.

Sort by Date



A massive online database of user interface designs. UICloud consists of over 46,000 UI elements and 1,200 UI kits each categorised by platform (including iOS and Mac), UI element type and colour. You can browse the collection by category, latest, top rated, most popular and search for UI keywords. Most of the designs include free to download PSDs and, in the case of some web designs, HTML and CSS files. Also, most designs are released under the Creative Commons Attribution 3.0 License so are also free to use with attribution.


A free iOS design kit worth $80 from Invision. The kit is comprised of 138 templates and over 250 components across 8 different PSD files, covering everything from e-commerce and multimedia to navigation and social. TETHR follows a clean and modern design and aims to match the flat style of iOS 7. Elements can be mixed and matched by drag-and-drop to create any iPhone interface and all assets are retina ready.

Envato Market

A collection of websites where you can find and buy everything you'll need for your next project. Envato Markets include: Code Canyon where you can get plugins, app components or complete templates; Video Hive, Audio Jungle and Photo Dune where you can find stock video, audio and photos respectively; 3D Ocean where you can buy models and textures for 3D projects; and more. Prices start at $1 so you should be able to find something within your budget.

Mobile Awesomeness

An online gallery of mobile designs that aims to be a place for people to find inspiration, promote their work and connect with potential clients. Mobile Awesomeness is like many other gallery sites except they use a rating system where designs are rated on UI/UX, design and concept, with the highest rated designs being awarded Gold and Silver awards. The rating system helps to surface the best mobile designs so you don't have to wade through lots of mediocre designs to get the best inspiration.


A platform to showcase and discover photography, graphic design, illustration that is now part of the Adobe family. The types creative work you can find on Behance are definitely very broad but a quick search of 'iOS' can unearth beautiful iOS designs. Unlike other design showcase sites, Behance lets designers post much more detail about their work with long scrollable images. Definitely a great place to get inspiration or contact great designers.

See more Inspiration ›


Attributed String Creator

A simple Mac app that makes creating complicated attributed strings really easy. Attributed String Creator gives you a rich text editor where you can write or paste your text and style it up with fonts, sizes, styles, colours, alignment and more. It will then generate all the iOS or OS X compatible Objective-C ready to paste into your Xcode project.


A small utility that makes the custom fonts in your iOS projects available in Interface Builder. Since iOS 3.2, you can use custom fonts in your iOS apps by adding the UIAppFonts Info.plist key. Unfortunately though, these custom fonts are not available when editing your xib files in Interface Builder. MoarFonts fixes this.

iOS Fonts

A complete list of all the system fonts available on various versions of iOS (from iOS 4 to current). Includes search, preview and iPhone/iPad availability.

See more Typography ›


New Spectrum

An OS X app for creating and managing beautiful colour schemes. Spectrum uses colour theory and harmony rules to make it easy to create aesthetically pleasing colour schemes by suggesting complementing shades and tints that go well with your existing swatches. It can also automatically generate colour schemes from images and lets you capture colours from your screen using the built-in colour picker. Unfortunately it cannot export to UIColor or NSColor but it does support CSS, PNG, Photoshop and Illustrator. There is also an iOS version so you can create colour schemes on the go!

Sketch UIColor Category Generator

A Sketch plugin that generates a Swift Extension or UIColor Objective-C category from your Sketch documents. A menu option automatically create a blank colour swatch sheet in Sketch that you can then add custom colours and names to. With a second menu option the plugin will ask you for a category prefix and generate the .m and .h files containing class methods for each of your custom colours with the names you provided. A very simple but handy plugin, especially if you already use Sketch to design your apps.


A well organised, labeled and layered PSD of the iOS 8 GUI. The team at Teehan+Lax have released several versions of this iOS GUI PSD in the past, but this latest update includes all the major iOS 8 assets individually drawn as vector with a minimal amount of layers and shapes for easy editing. It also includes vector drawings of the iPhone 6 in Gold, Silver and Space Grey, along with both standard and zoomed views. The iOS 8 GUI PSD is a great tool for mocking up apps, concept ideas or create custom interface elements that work harmoniously with those native to iOS.

The Ultimate Guide To iPhone Resolutions

The debate as to whether fragmentation is becoming a problem on iOS is raging on, but I will certainly admit that I find it difficult to keep track of all the different screen resolutions. Thankfully, the people behind PaintCode have created a very handy guide that makes it a lot easier. The guide covers every device from the original iPhone to the new iPhone 6 Plus detailing points in coordinate space, rendered pixel resolutions, downsampling/upsampling scales and physical device sizes with pixel density. They've even included details of Display Zoom on the iPhone 6 and 6 Plus.


A clever iPhone app that turns your Photoshop Layer Comps into interactive prototypes. Composite automatically connects to your Photoshop documents and creates screens and interactions without having to export any images. By naming your Layer Comps in a certain way you can add tapzones and native transitions between screens with specific animations. You can also make certain elements stay fixed for realistic scrolling - perfect for navigation bars and toolbars. Finally, you can use Real-time Preview to get live updates of your work on the device while you're designing and tweaking in Photoshop.

See more Design ›

Images and Icons

Font Awesome

A free font comprised of over 400 scalable vector icons. Font Awesome includes icons for pretty much any use including spinners, file type icons, currency symbols, directional icons and loads more. The font was originally designed for use in the Bootstrap HTML, CSS, and JS framework but you can download the font as an OTF and TTF so it's ready to include in any iOS app. Font Awesome is fully open source and is GPL friendly so you can use it for commercial projects.


A collection of vector icon sets for designers and developers. Symbolicons are a family of simple, precise, and awesome icons designed by Jory Raphael. There are currently nine individual icons sets available that each have their own style (including a set designed specifically for iOS 7) or you can get a discount by buying one of the four bundles. The icon sets are also available as fonts from Symbolset.

Icon Strike

A simple website from Flinto that allows you to easily test iOS icon designs on your home screen. Just upload you app icon and it will give you a link to open on your phone which will install a web app with your icon. The benefit of installing a web app to your home screen is that you can preview the icon in all the other places it appears such as Spotlight results or the Settings app.


A really simple app for creating retina and non-retina images. Unlike many other apps that do similar things, Sizes is really minimalistic and fast to use - it doesn't have any windows, you just drag your files onto the app icon, wait a second and the output is saved in the original directory. It also gives you options to append the "@2x" suffix so you don't have to remember, or use a completely different suffix of your choice.

Edge Insets

A simple Mac app that helps you generate the correct UIEdgeInsets to use with resizable UIImages. Just load an image into Edge Insets and drag the guide lines until the image scales correctly in the preview. The Objective-C code is generated for you ready to copy and paste straight into Xcode.

See more Images and Icons ›



Just like Swift Playgrounds, but for Objective-C. Like their Swift counterparts, KZPlaygrounds allow you to test out bits of code and see results in real time without having to build and run each time you make a change. KZPlaygrounds feature extra controls for tweaking values and images; auto-animated values; buttons; and access to all iOS features, so you can prototype production ready code. They are also IDE agnostic, once you run it, you can modify the code even from vim. Krzysztof Zabłocki has even managed to perform all sorts of wizardry to make KZPlaygrounds faster than Swift Playgrounds.


A simple yet powerful tool for working with regular expressions. Patterns helps you create regular expressions quickly and effortlessly with syntax colouring that makes it easy to see how your pattern is interpreted by the regex engine. Matches and replacements happen in real time while you edit your pattern and when you're happy with your regular expression you can copy match and replacement code snippets for use in a number of different programming languages including Objective-C. There's also a built-in regular expression reference sheet that helps you find the piece of regex syntax you need.


A website that allows you to write and run Swift from within the browser. RunSwift gives you a simple editor where you can write Swift, and a console that displays output. While you cannot import abitrary modules, a small subset of Foundation is included making it a great place to quickly try out some Swift without firing up Xcode. There is also a step-by-step interactive lesson that will walk you through the basics of the Swift language while allowing you to continue to play in the editor. RunSwift is also fully responsive so you can even write Swift on your iPhone or iPad!

Faux Pas

A Mac app that inspects your iOS or Mac app’s Xcode project and warns about possible bugs, as well as about maintainability and style issues. Faux Pas goes beyond what the Clang Static Analyzer can do by looking at more than just your code. It can find all sorts of problems in your Xcode projects including bugs that may only manifest later on, resource file errors, localisation errors and loads more. It can even help to enforce best practices or a certain code style. It can be integrated into Xcode to run during builds or can be launched from the GUI or command line.


A regular expression development tool for OS X. RegExRX is based on the PCRE library which allows users to develop and store patterns that are compatible with most flavours of regular expression. Features include live matching and replacing against source text, a templates menu of frequently used patterns, saving patterns, matches and result text to be used later, and loads more. Best of all you can export your patterns to several programming languages including Objective-C.

See more Editors ›


Dash API Docs

The popular OS X documentation viewer is now available on iPhone and iPad. Dash is an API documentation browser that gives your iPad and iPhone instant offline access to over 150 API documentation sets including iOS, Swift and many others covering web technologies, popular third party libraries, databases and more. You can also import any other docsets generated using popular tools like Appledoc and Doxygen using iTunes. Navigating the docsets is easy and fast thanks to full fuzzy search and complete table of contents.


An Objective-C API documentation generator that creates Apple-like source code documentation from specially formatted source code comments. The comment formatting required is easy to follow and very readable, in fact your comments are probably already in the right format (you are writing comments, right?). The output is visually appealing documentation in the form of HTML as well as a fully indexed and browsable Xcode documentation set. Since Xcode 5, there is no official support for 3rd party docsets but tools like Docs for Xcode help to fix that.

Docs for Xcode

With Xcode 5 Apple unfortunately chose to remove support for 3rd party docsets. The documentation viewer will still display any that you have installed but will no longer update them and you can't add new docsets. Docs for Xcode fixes this by letting you install docsets, subscribe to feeds and keep the documentation always up to date. An absolute essential for everyone using Xcode 5.


Hosted documentation for Objective-C libraries from the guys behind CocoaPods. The list of libraries is absolutely massive and supports multiple versions. The docs are generated using appledoc so should look familiar if you are used to Apple's documentation. There are also links to download and install selected docs in Xcode and Dash.


An API Documentation Browser and Code Snippet Manager for Mac. You can search offline documentation for over 80 APIs including iOS, of course. You can also create your own documentation sets and it integrates with lots of plugins and resources.

See more Documentation ›

Xcode Plugins

Auto Importer

An Xcode plugin that lets you quickly import your headers on the fly while typing. Just press the ⌘ + ctrl + H shortcut while typing and a popover appears with the selected text. If the selected text matches the name of a class/protocol or category method (classes are shown as [C], protocols as [P] and category methods as [ClassExtended()]), it will import the header at the top of the file, otherwise it will show a list of filtered identifiers and headers. Auto Importer is a great time saver, available on Alcatraz or GitHub.


An Xcode plugin that displays deltas against a git repo in the Xcode source editor once you've saved the file. Although Xcode shows you which files are currently added or modified in your project, there is no simple way to see what exactly has changed inside the file. With GitDiff, differences are highlighted right next your code with orange and blue lines for modified and new code respectively and red lines to indicates code that has been removed. You can even hover over the deleted and modified line numbers to see original source. GitDiff is available in Alcatraz or you can download the source from GitHub.


An Xcode plugin that allows you to use colours in the Xcode debugging console. XcodeColors really helps with debugging by letting you make error messages stand out by printing them out in red, or logically separate parts output from your code by logging in different colours. There is no limit to the colours you can use - you can specify any RGB value in your source code for foreground and/or background colours. XcodeColors defines a handful of macros that you wrap around your NSLogs to print in your desired colour, or you can define your own macros to automatically log in different colours.


An Xcode plugin that provides a GUI for CocoaPods. Once installed you access the GUI by selecting 'CocoaPod UI' from the 'Product' menu. If your project doesn't yet have a Podfile one will be created, then you can start browsing the list of available pods. Pods are arranged in a searchable alphabetical list, and when you've found what you need the latest version of the pod can be added to your project with one click. You can edit existing pods to change the selected version and add external sources or remove them from your project. CocoaPodUI will also check for outdated pods with the option of showing an outdated count on the Xcode icon.

Injection for Xcode

An Xcode plugin that allows you to make changes to the implementation of an Objective-C class and have it take effect as soon as the class is saved without having to restart the application. It works by "swizzling" the new method implementations onto the original class so they take effect immediately and works for both OS X and iOS apps in the simulator or iOS device. It's a really useful utility for tweaking interfaces, animations or games and the code is open-source on Github.

See more Xcode Plugins ›



An OS X app that lets you convert any valid JSON object to a class in one of the several supported languages. As you type or paste your JSON, JSONExport will display a preview of the generated content including a constructor and utility method for converting the object back into JSON. You can also change the root class name, class prefix or package name before saving the generated files. JSONExport supports several languages including Swift classes or structures using built-in NSJSONSerialization, Swift classes using the SwiftyJSON library, and Objective-C. JSONExport is written in Swift and open source on GitHub.


A free service that lets you easily share your code snippets online. Just copy-paste your code, save it and you will be given a URL to share you code with anyone. You or anyone else can then edit the snippet and save a new version with a new URL. You can access all versions of a snippet from any of the version URLs. You can also enable syntax highlighting by selecting the language when you create your snippet (Objective-C is supported). Snippets are kept forever if it gets at least 1 view every year and accounts are coming soon, at which point you will be able to search and delete your code snippets.


A cross platform development environment that lets you build native apps for iOS, Mac and other platforms in C#. Xamarin lets you write C# that can be shared across all the platforms it supports but uses native UIs for each platform to give the best user experience. Xamarin includes a complete IDE, Xamarin Studio for Mac and Windows, or you can use Xamarin with Visual Studio. They also offer other features to allow you to utilise over 20,000 .NET libraries and to test your app on hundreds of real devices in their Test Cloud.

RemObjects C#

A compiler and toolchain that lets you write native apps for iOS, Mac, Android, Windows and Windows Phone in C#. RemObjects C# isn't a .NET bridge, but instead provides direct access to each platform's native APIs. The RemObjects C# language provides access to all Cocoa, Cocoa Touch and the Objective-C Runtime frameworks including external open source and third party libraries and compiles to a fully native executable for the Objective-C runtime.


A service that lets you build your Objective-C iOS apps natively for Android. It compiles Objective-C to native ARM and x86 machine code so no virtual machines, emulators, or Java translation. It's primarily aimed at games as it supports several of the most popular game engines. I've not tried it myself but it is already used by several very popular games.

See more Code ›

Networking and APIs


A HTTP debugging proxy app for OS X. Cellist puts a proxy between your HTTP clients and the Internet so once you have set the proxy configuration on your device properly, all HTTP traffic will be displayed in Cellist. Cellist records all HTTP traffic from any Mac, Windows PC, Linux, iOS devices or Android phones, and chooses the proper viewers to make it intuitive to inspect body data. It can also use man-in-the-middle interception to reveal HTTPS traffic.


A service that helps you turn any website into a structured API. kimono recognises patterns in pages so you just select the elements of the website that make up your data and kimono will create a JSON, CSV or RSS feed. Obviously you need to make sure you have the right to use the data on a website, but if you do, this is a great service to easily create a simple API for use in an app from your existing website. There are also tools that let you turn your API into a responsive web app without any code.


Another HTTP client for Mac that provides many of the same features as other clients such as custom headers and URL parameters. However, HaTTiP also supports execution of a pre-processing script that can dynamically modify the outgoing request. The developers have provided some examples on GitHub for Base64 encoding/decoding and BasicAuth. HaTTiP is also document based so you can save requests as files to be reused later.


A free HTTP client available on the Chrome Web Store. Postman lets you build simple and complex HTTP requests quickly, including custom query paramters, headers and several authentication methods (Basic Auth, Digest Auth and OAuth 1). Every request is logged in history, or you can save requests in Collections to be loaded later or shared. You can also set up environment variables to help with switching between local, staging and production servers.


A fully featured HTTP and REST API tester for OS X. Paw helps you create custom HTTP requests with dynamic values and smart completion which you can organise by host, method or reponse code. It can also generate code from the requests you make in a number of languages, including Objective-C for NSURLConnection or AFNetworking.

See more Networking and APIs ›

Mapping and Location


It's now been over a year since Apple Maps launched with iOS 6 and it's still lagging a long way behind its competitors. If you want to include maps in your app but don't trust Map Kit, Mapbox is a great alternative. They provide a drop-in SDK that is a bottom-up, open source rewrite providing the same features as Map Kit as well as offline map caching, extensive map customisation and loads more. Mapbox is used by some pretty big names, including Foursquare and Pintrest, and the map data is powered by the OpenStreetMap project so is very accurate and up to date. The free plan gets you 3,000 map views per month but there are a decent selection of paid plans if that's not enough.

See more Mapping and Location ›

Graphics and Animation


An iOS framework from the developers at Facebook that aims to keep complex user interfaces smooth and responsive. It's built to go hand-in-hand with Pop's physics-based animations, but also works with conventional app designs and UIKit Dynamics. The framework centres around AsyncDisplayKit Nodes that provide a thread-safe abstraction layer over UIViews and CALayers. You can construct entire node hierarchies in parallel, or instantiate and size a single node on a background thread. Comes with drop-in replacements for UIImageView, UITextView and UITableView.


A powerful Mac app that turns vector drawings and animations into Objective-C Core Animation code. With QuartzCode you can create shapes using the vector drawing tools provided or import existing assets from SVG or images. You can then apply animations to layers using more than 25 animation keypaths and edit the animations in real-time. Animations can be combined or sequenced and you can choose between linear timing functions, ease in, ease out or create custom timing functions using a graph to create dynamic feeling animations. iOS or OSX Objective C code is generated in real time while you make your changes ready to be pasted into Xcode. QuartzCode is a great tool for learning and mastering Core Animation.


An open source interaction design toolbox for Quartz Composer built on top of Facebook's Origami framework. Avocado provides ready-to-use patches that can be easily combined to create fully-customized interactive prototypes without writing a line of code. While Origami provides some much-needed low-level functionalities (for instance, a Color Transition, a Switch, and so on), Avocado provides ready-to-use interaction models and animations. Examples include: Carousel - creates a swipeable carousel of images; Bistable - makes an element snap to two positions; Flip - creates a card that can be flipped back and forth; and iOS Keyboard - provides an interactive keyboard.


A "shell" for the Quartz 2D graphics programming API. You can use Schwartz as a sandbox in which to explore and learn Apple's graphics APIs using the Python programming language. Your Python scripts have access to the Quartz 2D graphics API. Drawing performed in Python is rendered in the Canvas area on the right. An integrated Python debugger allows you to set breakpoints and step through your graphics code for improved learning and debugging. Schwartz also features full syntax highlighting, code auto-completion with fuzzy matching, and tabs for writing your scripts; project-wide search and replace using regular expressions; and an integrated documentation browser.


An online texture generator for creating sprite sheets, texture maps and icons. tPacker is free to get started (there is a monthly subscription to unlock all features) and is compatible with many popular games engines including Unity and Cocos2d. It supports creating texture maps from images and animation sprite sheets from individual frames including previewing the animation before exporting. It also offers generation of icons for both Android and iOS in all sizes.

See more Graphics and Animation ›



A utility that makes it easy to create and generate custom Core Data managed object classes. Mogenerator manages two classes for each entity in your Core Data model: one for the code generated by Xcode, and the other for your custom logic. Mogenerator combines the two classes so you can regenerate the Xcode class without being worried about overwriting your custom logic. There is also a tool called Xmo'd that seamlessly integrates mogenerator into Xcode.

Core Data Editor

Core Data Editor lets you easily view, edit and analyze applications‘ data. Core Data Editor is compatible with Mac and iOS applications and supports XML, SQLite and binary stores, visualizes all relationships and is able to edit the data and generate Objective-C code for the data model. Extremely handy and much easier than reading the SQLite database directly.


Another good SQLite client for Mac that lets you create, design, edit and browse SQLite 3 database files. Also includes data filtering, data import and export, and SQL autocompletion.

SQLite Professional

An SQLite client for Mac that includes version integration, filters, export and more. A free read-only version is available as well.

See more Databases ›


New CocoaLumberjack

A fast and simple yet powerful and flexible logging framework for Mac and iOS. CocoaLumberjack is really easy to use as it's DDLog macros use the exact same syntax as NSLog, but is an order of magnitude faster and offers many more powerful features. You can configure it send log statements to multiple loggers such as a file, the console, or a custom logger to send your log statements to a database or over the network. It's also extremely configurable with options to change log levels per file, logger or Xcode configuration and also to compress archived log files and upload log files to a central server.

iOS Console

A free iOS console log viewer for OS X. iOS Console is a viewer inspired by the built-in OS X Console app, making it familiar and simple to use. It displays all messages logged by any connected iOS devices and, unlike the (difficult to find) log viewer built into Xcode, adds filtering and text highlighting to narrow down the logs. You can also quickly add a marker in the console log to make finding your place easier, and there are shortcut buttons to quickly access Crash Logs, Terminal and Activity Monitor.


A collection of LLDB commands to assist in the debugging of iOS apps from the engineers at Facebook. Chisel includes commands for auto-layout debugging, adding breakpoints and watchpoints, performing actions on views and layers, logging and loads more. Some of my favourites include 'border' and 'unborder' to add and remove a border to any view and 'fv' to find a view in the hierarchy whose class name matches the provided regex. Chisel is open sourced on GitHub and the authors welcome pull requests if you have any commands you would like to add.


A powerful in-app debugging tools from the team at Flipboard. FLEX (Flipboard Explorer) is a drop-in library that runs entirely inside your app, so you don't need to be connected to LLDB/Xcode or a different remote debugging server. You can inspect and modify views in the hierarchy, view and modify the properties and ivars on any object, dynamically call instance and class methods, view NSUserDefaults and the file system within your app's sandbox, access any live object via a scan of the heap, and more. It's an essential debugging toolkit.


A remote debugging toolset that uses Chrome Developer Tools on your browser to debug your application's network traffic and managed object contexts. PonyDebugger combines an iOS client and gateway server to send your app's network traffic through a proxy so you can use Inspector's Network tools to debug in the same way you would on a website in Google Chrome. You can also use PonyDebugger and the Chrome Developer Tools to browse entities and managed objects in a Core Data managed object context, display your app's view hierarchy as an XML tree, and remotely log text and object dumps.

See more Debugging ›

Backend Services


A new suite of cross-platform mobile development tools from Twitter that helps developers solve several common challenges. Fabric is comprised of all seven of Twitter's SDKs organised into three distinct 'Kits': the Crashlytics Kit, the Twitter Kit, and the MoPub Kit, covering crash reporting, testing before going live, driving downloads, onboarding new users, social features, understanding your apps’s growth and monetisation. It's also really easy to incorporate the tools using a Mac app that integrates with Xcode to walk you through the steps required.


A tool for helping you design the best API before having to write any code. Apiary lets you design and test your API with an API Blueprint written in a open sourced, Markdown-like language that defines your API endpoints and how they should work including a mock server, tests, validations, code samples and your language bindings. Apiary will also convert your API Blueprint into interactive, comprehensive documentation for your API that you can share with other developers. It also offers a Traffic Inspector that will show exact data for requests made on your API, down to HTTP level, and outline differences from API documentation, or even perform validations against your schema.


A backend as a service that provides an API to both store and sync data in realtime across all your clients. When data changes, apps built with Firebase update instantly across every device - web or mobile. Firebase-powered apps also work offline, data is automatically synchronized when your app regains connectivity. With Firebase you don't need to write any backend code - or worry about scaling that backend.


A cross platform app communication service that can provide a persistent connection for server-to-user or user-to-user WebSocket style communication. PingPal is currently in beta but they have drop-in iOS and Javascript SDKs for you to try now, with Android coming soon. The service also includes "UniPush" which provides a single fully transparent push mechanism that automatically selects the right push service for the user's platform.


An extensible open-source backend framework for iOS apps from Mattt Thompson. Helios is built on the Rack webserver interface and is comprised of a collection of backend components that you can mix and match to provide features including data synchronisation, push notifications, in-app purchases, Passbook, Newstand, logging and analytics.

See more Backend Services ›

Command Line


An open source Mac app for Homebrew. Homebrew is a package manager for OS X which lets you install thousands of command-line applications that would require manual compilation, but it requires using the command line. Cakebrew makes using Homebrew much easier by providing a GUI for all your Homebrew tasks like installing, uninstalling, and updating formulae, and running Homebrew doctor to find problems.


A command line tool for creating and configuring iOS Xcode projects. If you run Liftoff on a directory with an existing Xcode project it will perform various actions to get your project in shape, such as changing indentation levels, turning on warnings, adding default .gitignore and .gitattributes files, and initializing a new git repo. If Liftoff can't find an Xcode project, it will create one for you. Liftoff is completely customisable (and open-source) and configurations can easily be shared.


A shell script which compiles and executes Objective-C source code files from the command line. objc-run is really useful for quickly testing a piece of code or if you have a small programming task that you want to handle in Objective-C that doesn't justify setting up a complete Xcode project. It also integrates nicely with CocoaPods. objc-run has made Objective-C my new favourite scripting language!


A collection of really useful command line utilities from Mattt Thompson. The collection consists of 5 tools, each named after a major city, covering tasks including automated administration of the Apple Dev Center, sending push notifications, generating passbook passes, verifying in app purchase receipts and distributing dev builds. The utilities are all open source on Github and are written as Ruby gems so can be run on a server as well.

iTerm 2

A very decent alternative to the Terminal app on Mac. It adds loads of fantastic features including search, autocomplete, countless configuration options, TotalTerminal/Visor style hot-key triggered slide in windows and a lot more. The best thing is, it's free and open-source on GitHub.

See more Command Line ›

Source Control

Working Copy

A complete Git client for iOS that lets you clone, edit, commit and push on the go. Unlike many other iOS Git apps, Working Copy allows you to work with any Git repo not just those hosted on popular services like GitHub and Bitbucket. Cloning repositories gets you a local copy on your iOS device with commits for all branches, just like on you desktop computer. You can then browse the content and make changes. Working Copy also allows other apps to access files using the iOS 8 document picker. Changes made can be committed and the commits can in turn be pushed back to the remote. Working Copy is free to download but there is an in app purchase to unlock the ability to push commits back to remote servers.


A free and open source alternative to paid git hosting services like GitHub and Bitbucket. GitLab is an incredibly powerful self-hosted code collaboration platform, git repository manager, issue tracker and code reviewer. It's available for several Linux distributions including Ubuntu, Debian and CentOS and it integrates with third party issue trackers and continuous integration services. You can also get a subscription which gives you access to their support team and GitLab Enterprise Edition that contains extra features aimed at larger organisations. A great option if you want private repos without the cost.


A Git client for iPhone and iPad. With GitMongo you can perform most Git actions including: cloning a repo using git, http, https and ssh; making edits using the built in text editor with syntax highlighting for several languages (including Objective-C); committing, merging and pushing to remotes; managing branches and tags; and viewing diffs for all commits with highlighted changes. GitMongo has been tested to work with several popular Git hosting services including GitHub and BitBucket. Unfortunately, GitMongo is not updated that often but it is still a good tool for using Git on the move.


A fun iOS app for finding great open source projects on GitHub. RepoStumble works just like StumbleUpon but for GitHub. You provide it with some of your interests by keyword and programming language and it'll find new and interesting projects that you never knew existed. There is also a Trending tab where you can few popular repositories by language, and a Showcases tab that lists curated collections of interesting repositories such as software development tools, text editors and data visualisation.


An iOS app that lets you browse and maintain your GitHub Gists. Using Gistacular you can view Gist files, comments, and forks; browse source files with syntax highlighting; view rendered Markdown and HTML files; create, update, delete, comment, and star Gists; and explore public Gists. Gistacular is a free to download and available for iPhone and iPad.

See more Source Control ›



An online translation service for apps and websites. OneSky supports several common formats including .strings and App Store descriptions which you can easily upload to their Translation Management Platform. They also offer a drop-in plugin that lets you update your in-app translations over-the-air without the need to resubmit your app to Apple. You can get started with their free Localisation Grader tool that will give you an app description or app UI localization grade and suggestions of what languages to target next. Pricing starts as pay-as-you-go per word and you can pay more for additional services.


Localization management service for multiple platforms including iOS and Android. Crowdin provides an online environment that allows you to manage localization files, monitor translation progress, organise proofreading and supervise project participants. You can upload screenshots and comment on translatable contents to provide more context for translators. You can also make the process of sending strings to be localised completely automated with the Crowdin API or command line tool. Crowdin lets you order professional translations or organise crowdsourced translations.

Smooth Localize

Probably the cheapest and simplest to use localization service you can find. You just upload your strings file, paste in your App Store text, select the level of translation for each language and checkout. Automatic translations will be availble within minutes and human translations take between 1-4 days.

See more Localization ›

Testing and Support


A free drop-in SDK that allows your users to send in-app feedback. You have the option to send any feedback you receive to several popular Project Management Systems or Issue Trackers including Pivotal Tracker, Trello, GitHub, BitBucket, Jira, and more. All received feedback is automatically tagged using sentiment analysis and classified as positive or negative or you create your own tags to easily group messages. Doorbell can also instantly notify you when you receive new feedback by email or in several popular Group Chat services including HipChat and Slack.


A drop in library that provides a simple interface for allowing your testers to provide feedback in app. The Tattle-UI library adds a floating button on every screen that the tester can click whenever they spot an issue. The library then takes a snapshot of the current screen for the tester to annotate and the option to record an audio note. Everything is then packaged into an email that automatically includes system information ready for the tester to send.


A Behavior Driven Development library that aims to make tests simpler and more readable than what is possible with the bundled test framework. Tests (or rather specs) are written in Objective-C and run seamlessley within Xcode. Specs are comprised of a set of functions that allow blocks of code to be run at various times within the contexts of your tests, and expectations that are the language you use to verify your object behavior. Expectations use readable verbs such as should, shouldNot, beIdenticalTo, containString, matchPattern and loads more. Kiwi also supports mock objects to imitate classes or protocols, stubs to return canned responses on selectors or message patterns, and asynchronous testing using asynchronous expectations such as expectFutureValue and shouldEventually.


A new fully featured in-app support solution for iOS. AppbotX is provides a drop-in library that offers a number of support features including: localised in-app notifications for communicating with your users; in-app user feedback that automatically captures device information such as OS version, device type, memory usage, disk usage and if the device is jailbroken; in-app FAQs that can be updated on the AppbotX web portal; version notifications that alert users to new versions available to download and "What's New" text once they've updated; and review prompts that channel happy users to leave reviews and unhappy customers to send you feedback directly. All the libraries are 100% open-source and available on GitHub so you can customise the look and feel, tweak the components to fit into your app.


A bug and feedback reporting service for iOS and Android. BlitFeedback provides a drop-in SDK that allows a user to give feedback while using your app. Users can create and send voice memos, screenshots, screen video recordngs and even create live screencast sessions so you can follow along in realtime. Reports can also be automatically forwarded to Jira, Bugzilla, GitHub, Bitbucket, Pivotal or email.

See more Testing and Support ›



A tool that lets you manage all your iOS provisioning profiles from the command line. With just one command, Sigh can download the latest provisioning profile for your app, renew a provisioning profile, repair a provisioning profile when it is broken and create a new provisioning profile if it doesn't exist already. It supports App Store, Ad Hoc, Enterprise and Development profiles as well as multiple Apple accounts, multiple teams and storing your credentials securely in the Keychain. Sigh is a better option than letting Xcode manage everything as it gives you control and can easily be integrated into your CI-server.


A command line tool that will create a .pem file containing your push notifications certificate ready to be uploaded to your server. PEM manages the whole push provisioning process - by running one command it will create a new signing request, create a new push certificate, download the certificate and generate a new .pem file in the current working directory. You can also pass optional parameters to specify a particular app or to create a development certificate instead. Very simple, but a real time-saver.


A command line utility that brings continuous deployment to iOS. Deliver automates the whole process of updating your iOS app by allowing you to upload IPA files, app screenshots and more to the iTunes Connect backend with just one command. After installing, running 'deliver init' from the command line will create a new Deliverfile that contains all the configuration including where to find IPA files and screenshots along with iTunes metadata. Once configured, you can run 'deliver' to deploy a new app update. You can even configure Deliver to give you a PDF preview of the fetched metadata before uploading the app metadata and screenshots to Apple.

A new service that lets you run iOS simulators directly in the browser. You can use for many purposes, including debugging and testing your apps, sharing with colleagues and clients, or anything else you can think of. Simply upload a zipped up simulator build of your app via the website or API. You will then immediately be able to run your app in the browser, or embed it as an iframe anywhere else. Supports both iPhone and iPad, device rotation, custom launch params, and more. Currently free and in beta.


A humble replacement of Apple’s iPhone Configuration Utility for installing ad hoc apps on iOS devices. As the app installation feature of iPhone Configuration Utility is broken on Mavericks there aren't many simple ways of installing an ad hoc build directly onto a device. AppStaller can solve this problem until Apple get their act together.

See more Deployment ›

Project Management


A project management suite that works natively within GitHub. ZenHub enhances your workflow with features built specifically for startups, fast-moving engineering teams, and the open-source community. The product is a Chrome extension that injects advanced functionality including real-time drag-and-drop Issue Task Boards, peer feedback via a +1 button, and support for uploading any file type directly into the GitHub interface. ZenHub makes it easy to centralise all processes into GitHub. It's free to use and other browser versions should be coming in the future.

Pivotal Tracker

A simple but powerful agile project management tool built specifically for software development. Pivotal Tracker covers all aspects of Agile including stories, points, velocity, backlogs, epics, etc. and allows easy collaboration between team members. The web app works really well allowing you to fully manage every aspect of your projects, but they also have a universal iOS app that does the same.


A lightweight Mac client for FogBugz, GitHub and JIRA that helps you in your everyday workflow with managing development tasks. It has a menubar helper app which lets you know what you’re working on and what you should be working on next, and also provides you with notifications so you always know what your teammates are working on as well.

See more Project Management ›



An analytics service designed specifically for mobile that centres around actions rather than page views. Mixpanel provides a drop-in library that makes in easy to integrate into your iOS app and start logging user actions. Actions can be anonymous but you can also log actions for specific users to help you understand you audience better. The Mixpanel website provides lots of options that are designed to help you get insight from your analytics including: funnels that describe routes through your app; segmentation to group your actions by metadata; and retention tracking to see where users leave your app. You can also use Mixpanel to send push notifications and rich in-app notifications.


An online service for creating beautiful charts of any custom stat. StatHat is a great option if you don't want all the features of a complete analytics service but just want visibility of what is happening with you app. StatHat provide drop-in libraries in 16 languages (including Objective-C) that lets you send stats with one line of code. The service has built-in 30 day forecasts and anomaly detection with alerts and email reports. It can also be integrated with Status Board and Campfire and they provide an iPhone app that lets you view all your stats and get push alerts sent to your iPhone.

An app performance monitoring framework that aims to help you find the biggest performance issues your users are having. provides a drop-in SDK that will auto-instrument your app and send the data back to their servers for you to analyse. You get code-level diagnostics that you can filter by app version, handset type, iOS version, carrier, and location. The SDK can also monitor for slow spinners, low framerate, network lag and memory terminations.

An analytics tool that lets you send data to over 80 different third-party services with one drop-in SDK. Instead of adding separate libraries for Flurry, Google Analytics, etc., provides a single library to collect your app data, and an online dashboard where you can enable the third-party services you want. You can add new services instantly, even ones without their own mobile SDK, without having to update your app, and you can export your data at any time in a clean, non-schematized format.


An analytics and marketing platform for mobile and web apps. Localytics provides all the real-time analytics features you'd expect including screenflow, sessions, events, user segmentation and engagement analytics, but the selling point is that this data can be used to inform your app marketing. Marketing features include push notifications, A/B testing, personalised in-app messaging and acquisition management to discover how people are finding your app. The monthly price is quite high for independent developers but the free tier includes up to 10,000 active users and 1 million monthly data points.

See more Analytics ›

App Store and Sales

New Sensor Tower

An App Store Optimization service to help you optimise your app's visibility in the App Store. Sensor Tower lets you automatically track daily keyword rankings for your app and its competitors to identify which are working the best. You can also get tips to improve your existing keywords and suggestions for new keywords that include search traffic estimates, and competitiveness difficulty ratings. Once you've found keywords that are working well, Sensor Tower can help you translate them into 20+ different languages to improve your rankings in other countries.

New SmudgeKit

A drop in replacement for UIWindow that adds circular views to the screen as visual representations of all touch events. SmudgeKit is ideal for creating app preview videos or screenshots so that viewers can see exactly where touch events are happening. There is practically no implementation needed to use SmudgeKit - you just need to replace your root UIWindow with SmudgyWindow. If necessary you can also change the appearance by editing the SmudgeLayer implementation.


A command utility to quickly add device frames around your iOS screenshots. You just have to navigate to your folder of screenshots and run 'frameit' to add a perfect device frame to every screenshot in the folder. FrameIt currently supports iPhone 6 Plus, iPhone 6, iPhone 5s and iPad Air in portrait and landscape for both black and silver devices. There are also couple of other setup steps you need to take to download the device images from Apple as they are not pre-packaged for legal reasons, but the steps are simple and only need to be done once.


A command line utility that dramatically speeds up the process of creating localised App Store screenshots. Snapshot lets you create hundreds of screenshots in multiple languages on all simulators. To configure which screenshots to include just profile the app with the Automation Instrument. From then on you can run 'snapshot' from the command line to recreate all your screenshots in all supported languages. Snapshot even automatically waits for network requests to be finished before taking a screenshot and generates a web page, which shows a preview of all screenshots on all devices.


A website that lets you create an alternative landing page for your iPhone app using the info you've already submitted to the App Store. Just paste in your App Store URL and a page will be created with you app icon, description, screenshots and average rating. You can then either copy a shareable URL or fork the page on GitHub ready to host on or your own domain. The page even includes a Smart App Banner when displayed in Safari on iOS. If you are yet to release the app to the App Store, the creator has provided instructions and scripts to get the data from iTunes Connect.

See more App Store and Sales ›



Not strictly a development tool, but I can't use my Mac without it. Alfred is what Spotlight should have been - it's an application launcher, search bar, clipboard and snippet manager, calculator, dictionary, and more all rolled into one lightweight app. Where Alfred gets really powerful though is with custom workflows that allow you to trigger actions or scripts from any keyword or hotkey. Check out the Workflows on the Alfred Forum to see what I mean.

See more Productivity ›


Master iOS Design

An online course that aims to teach you all about designing for iOS. Master iOS Design is a free course that is split into several sections that cover everything from design principles to applying those principles to an actual iOS app, each providing real examples of where the principles you're learning have been applied to apps in the App Store.


A website of articles that study and investigate some of the most innovative interfaces on iOS. Subjective-C has currently covered Facebook Paper's tilting panner and Spark Camera's recording meter and both articles are great reads. The articles provide analysis and speculation on how the interfaces are implemented using tools such as Reveal, and also provide code snippets of how to reimplement the features yourself. I'm looking forward to reading more.


Another great selection of online courses that teach students how to build websites & apps, write code or start a business. There are over 1000 videos along with many quizzes and interactive code challenges that will count towards badges and achievements to indicate the skills you have learnt. The Treehouse website looks great on iPad as well so you can learn while out and about. It's also worth checking out the free Treehouse Show - a weekly video news show from Nick Pettit and, the King of Troll, Jason Seifer.

Code School

Online course that teaches web technologies and programming topics by focusing on video lessons, coding challenges, and screencasts. They provide an iOS path that covers iOS fundamentals, Objective-C and Xcode. Many course and videos are free but you can also enroll for $29 per month for unlimited access to all content including guest screencasts.


A community for developers to unlock & share new skills. You can learn from experts about the latest languages, tools & technologies or share your own pro tip and get feedback from other developers. You can share code snippets, tutorials or thought pieces.

See more Learning ›


Black Friday App & Book deals

We're embracing the Black Friday madness by sharing this curated list of the best app and book deals for developers, designers and entrepreneurs. At the time of writing there are 46 deals on the list but more are being added regularly, and you can filter using the search bar at the top. Some of my favourite deals include 50% off Pixelmator for Mac and iOS, 50% off all O'Reilly ebooks and videos, and the big discounts on UI8 UI Kits.


An excellent blog from Brent Simmons, a Mac and iOS developer known for being one third of Q Branch, the creators of Vesper. Brent's wealth of experience is evident in his informative and candid blog posts that cover a range of topics on development and life as an indie developer. In particular, it's definitely worth reading his 'Vesper Sync Diary' that chronicles all the details and dilemmas encountered while building a sync system for Vesper. Brent's blog is far from inessential for any iOS or Mac developer.


A long running technical blog from Mike Ash of Plausible Labs. Also known as Friday Q&A, NSBlog features deep dive posts about a wide range of technical topics from language features and the compiler to protocol design and framework implementations . Although Mike describes NSBlog as a "Mac development blog", a lot of the topics covered in the posts apply to iOS development as well.

iOS Development Tips

A blog with useful iOS, Objective-C and Xcode tips to help make you more productive. It also talks about recreating some well-known animations to gain a better understanding of frameworks like Core Animation and Facebook Pop.

The Business of App Design

A blog written by Dan Counsell, the founder of Realmac Software, the company behind Clear, Ember and RapidWeaver. Dan writes excellent articles covering business, marketing and design for iOS and the App Store. He writes around one to two articles each month and they are some of the most valuable resources available to developers in this area. An essential read for all iOS developers who are publishing to the App Store.

See more Blogs ›


iOS Dev Weekly

A free weekly email of hand picked iOS development links with sections on News, Tools, Code, Design and Business. Published every Friday by Dave Verwer.

See more News ›


Release Notes

A weekly podcast hosted by Charles Perry and Joe Cieplinski about the business of Mac and iOS indie software development, or as they say "everything but the code". Topics include tips and tricks, success stories and failures from the iOS and Mac ecosystem and interviews with notable independent iOS and Mac developers. Release Notes is a great listen if you are looking for a non-technical podcast about iOS or Mac development.

Build Phase

A weekly technical podcast from the guys at Thoughtbot. The hosts, iOS developers Mark Adams and Gordon Fontenot, discuss code, design, and creating great iOS apps. Previous topics have included best practices, iOS frameworks, conferences and their general experiences with the App Store.


A new weekly podcast from Justin Williams featuring well known people in the Mac and iOS community talking about the interesting things and projects they've been working on. Each week is an in-depth discussion of the techniques and technologies the guests have used and their experiences in being part of the Cocoa community in general. Episodes are typically shorter than 30 minutes, so it should be easy to fit CocoaRadio into your podcast schedule.

The iDeveloper Podcast

A magazine style a podcast for OS X and iOS developers hosted by Steve "Scotty" Scott and John Fox. Each episode looks at subjects including recent developer news, technical issues around cocoa and cocoa touch, the latest tools and utilities as well as examining the business side of being an indie Mac or iOS developer.

Mobile Couch

A fortnightly podcast by Ben Trengrove, Daniel "Jelly" Farrelly and Jake MacMullin. Each episode, the hosts discuss their experiences working on everything from games, to indie apps to client projects, covering topics ranging from in-depth technical chat about frameworks and techniques to insight into releasing an app to the App Store. Occasionaly they are joined by well-known members of the mobile development community - past guests include Marc Edwards and Casey Liss.

See more Podcasts ›



A conference focused on high quality programming tutorials from the teams at and Podcast. RWDevCon is a multi-track conference with beginner tutorials covering topics like Swift, Auto Layout and Core Data; advanced tutorials covering topics like functional programming and Cloud Kit; and other non-technical inspirational talks.


A touring training conference for iPhone, iPad, and Mac developers. Each CocoaConf event typically runs over 2 to 3 days with countless sessions across multiple tracks run by some of the best thought leaders, authors, and professional iOS and OS X developers. As CocoaConf is a touring conference there is more chance you'll find an event in a location near you, but they are popular events so you'll have to register early. The CocoaConf team also recently announced that they will be running a special conference next spring, inspired by the name of the latest release of OS X, in Yosemite National Park. Yosemite by CocoaConf will feature some of the most-loved members of the Apple community and opportunities to get out and enjoy the beautiful park with hikes and photo walk.


An indie iOS developer conference held in Denver, Colorado. 360|iDev typically has upwards of 40 sessions over the corse of three days, and includes a fourth pre conference day of hands on labs, free for attendees. The 2014 conference has already happened but all the session videos have been posted DRM free on the website to watch and download. This year's conference is scheduled for August and will feature talks from Jay Freeman, Mike Lee, Kyle Richter and many more. Also check out [360|iDev min], a smaller conference scheduled for October that focuses on code.


A conference for iOS and OS X developers, designers and enthusiasts that is less about the code and more about the big-picture issues in the industry. Çingleton is brought to you by Guy English, Scott Morrison and Luc Vandal and will be taking place in Montréal, Québec. The conference is small so tickets are constrained but videos of each of the talks from previous years have been posted on Vimeo. Speakers for this year include Adam Engst, Jean MacDonald, Allen Pike, Laura Savino and more to be announced.

See more Conferences ›