iOSDevTools
Set of open sources for different development tasks.
Networking
- AFNetworking iOS & OS X networking framework
- asi-http-request CFNetwork wrapper for HTTP requests
- RestKit Consuming and modeling RESTful web resources
- Reachability ARC and GCD modification for Appleβs reachability class
- socket.IO-objc socket.io v0.7.2+ for iOS devices
- AFNetworkActivityLoggerv AFNetworking 2.0 Extension for Network Request Logging
- MMLanScan An iOS Network (LAN) Scanner library
Image Processing
- GPUImage GPU-based image and video processing
- iOS-image-filters Photoshop-style image filters
- ZXingObjC Objective-C Port of ZXing barcode image processing
- SVGKit Display and interact with SVG Images on iOS / OS X
- UIImage-BlurredFrame Blurred image effect
- OpenCV Builded OpenCV iOS framework
- Tesseract OCR OCR framework for iOS
- LEColorPicker Generate iTunes like color scheme depends on artwork
- MTBBarcodeScanner A lightweight, easy-to-use barcode scanning library for iOS 7
- DBCamera DBCamera is a simple custom camera with AVFoundation
- iOS7-BarcodeScanner Barcode scanner using the scanning capabilities introduced with iOS 7.
- iOS-WebP Google's WebP image format decoder and encoder for iOS http://seanooi.github.io/iOS-WebP/
- TDImageColors iOS Library used to detect a number of most used colors in a UIImage.
- iOS-WebP Google's WebP image format decoder and encoder for iOS
UI
- MBProgressHUD Custom alert
- SVProgressHUD Another yet custom alert
- AMSmoothAlert Cool AlertView
- PaperFold Paper folding animation for iOS
- MPFoldTransition Another yet paper folding animation
- ECSlidingViewController Facebook style view controller
- MMDrawerController Another yet FB style view controller
- TTAttributedLabel Replacement for UILabel that supports attributes, data detectors, links, and more
- SVPullToRefresh Custom pull-to-refresh control
- TSMessage Custom notifications from navigation bar
- MCSwipeTableViewCell iOS Mail swipe-style cell
- SWTableViewCell Another yet swipe-style cell
- iOSPlot Chart library for iOS
- SVWebViewController A drop-in inline browser for iOS app
- PHFComposeBarView Compose bar from iOS 7 Messages.app
- WYPopoverController Custom popover
- ABCalendarPicker Calendar picker control
- AMScrollingNavBar Scrollable UINavigationBar (Google+ style)
- MDCParallaxView Parallax effect on view
- Parallax Another yet parallax effect
- GSBookShelf iBooks -style control
- ANBlurredImageView Animated blur-in and blur-out on UIImageView.
- SubjectiveCPhotoPanner A small clone of Facebook Paper's motion based photo panner http://subjc.com/facebook-paper-photo-panner/
- CRMotionView A custom photo viewer that implements device motion scrolling, inspired by Facebook Paper.
- CRToast A modern iOS toast view that can fit your notification needs
- RCCPeakableImageView Implementation of a "peekable" thumbnail image as shown at the Flag Kickstarter Project
Autolayout
- FLKAutoLayout UIView category which makes it easy to create layout constraints in code
- DynamicXray iOS UIKit Dynamics runtime visualisation and introspection library. http://dynamicxray.net/
Animation
- AGGeometryKit-POP Bridging AGGeometryKit with POP for amazing dynamics and animations.
- BCMeshTransformView Mesh transforms for UIView
- POP Extensible iOS and OS X animation library.
- M13PDFKit M13PDFKit is an iBooks like PDF viewer that can be embedded in iOS applications.
Cache
- SDWebImage Asynchronous image downloader with caching
- FastImageCache iOS library for quickly displaying images while scrolling
- Haneke A lightweight zero-config image cache for iOS.
- EGOCache Fast Caching for Objective-C (iPhone & Mac Compatible)
http://developers.enormego.com
Data
- MagicalRecord Easy Fetching for Core Data
- JSONKit Objective-C JSON wrapper
- json-framework JSON parser and generator
- JSONModel Data Modelling Framework for JSON
- fmdb Cocoa / Objective-C wrapper around SQLite
- FCModel Alternative to Core Data for people who like having direct SQL access
- TMCache Fast parallel object cache for iOS and OS X
- SSKeychain Objective-C wrapper for the keychain
- SSZipArchive Utility class for zipping and unzipping files on iOS and Mac
- RNCryptor AES encryption wrapper for iOS and Mac
- HTMLParser HTML parser
- zipzap Zip file I/O for iOS & MaΡ OS
- RegEx Categories Makes regular expressions easy in ObjC
- UAObfuscatedString A simple NSString category to hide sensitive strings from appearing in your binary
- hpple An XML/HTML parser for Objective-C, inspired by Hpricot. http://topfunky.com
File System
- FCFileManager iOS File Manager on top of NSFileManager for simplifying files management.
APNS tools
- APNS-Pusher A simple cocoa app to send pushes via APNS
Date
- iso-8601-date-formatter A Cocoa NSFormatter subclass to convert dates to and from ISO-8601-formatted strings. Supports calendar, week, and ordinal formats.
Debug Tools
- PonyDebugger Remote network and data debugging
- CocoaLumberJack Flexible logging framework for Mac and iOS
- superdb realtime wireless debugger for iOS
- OHHTTPStubs Stub network requests
- NSLogger A modern, flexible logging tool
- Xtrace Trace Objective-C method calls by class or instance
- RHObjectiveBeagle Beagle is an Objective C debugging tool that can sniff out class instances on the heap.
- KSCrash The Ultimate iOS Crash Reporter
- chisel Chisel is a collection of LLDB commands to assist debugging iOS apps.
- plcrashreporter Mirror of the official PLCrashReporter repository
Unit Tests
- Kiwi BDD for iOS
- GHUnit Test Framework for Objective-C
- OCMock Objective-C implementation of mock objects
UI Tests
- UI AutoMonkey Stress testing script for iOS applications
- Calabash BDD style UI testing
- KIF Keep It Functional - An iOS Functional Testing Framework
Device
- iHasApp Detect installed apps on a user's device
- IntentKit Handle third-party URL schemes in iOS apps
- iOS System Services Gather all available information about a device
- SOMotionDetector Simple library to detect motion type (walking, running, automotive).
- GBDeviceInfo Detects the hardware, software and display of the current iOS or Mac OS X device at runtime.
Location
- PSLocationManager CoreLocation wrapper. Allows to track speed and distance.
Map
- JPSThumbnailAnnotation A simple mapkit annotation for displaying images and details.
- calloutview A lightweight callout view class for iOS mimicking UICalloutView.
- route-me Open source map library for iOS
- mapbox-ios-sdk Mapbox iOS SDK, an open source alternative to MapKit. http://www.mapbox.com/mapbox-ios-sdk/
- CCHMapClusterController High-performance map clustering with MapKit for iOS and OS X. Integrate with 4 lines of code.
- yandexmapkit-ios Yandex Map Kit for iOS
Media
- MHVideoPhotoGallery A Photo and Video Gallery for iOS 7 designed.
- TheAmazingAudioEngine Core Audio, Cordially: A sophisticated framework for iOS audio applications, built so you don't have to.
Vendor SDKs or/and it wrappers
- SimpleAuth Simple social authentication for iOS. http://simpleauth.io
- FlickrKit An iOS Flickr Framework, written in Objective-C http://www.devedup.com
- objectiveflickr ObjectiveFlickr, a Flickr API framework for Objective-C
- DropboxBrowser A simple ios Dropbox PDF Document Browser - list Dropbox, browse directory, download PDF Documents
Applications
- Inkpad Vector illustration app for the iPad
- Brushes Painting app for the iPhone and iPad
- GraphSketcher A fast, simple graph drawing and data plotting app for OS X and iPad. by OmniGroup company.
- mbus iOS implementation of the University of Michigan's bus dispatch system
- mtigas/iOS-OnionBrowser An open-source, privacy-enhancing web browser for iOS, utilizing the Tor anonymity network
- LTBlackList The missing Blacklist app for your iOS 5/6+ with private APIs. No Jailbreak Required!
- lastfm-iphone The official Last.fm iPhone application
- cryptocat-ios Cryptocat for iOS. Easy to use encrypted instant messaging. https://crypto.cat
- NewsMagazineApp Just a news magazine app with Flipboard style paging http://newsmagazineapp.com
- Concurrency Source code for the Concurrency app: https://itunes.apple.com/app/concurrency/id738872892
- Cheddar Cheddar for iOS https://cheddarapp.com/ios
- News-YC---iPhone The iPhone version of News/YC, a Hacker News reader and interactive iOS application.
- Hacker-News Hacker News client for iPad and iPhone
- DVIA Helps to learn iOS security. Blog http://damnvulnerableiosapp.com
- SolΒ° Flat style weather app.
- Chimp Source code editor https://itunes.apple.com/ua/app/chimp/id645194243?mt=8
- TimeScoop Time Tracking Utility for iPhone https://itunes.apple.com/ua/app/timescoop/id642040474?mt=8
- GraphiCal Calculator iOS app https://itunes.apple.com/ua/app/graphical/id647517420?mt=8
- FileSystem FileSystem is an application that allows you to browse the content of your iPhone disk, displaying file and folders, files contents, and detailed informations about file and folder permissions.
- google-music-mac Turn Google Music into a separate, beautiful application compatible with your Mac's media keys and including support for notifications. http://kbhomes.github.io/google-music-mac/
- ChattAR-ios Augmented Reality Chat for iOS code sample (works with Facebook API and QuickBlox API) http://quickblox.com/developers/Chattar
- AwesomeChat AwesomeChat is a full native iPhone app to create realtime, text based chatrooms with Facebook/Twitter login.
- ioctocat iOctocat v1 - GitHub for iOS (works on the iPhone, iPad, and iPod Touch) http://ioctocat.com/
- 2048 The iOS version of 2048, made using SpriteKit
- Crash-Manager iOS client for Crashlytics
Xcode Plugins
- Injection for Xcode Runtime Code Injection for Objective-C http://www.injectionforxcode.com
- BBUDebuggerTuckAway Xcode plugin for auto-hiding the debugger once you start typing in the source code editor
- XAlign An amazing Xcode plugin to align regular code.
- CocoaPods for Xcode Dependency management helper for your CocoaPods, right in Xcode
- BBUncrustifyPlugin-Xcode Xcode plugin to format source code using ClangFormat or Uncrustify
- FuzzyAutocompletePlugin A Xcode 5 plugin that adds more flexible autocompletion rather than just prefix-matching.
- KSImageNamed-Xcode Xcode plug-in that provides autocomplete for imageNamed: calls
- ProvisionQL Quick Look plugin for .ipa and .mobileprovision
- ClangFormat-Xcode Xcode plug-in to to use clang-format from in Xcode and consistently format your code with Clang
- XToDo Xcode plugin to collect and list the
TODO
,FIXME
,???
,!!!!
- XcodeExplorer An Xcode4 plugin to view the internal goings-on of Xcode
- JDPluginManager An Xcode PluginManager - simplifies installing, updating and deleting
- ColorSense Plugin for Xcode to make working with colors more visual
- VVDocumenter Xcode plug-in which helps you write Javadoc style documents easier.
- KSImageNamed-Xcode Xcode plug-in that provides autocomplete for imageNamed: calls
- Lin A Localization Manager for Xcode 5 http://questbe.at/lin/
- Dash-Plugin-for-Xcode Plugin for Xcode to integrate the Dash documentation viewer app
- XCode4_beginning_of_line Xcode plugin to make HOME key jump to the first non-whitespace line of code
- CocoaPodUI XCode plugin that implements CocoaPods GUI.
- SCXcodeMiniMap Xcode MiniMap plugin
- BBUFullIssueNavigator Xcode plugin for showing all issue content in the issue navigator.
- ShowInGitHub Xcode plugin to open the GitHub page of the commit of the currently selected line in the editor window.
- BBUUtilitiesTuckAway Xcode plugin for auto-hiding the utilities area when you type in the source code editor.
- RSImageOptimPlugin Xcode plugin to optimize images using ImageOptim.
- WCGitTagsPlugin An Xcode plugin which lets you add tagging ability to Source Control
- XcodeBoost An Xcode plugin that aims to make altering and inspecting code quick and easy.
- AdjustFontSize-Xcode-Plugin Increase Xcode font size with β+
- ACCodeSnippetRepositoryPlugin A plugin for Xcode to synchronize code snippets with repositories
- xcfui Xcode plugin for fui tool
- Peckham Add #import-s from anywhere in the code.
Xcode Templates
- iOS-Universal-Library-Template An Xcode 4 project template to create universal (armv6, armv7 and simulator) frameworks for iOS.
Xcode configurations & scripts
- Warnings-xcconfig An xcconfig (Xcode configuration) file for easily turning on a boatload of warnings in your project or its targets.
- xc-launch A small script to launch Xcode using a RAM disk
- WMPiOSXcconfig A set of .xcconfig with aggressive warning settings for iOS projects.
- projconf A Mac OS X command line tool for transfefring Xcode build settings to .xcconfig files.
Tools
- Crafter Crafter - setup your cocoa projects with ease. http://merowing.info
- iOStream Mobile presentations made easy. Install the SDK and start streaming now.
- iOS-Build-Kit BuildKit is a modular command line interface for automating iOS project builds. Bundled build tasks include: Increment app version β’ Xcode build β’ Overlay version number on icon files β’ Run unit tests β’ Create .ipa artefact.
- fui Find unused Objective-C imports.
- class-dump Generate Objective-C headers from Mach-O files. http://stevenygard.com/projects/class-dump
- iOS-Universal-Library-Template An Xcode 4 project template to create universal (armv6, armv7 and simulator) frameworks for iOS.
- chisel Chisel is a collection of LLDB commands to assist debugging iOS apps.
- objc_dep Graph the import dependancies in an Objective-C project
- IconOverlaying Sample project showing how to overlay information on Icon in iOS App.
- CPDAcknowledgements Show your CocoaPods dependencies in-app.
- liftoff CLI for creating and configuring new Xcode projects
- objc_strings Helps in localizing Cocoa applications by showing unused/missing keys in Localizable.strings.
- homebrew The missing package manager for OS X. http://brew.sh
- Cakebrew Manage your Homebrew formulas with style using Cakebrew.
- iOS-Hierarchy-Viewer iOS Hierarchy Viewer allows developers to debug their user interfaces.
- Alcatraz Package manager for Xcode 5 http://alcatraz.io
- quick-look-plugins List of useful Quick Look plugins for developers
- git-extras GIT utilities -- repo summary, repl, changelog population, author commit percentages and more
- ios-makefile The universal makefile for my iOS projects distributes IPAs in seconds
- rchook Make Xcode bump build #, tag git, and archive files on Product->Archive
Editing code
- Monokai Xcode 4 Theme is the syntax highlighting theme I like
- SourceTree is my Git GUI client of choice
- Kaleidoscope is great for resolving merge conflicts and general diffing
- I like Sublime Text 2 as a general text editor, despite its many quirks
- CodeRunner is great for quickly testing out snippets of code
- xctool is a replacement for Apple's
xcodebuild
tool but with saner output
Tweaking and debugging
- xScope is great for achieving pixel-perfect results in your UIs
- Spark Inspector lets you visualise UIView hierarchies at runtime
- I use PhoneView if I need to poke around the file system of an iOS device
- Quick Radar makes filing bug reports with Apple a cinch
- SimPholders sits in your menu bar and gives quick access to the app folders for the iOS Simulator
Debugging web services
- I use Charles Proxy to see what's happening on the network when an app is running. (See Using Charles from an iPhone for instructions on how to see the traffic going to and from a local device.)
- Postman for Chrome is an HTTP client for testing RESTful web services. I use this a lot.
- jq is a command-line JSON parser and mangler. It takes some learning, but it's a great tool for picking the stuff you care about out of a big load of JSON. (Tip: pipe a JSON stream through
jq '.'
to format it.)
Core Data
- mogenerator keeps auto-generated Core Data entity classes and your higher-level logic separate. A must-have if you're working with Core Data.
- Core Data Editor is a GUI tool for browsing Core Data persistent stores. (Tip: double-click an item to see and navigate its relationships.)
- Base is a general-purpose SQLite GUI β sometimes it's quicker to just open a Core Data SQLite DB in Base than it is to use Core Data Editor, since CDE generally needs reconfiguring if your data model or the location of the persistent store changes.
Screencasting
- Reflector is a stroke of pure genius: it lets you record screen activity on an iOS device by simply making itself available as an AirPlay target. Set your iOS device to mirror to it and you're good to go. File under damn, I wish I'd thought of that.
- I love ScreenFlow for screencasts from my Mac. I've tried a few screencasting apps over the years and this one is the best of the bunch.
Deployment and beyond
- After years as a TestFlight user I switched to HockeyApp and never looked back. HockeyMac is the native companion app that makes uploading to HockeyApp as part of the Xcode archiving process a doddle.
- Tokens helps you manage promo codes with zero hassle
Miscellaneous
Not really development tools, but useful adjuncts to my day-to-day workflow.
- Droplr has a great native Mac app and an equally great native iOS app. I use it every day for sharing links, code snippets and most of all images with my colleagues.
- Pupil lets me switch the display resolution on my MacBook Pro Retina easily
Swift
iOS-Swift-Demos iOS Swift Demos from Apple