Apple WWDC 2014

Sample Code for WWDC

Download, build, and learn how to implement the latest Apple technologies with the sample code presented at WWDC.

Please Note: This set of sample code was released during the week of WWDC 2014 and may contain information that has since changed or is incompatible with current versions of Xcode. For newer versions of sample code, visit the iOS Developer Library and Mac Developer Library.

Accessible Tic Tac Toe

Demonstrates how to implement the OS X Accessibility API to create a simple, accessible tic tac toe game.
Session: Accessibility on OS X
Platform: OS X

AdaptivePhotos: An Adaptive Application

Illustrates how to make your app universal and adaptive.
Session: Building Adaptive Apps with UIKit
Platform: iOS

Advanced User Interfaces Using Collection View

Demonstrates code factoring, swipe to edit, drag reordering, and a sophisticated custom collection view layout.
Session: Advanced User Interfaces with Collection Views
Platform: iOS

AVCamManual: Using the Manual Capture API

Demonstrates how to add manual controls for focus, exposure, and white balance to the AVCam sample application.
Session: Camera Capture: Manual Controls
Platform: iOS

AVLocationPlayer: Using AVFoundation Metadata Reading APIs

Demonstrates how to use AVFoundation APIs to read location metadata from a movie file.
Session: Harnessing Metadata in Audiovisual Media
Platform: OS X

avmetadataeditor

Shows a command line application demonstrating how to use the AVFoundation metadata APIs.
Session: Harnessing Metadata in Audiovisual Media
Platform: OS X

AVTimedAnnotationWriter: Using Custom Annotation Metadata for Movie Writing and Playback

Demonstrates the use of AVFoundation writing APIs to store timed metadata into a movie.
Session: Harnessing Metadata in Audiovisual Media
Platform: iOS

Bananas: A simple SceneKit platforming game

Demonstrates the development of a casual 3D game using Scene Kit.
Session: Building a Game With SceneKit
Platform: iOS and OS X

BracketStripes: Using the Bracketed Capture API

Illustrates the use of the still image bracketing APIs available in AVFoundation.
Session: Camera Capture: Manual Controls
Platform: iOS

CloudKit Atlas: An Introduction to CloudKit

New sample code that demonstrates the basics of CloudKit.
Sessions: Introducing CloudKit; Advanced CloudKit
Platform: iOS

Earthquakes: Using Second Core Data Stack to Fetch Data in Background

Shows how to use a second Core Data stack to fetch data on a background queue.
Platform: OS X

Example app using Photos framework

Shows a basic Photos-like app which introduces the Photos framework.
Session: Introducing the Photos Frameworks
Platform: iOS

FileCards: Using NSPageController

Demonstrates how to use NSPageController, displaying the contents of the user's Documents folder.
Platform: OS X

Fit: Store and Retrieve HealthKit Data

Demonstrates how to interact with HealthKit APIs.
Platform: iOS

GestureRecognizers: Using standard UIGestureRecognizers

Shows how to use standard gesture recognizers in Swift.
Platform: iOS

HelloGoodbye: Using the Accessibility API to Widen Your User Base

Demonstrates how to make an iOS app accessible to a variety of users, including users with low vision.
Session: 210
Platform: iOS

ImageInverter: Creating Action Extensions

Demonstrates how to use an Action extension with a view controller.
Platform: iOS

Implementing Accessibility on OS X

Illustrates how to make various control elements accessible using the Accessibility API.
Session: Accessibility on OS X
Platform: OS X

JavaScript for Automation Cocoa Application

Demonstrates how to use an Xcode project to build a Cocoa application written entirely in JavaScript for Automation.
Session: JavaScript for Automation
Platform: OS X

JavaScript for Automation WWDC 2014 Demos

New sample code featuring demos from the WWDC 2014 session on JavaScript for Automation.
Session: JavaScript for Automation
Platform: OS X

KeychainTouchID: Using Touch ID with keychain and LocalAuthentication

Shows how to use Touch ID with keychain items and how to invoke Touch ID authentication.
Session: Keychain and Authentication with Touch ID
Platform: iOS

Lister: A Productivity App

Productivity app that showcases some of the important features in iOS 8 and OS X 10.10, including embedded frameworks, UI extensions, and other modern Cocoa features.
Session: Integrating Swift with Objective-C
Platform: iOS and OS X

Lister: A Productivity App Built in Swift

Productivity app that showcases some of the important features in iOS 8 and OS X 10.10, including embedded frameworks, UI extensions, and other modern Cocoa features.
Session: Integrating Swift with Objective-C
Platform: iOS and OS X

LookInside: Presentation Controllers Adaptivity and Custom Animator Objects

Demonstrates how to use a custom presentation controller to create a custom view controller presentation.
Session: A Look Inside Presentation Controllers
Platform: iOS

MetalBasic3D: OpenGL ES template ported to Metal

Provides an example ported from the Xcode OpenGL ES template to Metal and includes a geometric math library built on top of the simd.h library.
Session: Working with Metal: Advanced
Platform: iOS

MetalDeferredLighting

Demonstrates a deferred lighting algorithm using Metal.
Session: Working with Metal: Advanced
Platform: iOS

MetalEnvironmentMapping

Demonstrates environment mapping by combining 2D mipmap PVRTC textures, cube map textures and lighting in Metal.
Session: Working with Metal: Advanced
Platform: iOS

MetalImageProcessing

Demonstrates how to load a texture into a 2D Quad and perform a simple grayscale conversion compute post processing pass using Metal.
Session: Working with Metal: Advanced
Platform: iOS

MetalTexturedQuad

Illustrates how to create a basic textured quad in Metal.
Session: Working with Metal: Advanced
Platform: iOS

MetalUniformStreaming

Demonstrates how to synchronize uniform buffer resource writes between the CPU and GPU in Metal.
Session: Working with Metal: Advanced
Platform: iOS

MetalVertexStreaming

Shows how to stream vertex data between 3 command buffers using one block of memory shared by both the CPU and GPU.
Session: Working with Metal: Advanced
Platform: iOS

MotionActivityDemo

Demonstrates the use of the CMMotionActivity and CMPedometer APIs in an app.
Session: Motion Tracking with the Core Motion Framework
Platform: iOS

Mountains: Internationalization and Localization for OS X

Illustrates localization and internationalization APIs and techniques including Base Localization and Auto Layout using Swift.
Platform: OS X

NewBox: An Introduction to iCloud Document enhancements in iOS 8.0

Provides an introduction to UIDocumentPickerViewController and demonstrates how to use Storage Provider Extension.
Session: Building a Document Based App
Platform: iOS

PeoplePicker: Using AddressBookUI

Demonstrates how to ask the user to pick a person or person's property from the user's address book.
Session: User Privacy in iOS and OS X
Platform: iOS

Photo Memories

Demonstrates how to organize an Xcode project to build both an iOS and OS X app while sharing code.
Session: Sharing code between iOS and OS X
Platform: iOS and OS X

QuickContacts

Demonstrates how to use the Address Book UI controllers and properties.
Session: User Privacy in iOS and OS X
Platform: iOS

Sample Photo Editing Extension

Demonstrates how to implement a Photo Editing extension.
Session: Introducing the Photos Frameworks
Platform: iOS

SceneKit slides for WWDC 2014

Illustrates what's new in SceneKit in OS X v10.10.
Session: What's new in SceneKit
Platform: OS X

SceneKit State of the Union demo

Scene Kit demo for the WWDC 2014 State of the Union.
Session: What's new in SceneKit
Platform: iOS and OS X

SceneKit Vehicle Demo

Demonstrates how to simulate and play with a vehicle with SceneKit.
Session: What's new in SceneKit
Platform: iOS

Toast Modern Prototype

Keynote and Core Animation files illustrate how the prototypes for this session were created.
Session: Prototyping: Fake It Till You Make It
Platform: iOS

UICatalog: Creating and Customizing UIKit Controls

Demonstrates how to create and customize user interface controls found in UIKit.
Platform: iOS

UICatalog: Creating and Customizing UIKit Controls in Swift

Demonstrates how to create and customize user interface controls found in UIKit using the Swift language.
Platform: iOS

Using AVFoundation APIs to record a movie with location metadata

Demonstrates the use of AVFoundation writing APIs to store timed metadata into a movie.
Session: Harnessing Metadata in Audiovisual Media
Platform: iOS

Using video toolbox to decode compressed sample buffers

Demonstrates how to get direct access to decoded media samples with Video Toolbox.
Session: Direct Access to Media Encoding and Decoding
Platform: iOS

VisualEffectPlayground: Blurs, Translucency and Vibrancy on OS X

Demonstrates how to use NSVisualEffectView to do blurs.
Session: Adopting Advanced Features of the New UI of OS X Yosemite
Platform: OS X