Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Sample code shown in NSScreencast episodes.
Objective-C C Ruby Shell Assembly Objective-C++ Other
branch: master
Failed to load latest commit information.
001-objective-c-basics/SchoolApp Episode 1 example app
002-diagnosing-memory-problems/MemoryProblems Added episode 2 source code
003-tableview-basics/TableViewBasics Added episode 3 sample code
004-bdd-style-testing-with-kiwi Episode 32 sample code
005-cocoa-pods added episode 5 source
006-afnetworking/BeerList episode 6 source code
007-serializing-data/Bookmarks Finished sample for episode 7
008-automatic-paging Show notes as readme
009-automatic-reference-counting/Bookmarks Finished sample for episode 9
010-fun-with-blocks/FunWithBlocks Episode 10 sample
011-core-data-basics/CoreDataBasics Episode 11 sample code
012-core-data-importing-data/BeerBrowser Revert "Fix issue where duplicate records were being inserted"
013-jenkins Fix broken test
014-tracking-download-progress/TrackingDownloadProgress Tracking download progress example
015-http-caching/CacheClient Episode 15 source code
016-kvo/KVOFun Episode 16 sample code
017-app-provisioning/nsscreencast Episode 17 sample code
019-push-notifications Episode 19 sample code
021-custom-navbar/CustomizingNavigationBar Swapped episode 21 & 22
022-custom-tabbar/CustomizingNavigationBar Swapped episode 21 & 22
023-intro-to-storyboards/StoryboardSample Added episode 23
024-pull-to-refresh/PullToRefresh Finished pull to refresh sample
025-custom-picker-component-part-1/CustomPicker Episode 25
026-custom-picker-component-part-2/CustomPicker-finished Fix warnings with iOS 6
027-new-objective-c-syntax/SyntaxLevelUp Episode 27 sample code
028-creating-a-cocoapod/BSModalPickerView Readme pointing to the real code for ep 28
029-rubymotion ep 29 sample code
030-parse/Fotogram Finished parse example
031-forms Added epsisode 35 sample code
032-core-graphics-gradients/FunWithGradients Fix ARM+ARC EXC_BAD_ACCESS in glossy gradient drawing
033-core-graphics-polygons/DrawingPolygons fix incorrect sin/cos for x & y
034-upgrading-to-ios6/UpgradeDemo2 Added ep 34 sample code
035-autolayout-fun/AutolayoutFun Added epsisode 35 sample code
036-searching-in-uitableview/SearchStore Fix crash for nil moc
038-class-introspection/Introspecty Episode 38 sample code
039-smart-json-parsing/SmartJsonParsing Episode 39 sample code
040-shine-effect/nsscreencast episode 40 sample code
041-authentication-with-afnetworking Finished ep 41 sample app
042-retrying-requests/AuthClient Completed episode 42 sample code
043-avaudioplayer AVAudioPlayer sample
044-in-app-purchases/iap Removed weird chars
045-validating-iap-receipts Finished episode 45 sample
045-validating-iap iap gateway changes for 045
046-fun-with-uicollectionview/CollectionViewFun episode 46 sample code
047-gesture-recognizers/PhotoTable Using the shouldRecognizeSimultaneouslyWithGestureRecognizer
048-code-snippets Sample code snippets
049-slide-out-menus/SlideOutMenus Added replacement list icon
050-custom-cells Finished episode 50 sample code
051-intro-to-restkit-mapping Finished episode 51
052-restkit-core-data Finished example
053-restkit-object-manager Added readme for 53
054-pony-debugger/BeerInfo Added ep. 54 source code
055-versioning/Versioner Episode 55 sample code
056-twitter-integration Twitter integration episode
057-facebook-integration Added facebook sample code
058-container-view-controllers/SlidePopExample Added episode 58 sample code
059-windows-azure-mobile-services Added episode 59 sample code
060-windows-azure-mobile-services-part-2/nsscreencast-chat Added ep60 code directly
061-cocoa-lumberjack/LoggingApp Added episode 61 sample code
062-mailing-logs/LoggingApp Add ep62 sample code
063-from-scratch/WhatsAround Episode 63
064-mapkit-annotations Episode 64
066-processing-shape-files Episode 066 sample code
067-map-overlays/WhatsAround-Overlay Add 067 map overlay sample
068-xcode-project-templates/NSScreencast Templates/Application.xctemplate Add episode 68
069-nsfetchedresultscontroller NSFetchedResultsController example
070-autolayout-with-cells add ep 70
071-nsnumberformatter Episode 71 sample code
072-objective-c-collections/FunWithCollections Episode 72 sample code
073-ssl-pinning/PinningDemo Pinning demo for episode 73
074-oauth2/InstagramClient Oauth2 sample project
075-a-tale-of-uiscrollview-customization Scroll view examples
076-extracting-data-from-strings/RegexCli added e76
077-tdd-money-with-specta-and-expecta/MoneyTDD Episode 77
078-tdd-money-part-2/MoneyTDD Episode 78
079-sketch Sketch assets
081-associated-objects/BlockButton ep 81
082-tdd-view-controllers-with-specta-and-ocmock/LoginTester Episode 91
083-tdd-view-controllers-part-2/LoginTester Episode 83
084-xctool/LoginTester Episode 84
085-hello-ios7/HelloIOS7 Episode 085
086-ios7-view-controller-transitions Episode 86
087-xcode5-autolayout-improvements Episode 087
088-interactive-view-controller-transitions Episode 88
089-networking-in-ios7/TuneStore Episode 89
090-tableview-images-in-ios7/TuneStore Check for error in response
091-afnetworking-2-0/TuneStore remove some files
092-background-fetch Episode 92
093-background-transfers/ImageDownloader Create bg session lazily
094-upgrading-an-old-project-to-xctest/GuessTheNumber-XCTest Episode 94
095-fun-with-i-beacons/BeaconFun Episode 95
096-face-detection/CoreImageFun Episode 96
097-scrolling-nub/ScrollingNub Episode 97 completed
098-camera-capture/LiveVideoCapture Episode 98
099-parsing-and-formatting-dates/DateFormattingFun Episode 99
100-particle-systems/ParticleFun Episode 100
101-nspredicate/PredicateFun Episode 101
102-refactoring-view-controllers Add episode 102
103-refactoring-view-controllers-part-2 Episode 103
104-blur/BlurDemo Episode 104
105-strong-versus-copy/CopyVersusStrong Episode 105
106-uitableviewcell-swipe-action/SwipeCellAction Episode 106
107-swipe-to-reveal-cells Episode 109
108-unwinding-segues Episode 108
109-mdmcoredata Now using NSManagedObject category.
110-swipe-to-reveal-redux Fix retain cycle by setting tableView pointer to weak
111-xcode51/Xcode51 Episode 112
112-giggletouch Episode 112
113-giggletouch-part-2/GiggleTouch Episode 113
114-playing-sounds-with-sprite-kit/GiggleTouch Episode 114
116-mantle Episode 116
117-url-schemes Need to return yes if we handled it
118-integrating-with-1password/LoginDemo Episode 118
119-url-scheme-callbacks Episode 119
120-mantle-with-core-data Episode 120
121-mantle-with-core-data-part-2/MantleWithCoreData Episode 121
122-animating-with-pop/PopDemo Episode 122
123-sthttprequest/STHTTPDemo Episode 123
124-method-swizzling/SwizzleFun Episode 124
125-swift-basics Fixes for newer swift changes
126-swift-classes Fixes for newer swift changes
127-swift-operators Updated for swift changes
128-swift-networking Updated for swift changes
129-swift-json Updated for swift changes
130-swift-json-redux-part-1 Fixes Xcode 6.1 GM Seed 2 compile errors
131-swift-json-redux-part-2 Fixes Xcode 6.1 GM Seed 2 compile errors
132-realm/RealmDemo Episode 132
133-auto-layout-in-code/LayoutFun Episode 133
134-visual-format-language/LayoutFun Episode 134
135-animating-constraints/LayoutFun Episode 135
136-clipping-paths/ConnectFour Episode 136
137-fun-with-uikit-dynamics/FunWithDynamics episode 137
138-ibdesignable/IBDesignableDemo Episode 138
139-today-extensions-in-ios8/CoffeeTracker Episode 139
140-uiattachments/AttachmentDemo Episode 140
141-simulating-rope-with-uikit-dynamics/Ropes Episode 141
142-error-handling-in-swift/Result.playground Episode 142
143-flat-map/FlatMap.playground Episode 143
144-share-extensions-part-1 Episode 144
145-share-extensions-part-2 Episode 145
146-vibrancy-and-blur/BlurDemo Episode 146
147-core-image/CoreImageDemo Episode 147
148-function-composition-with-ci-filters Episode 148
149-how-bezier-paths-work Episode 149
150-cocoa-windows/HelloCocoa Episode 150
151-cabasicanimation/CABasicAnimations Episode 151
152-cocoa-bindings/CocoaBindings episode 152
153-feature-toggles/Toggle Episode 153
154-xcconfig-files/ConfigDemo Episode 154
155-xcconfig-files-part-2/ConfigDemo Episode 155
156-road-trip-dj-part-1 Episode 156
157-road-trip-dj-part-2/RoadTripDJ Episode 157
158-road-trip-dj-part-3/RoadTripDJ Episode 158
159-road-trip-dj-part-4/RoadTripDJ Episode 159
160-road-trip-dj-part-5/RoadTripDJ Episode 160
161-road-trip-dj-part-6/RoadTripDJ Episode 161
162-road-trip-dj-part-7/RoadTripDJ Episode 162
163-road-trip-dj-part-8/RoadTripDJ episode 163
164-road-trip-dj-part-9/RoadTripDJ episode 164
165-road-trip-dj-part-10/RoadTripDJ Fix simulator build
166-road-trip-dj-part-11/RoadTripDJ Episode 166
.gitignore gitignore/readme
.gitmodules Fixed submodules
README.md Update README.md

README.md

NSScreencast Example Code

Here you'll find the sample code used in NSScreencast episodes.

Requirements

Most of the samples will require the most recent version of Xcode.

Dependencies

Many of the videos include references to 3rd party libraries. Please be aware that these libraries are bound by their own respective licenses.

License

Copyright (c) 2012 Ben Scheirman.

Use of the code provided on this repository is subject to the MIT License.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Something went wrong with that request. Please try again.