The best resources for iPhone / iPad developers

Tags: official | article | sample | opensourcelib | framework | service | video | book | forum | ux | gui

Official docs

  • The Objective-C Programming Language

    Apple’s documentation about the Objective-C 2.0 language. It is not built like a course or tutorial, with samples and step-by-step instructions to develop sample apps, but it’s rather a pretty complete reference on the following topics: classes, objects, messages, proto…[more]

  • iPad Human Interface Guidelines (HIG)

    The official user interface guidelines for iPad, a collection of suggestions you should follow to build a pretty and well-behaved application, easy to use and intuitive to navigate…as well as a set of rules that you better not break if you don’t want to see your app reject…[more]

  • iPhone Human Interface Guidelines (HIG)

    The official user interface guidelines for iPhone, a collection of suggestions you should follow to build a pretty and well-behaved application, easy to use and intuitive to navigate…as well as a set of rules that you better not break if you don’t want to see your app reje…[more]

  • Apple’s iPhone Dev Center

    The official Apple’s homepage for iPhone developers and wanna-be. It’s where you go to download the SDK and Xcode + Interface Builder (Apple’s free IDE). Here you’ll also find the official documentation, to be browsable online or to be downloaded in PDF format…[more]


Other programming articles

  • Creating a document centric iPhone/iPad application

    This article explains how to read and write files from and to your app’s private Documents folder, i.e. the folder when an app can store its own settings file, or data/document files created by the user with the app (say your app is a text editor, for example). The most inte…[more]

  • In Application Emailing

    A lot of modern app integrate features like "share by email", or "contact support by email". Instead of closing your app and launching the external default Mail app to send out a mail, a better alternative is using the MessageUI framework and the MFMailCompose…[more]

  • How To Integrate Google Analytics Tracking Into Your Apps In 7 Minutes

    Any web developer and web master knows Google Analytics, the most popular free service to track much of what happens on a website: visits, pageviews, browsers, referrers, keywords, navigation paths and much more. Google expanded its analysis service to the mobile world, and this …[more]

  • Local Notifications

    You probably already know about Push Notifications: they are sent from a server to the iPhone/iPad, and are used to notify the user about something happening remotely, such as a new post available on a RSS feed, a new incoming Instant Message, a new Facebook post on your wall, et…[more]

  • Fonts for iPad & iPhone

    A useful list of fonts supported on the iPhone and iPad. Whether you’re developing a native or web-based app for these devices, you should take this list on your side to quickly see what fonts you have at your disposal. A few notes: (1) TypeKit is adding support for web font…[more]

  • Objective-C Beginner’s Guide

    This complete tutorial introduce you all the basics to understand the Objective-C language: you’ll learn what is and how to implement or use classes, constructors, methods, inheritance, polymorphism, exceptions, categories, protocols. Memory management is also covered (how t…[more]



  • iPhone Developer’s Cookbook Sample Code

    The companion code for the book "iPhone Developer’s Cookbook Sample Code": lots of mini apps with sample code, that show how to work with views, tables, controllers, alerts and more. Useful if you’re just starting, and you need to find a "skeleton app&quo…;[more]

  • AppsAmuck

    A wonderful collection of 31 mini sample applications: the author provides the full source code for all 31 apps and, for the simpler apps, there’s also a step-by-step tutorial if you want to reproduce the entire development process.

    The sample apps show you ho…[more]


Open-source libraries

  • zxing

    ZXing (pronounced "zebra crossing") is an open-source, multi-format 1D/2D barcode image processing library implemented in Java. It currently supports UPC-A and UPC-E, EAN-8 and EAN-13, Code 39, Code 93, Code 128, QR Code, ITF, Codabar, RSS-14 (all variants), Data Matrix…[more]

  • ZBar bar code reader

    ZBar is an open source software suite for reading bar codes from various sources, such as video streams, image files and raw intensity sensors. It supports many popular symbologies (types of bar codes) including EAN-13/UPC-A, UPC-E, EAN-8, Code 128, Code 39, Interleaved 2 of 5 a…[more]

  • FontLabel

    This project provides 4 classes and 2 categories which are used to render text in custom fonts (for example the .ttf fonts freely downloadable from
    ZFont is the equivalent of UIFont but for arbitrary fonts. FontManager is u…[more]

  • MGTwitterEngine

    A class which lets you integrate Twitter support into your iPhone application, by making use of the Twitter API. The entire API is covered, and appropriate data is returned as simple Cocoa objects (NSArrays, NSDictionarys, NSStrings, NSDates and so on), for very easy integration …[more]

  • iPad VGA Output

    An open source iPad application showing how you can display content on an external display via the iPad VGA adapter. It includes a window which goes on the external screen, and a window which goes on the iPad, and shows how to detect supported external resolutions. …[more]

  • MGImageUtilities

    MGImageUtilities is a collection of useful UIImage categories for iPad and iPhone, including image-tinting and image-cropping functionality (which explicitly supports multiple orientations, and high-resolution Retina Displays). …[more]

  • MGSplitViewController

    MGSplitViewController is an enhanced replacement for UISplitViewController on the iPad. It allows displaying the master view in either orientation, toggling it with animation, changing the split from horizontal to vertical, dragging the divider, and more. …[more]

  • ZipArchive

    If your app needs to work with large files, save them locally or maybe download/upload them, it might be good practice to work with zipped files, so that they take less space, and consume less bandwidth and download/upload time. This open-source library includes an Objective-C im…[more]

  • cocos2d for iPhone

    Games is the most popular category in the app store. But games are also one of the most difficult types of apps to develop, especially if you use code directly against low-level frameworks such as Open GL ES.

    Cocos2d for iPhone is a framework built on top of Open G…[more]

  • MBProgressHUD

    When your iPhone app needs to perform a lengthy operation, so you do two things: (1) execute the operation on a separate thread, so that the UI doesn’t freeze (2) show a spinning icon or something animated to entertain the user while telling it that the app is actually doing…[more]

  • SFHFKeychainUtils

    If your iPhone app needs to store login credentials between sessions, you must download this library, period. Working with the low-level functions to safely store and retrieve passwords to and from the KeyChain is quite complex and can be very time consuming the first time you do…[more]

  • KissXml

    Sure, many web services now use JSON as their favorite exchange format, but XML is still used a lot. In the "full" Cocoa you find NSXML, i.e. a set of classes (NSXMLDocument, NSXMLElement, NSXMLNode etc.) that parse XML text and represent it in a hierarchical in-memory …[more]

  • RegexKitLite

    Regular expressions are one of the best inventions for developers. If you don’t know what they are, you’re literally missing a world of opportunities. Finding, extracting and replacing substrings from a large chunk of text can be a simple (and clean) task with a regex. …[more]

  • json-framework

    Nowadays when you can a "web service", it’s probably some sort of RESTful service that work with the JSON format for input parameters and output results. JSON has actually became more popular than XML in modern web 2.0 services and "mesh-ups", because it&…[more]

  • OpenFlow

    Do you like CoverFlow, the 3D interface that Apple implemented for the iPod app to let you browse through your albums when the iPhone is in landscape orientation? Would you like to use it in your own app? Apple’s Private SDK has a UICoverFlowLayer class for that, but…being…[more]

  • Three20

    Originally developed by Joe Hewitt, the author of the great Facebook iPhone app, this framework is a rich set of classes and components that extend the base SDK classes such as UIButton, UILabel or UITableViewController. The inherited classes (with a "TT" prefix instead…[more]



  • Titanium Mobile | Appcelerator

    Similar to PhoneGap (also described in the directory of resources) on the general terms, Titanium lets you use your Javascript, HTML, and CSS skills and technologies to build cross-platform iPhone / Android apps. It supports all of the iPhone, iPad and Android UI, including table…[more]

  • PhoneGap

    If you’re developing a mobile app that you don’t want to limit to a single platform, and you want to write a native app instead of a web app, it means that you would need to develop completely distinct apps with the platform’s specific language and SDK.



Online services

  • Google Analytics for Mobile

    Like Flurry, Google Analytics can be integrated into mobile apps (iPhone and Android only so far) to provide developers useful information about their users and the use they make of their apps: how many users there are, how much they use the app, what functions they use most, etc…[more]

  • Flurry: Analytics

    You’ve released your mobile app in the stores. Now what? How can you know how many people are using it, how often they use it, from which countries, from what phones? What features are considered useful and used every time, and what others are completely ignored? Providing a…[more]

  • Mopapp – App Store Analytics

    The host for this resource page, Mopapp is a Software-as-a-Service that allows application developers to retrieve, analyze and chart the downloads, upgrades, sales, revenues and profit of their mobile applications.
    The most interesting aspect of the product is that it’s cr…[more]



  • iPhone SDK Essential Training video course publishes video courses about most programming technologies. This one is a 7-hours video tutorial for getting acquainted with iPhone development. Of course a traditional human-to-human complete course would be of at least 3-5 full days, three times the duration of this …[more]

  • Stanford’s iPhone Application Programming Course

    Stanford run a complete course about iPhone Programming, made up of no less than 18 lectures, and they were so kind to release the whole content on iTunes for free! This is a huge opportunity to follow a real college-level class without spending a cent and from the comfort of you…[more]



  • More iPhone 3 Development: Tackling iPhone SDK 3

    This 5-stars book is the perfect read after "Beginning iPhone Development". It’s actually written by the same authors, so if you read the first book you’ll find here the same style and accurateness that made the first book so popular. The book starts where the…[more]

  • Beginning iPhone Development: Exploring the iPhone SDK

    One of the best books to learn how to develop native iPhone apps with Apple SDK. The book is well structured and guides the reader from the basics (Interface Builder, views, tables, handling events) to more advanced stuff (data persistence, multi touch and gestures, Core Location…[more]


Forums and discussion boards

  • iPhone Dev SDK

    A popular forum for iPhone developers, with 10K+ active members. Lots of chances to find someone with an answers (or at least some help) for your questions…even for those questions that would not fit in the official Apple forums.

    Worth mentioning is a section, ap…[more]


User interaction articles

  • Apple iPad apps need more consistency (video)

    In this short (3min) video, Dr Jakob Nielsen (one of the most popular usability consultant worldwide) highlights some problems that many iPad apps suffer from. He says that Apple iPad applications are often confusing for users and need more consistent features to be successful; i…[more]

  • Usability of iPad Apps and Websites: First Research Findings

    This 93-pages PDF report is based on usability studies with real users, reporting how they actually used a broad variety of iPad apps as well as websites accessed on the iPad. It points out wrong design choices that make the app not intuitive to use, and subject to errors, and pr…[more]

  • iPad Application Design

    In this article the author writes some considerations, guidelines and best-practices for designing iPad apps that are simple and intuitive to use. Topics discussed are: Master-Detail views, Contextual Pop-overs, Model Views, Using Two Hands, Putting Fewer Features on the UI, Use …[more]


GUI stuff for designers

  • 4 Views of the iPad

    A PSD with 4 views of the iPad (front, back, face up, face up and in perspective that you can use as containers for your app’s screenshots, so that you can use a more realistic and beautiful image in your presentations or on the app’s website. …[more]

  • iPhone / iPad icon PSD template

    This PSD serves as a template for creating the main icon of your iPhone / iPad app. It is based off the exact overlays, outlines, and masks the iPhone and iPad OS use to mask icons. This lets you preview the pre-supplied gloss, or modify it. It’s made up entirely of shape layers …[more]

  • Gesturecons – Multi-Touch Icons

    Cool iPhone/iPad applications offer cool ways to interact with the functions and the data of the app…and this usually means making use of geatures such as double tab, finder slide, pinch, zoom, rotate, scroll etc. Documenting these types of interaction is important if you don&#…[more]

  • Touchscreen Hand Gestures

    Stencils for OmniGraffle containing a collection of drawn hands for documenting touchscreen interactions such as tap, swipe, pinch, zoom, slide. Even if you don’t own or use OmniGraffle, you might make a screenshots of the drawings on the download page, and cut them around t…[more]

  • 60 free Icons | Yummygum

    A collection of 60 free vector icons, all in a PSD Photoshop file. Icon are distributed in 32×32 and 16×16 size, are perfect for iPhone/iPad, but also for modern websites, and include the following: Account, Accounts, Calendar, Chat, Film, Photos, Home, Music, Dashboard, Monitor,…[more]

  • 30 free iPhone TabBar Icons | Dezinerfolio

    A collection of 30 free icons, in vector format, that you can use in iPhone/iPad TabBars. Subjects include: Settings, Magnify, Chat, Clip, Key, Lock, Paper, Anchor, Tag, Home, Bookmark, Camera, Tool, Person, User, Star, Scissors, Bar Chart, Pie Chart, Pencil, Phone, Printer, RSS,…[more]

  • iPhone 4 PSD

    A PSD file representing the iPhone 4 with some sample content. You can use the iPhone 4 image as a container for a screenshot of your app, so that it looks more realistic and beautiful (because of the beauty of the container 🙂
    Another PSD linked in this resources collecti…[more]

  • iPhone 2G / 3G / 3GS PSD

    This PSD contains layers that represent the front and back sides of the iPhone 2G (the one with the beautiful back, half aluminum and half black plastic), 3G and 3Gs. You can use this images (well, the front-side ones) as a container for screenshots of your apps, to be used in pr…[more]

  • iPad vector GUI elements

    This set contains a scalable and totally editable vector version of almost all iPad UI elements, including buttons, tabs, menus, keyboard, balloons, etc. Useful to have even if you typically work with PSD kits, since you can import Illustrator files in Photoshop. …[more]

  • iPhone UI Vector Elements

    This awesome kit, designed by the developers of the USA Today iPhone app, includes the vector representation of practically all iPhone’s UI elements. There’s everything, from buttons and textboxes, to sliders, list and pickers, to a complete collection of different keyb…[more]

  • FreshBooks iPhone Application GUI

    This PSD kit contains layers for buttons, navigation bars, lists and other typical elements of any iPhone UI. However, it’s different from other PSD kits in this collection: it doesn’t reproduce 1:1 the colors of the standard UI controls…the designer didn’t like …[more]

  • OmniGraffle Design Stencil for iPhone and iPad

    A stencil for designing iPhone OS applications for iPhone, iPod touch and iPad devices. All stencils have been originally created by hand from native and custom created OmniGraffle shapes then grouped for ease of use (so no PSD file that you can open with Photoshop and work with …[more]

  • Ultimate iPhone Stencil

    This stencils kit includes the typical UI elements such as backgrounds, title bars, buttons, selectors, toolbars, textboxes etc. But it also includes other elements not found in other kits, such as the Media Player controls, and the entire views for the Photo Gallery explorer. A …[more]

  • Yahoo! Design Stencils

    Available for OmniGraffle, Visio (XML), Adobe Illustrator (PDF and SVG), and Adobe Photoshop (PNG), this kit includes stencils for the following user interface items: Ad Units, Calendars, Carousels, Charts and Tables, Form Elements, Grids, Menus and Buttons, Mobile – General, Mob…[more]

  • iPhone PSD Vector Kit

    This set comes with several button elements as well as six different iPhone interface options. This pack may be useful for mobile developers and front-end designers who need a professional way to show mock-ups to clients or to work out ideas. You can use the set for all of your p…[more]

  • 5 free iPhone TabBar and Toolbar Icons

    The iPhone Common Icon Set contains icons that will be usefull for most iPhone applications, such as home, subscribe, info, help and update. The icons come in two sizes suitable for applications that use either a TabBar or a Toolbar. …[more]

  • 64 free iPhone Toolbar Icons | app-bits

    A set of 64 toolbar icons for the iPhone toolbar. These buttons contain beautiful shaded portions to give added depth and to highlight icon features. New: The download now has hi-res versions (52×52) for iPhone 4, in addition to the standard (26×26) version! You can’t edit t…[more]

  • 160 free iPhone Toolbar Icons | PixelPressIcons

    A great collection of 160 PNG icons specifically made for iPhone toolbars. They will really look great in your apps…and you’ll like to know that the author is giving them away for free for anyone to use *commercially*. Basically, you may use or modify these icons in any wa…[more]

  • Glyphish Icon Set

    A set of 130 great icons, in 24-bit PNG format, designed and carefully optimized for use on toolbars and tab bars in iPhone & iPad apps. The icons and shared under a Creative Commons Attribution license, and are a great addition to any developer’s or artist’s toolki…[more]

  • iPad GUI PSD

    This is the iPad version of the iPhone-PSD-Kit also described in this resource collection. It’s a big PSD file with most of the typical elements of the iPad user-interface: pop-overs, tables, lists, buttons, navigation bars, toolbars, search bars, pickers, textboxes, sliders…[more]

  • iPhone GUI PSD 4.0

    This is the updated and considerably extended version of the 3.0 PSD also described in this resource collection. It’s a big PSD file with most of the typical elements of the iPhone 4.0 user-interface: buttons, navigation bars, toolbars, search bars, pickers, textboxes, slide…[more]

  • iPhone GUI PSD 3.0

    A big PSD file (to be opened with Photoshop) with most of the typical elements of the iPhone 3.0 user-interface: buttons, navigation bars, toolbars, search bars, pickers, textboxes, sliders, switches, progress bars, keyboards etc. A great kit for creating real-looking mock-ups. …[more]



Suggest a new resource for inclusion into this directory

Just drop us a mail with the resource’ url, title and short description.

Note however that we will only approve quality resources that we judge to be useful to the developers community. Advertisement-like submissions will not be accepted, sorry.