Solutions to Paul Hudson's "100 days of Swift" projects and challenges.
https://www.hackingwithswift.com/100
Type | Number | Completion |
---|---|---|
Projects | 30 / 30 | 100% |
Challenges | 90 / 90 | 100% |
Milestone Projects | 10 / 10 | 100% |
Other | 1 / 1 | 100% |
Within each project are larger versions of the screenshots.
Projects / Topics | Screenshots |
---|---|
Project 1 - Storm Viewer (with challenges) View controllers, Storyboard, FileManager |
|
Project 2 - Guess the Flag (with challenges) UIButton, CALayer, IBAction |
|
Project 3 - Social Media (with challenge 1) (base: project 1) UIBarButtonItem, UIActivityController |
|
Project 3 - Challenge 2 (base: project 1) |
|
Project 3 - Challenge 3 (base: project 2) |
|
Milestone projects 1-3 - Country Flags |
|
Project 4 - Easy Browser (with challenges) WKWebView, Action sheets, UIToolbar, UIProgressView |
|
Project 5 - Word Scramble (with challenges) Reading from disk, UIAlertController, IndexPath |
|
Project 6a - Auto Layout (base: project 2) Auto Layout, Constraints, Visual Format Language |
|
Project 6b - Auto Layout (with challenges) Auto Layout, Constraints, Visual Format Language |
|
Milestone projects 4-6 - Shopping List |
|
Project 7 - Whitehouse Petitions (with challenges) UITabBarController, JSON, Data, Codable |
|
Project 8 - 7 Swifty Words (with challenges) UI in code, Text alignment, Layout Margins, UIFont |
|
Project 9 - Grand Central Dispatch (base: project 7) Grand Central Dispatch, PerformSelector |
|
Project 9 - Challenge 1 (base: project 1) |
|
Project 9 - Challenge 2 (base: project 8) |
|
Project 9 - Challenge 3 (base: project 7) |
|
Milestone projects 7-9 - Hangman |
|
Project 10 - Names to faces (with challenges 1 and 2) UICollectionView, UIImagePickerController, NSObject |
|
Project 10 - Challenge 3 (base: project 1) |
|
Project 11 - Pachinko (with challenges) SpriteKit, Nodes, UITouch, Physics Body, SKAction, Collisions, Emitters |
|
Project 12 - User Defaults |
No screenshot |
Project 12a - User Defaults (base: project 10) UserDefaults, JSON, NSCoding |
|
Project 12b - User Defaults (base: project 10) UserDefaults, JSON, Codable |
|
Project 12 - Challenge 1 (base: project 1) |
|
Project 12 - Challenge 2 (base: project 2) |
|
Project 12 - Challenge 3 (base: project 5) |
|
Milestone projects 10-12 - Photo captions |
|
Project 13 - Instafilter (with challenges) UISlider, UIImagePickerController, CIContext, CIFilter, Saving photos |
|
Project 14 - Whack-a-Penguin (with challenges) SKCropNode, SKTexture, SKAction |
|
Project 15 - Animation Animation, CGAffineTransform |
|
Project 15 - Challenge 1 (base: project 8) |
|
Project 15 - Challenge 2 (base: project 13) |
|
Project 15 - Challenge 3 (base: project 2) |
|
Milestone projects 13-15 - Country facts |
|
Project 16 - Capital Cities (with challenges) MapKit, MKMapView, MKAnnotation, CLLocationCoordinate2D |
|
Project 17 - Space Race (with challenges) Collisions, Timer, Linear / Angular damping |
|
Project 18 - Debugging Debugging |
No screenshot |
Project 18 - Challenge 1-2 (base: project 1) |
|
Milestone projects 16-18 - Shooting Gallery |
|
Project 19 - Javascript Injection (with challenges) Safari Extensions, NSExtensionItem, UITextView, NotificationCenter |
|
Project 20 - Fireworks Night (with challenges) UIBezierPath, SKAction follow, Emitter nodes |
|
Project 21 - Local Notifications (with challenges 1 and 2) Notifications, UNUserNotificationCenter, UNNotificationRequest |
|
Project 21 - Challenge 3 (base: project 2) |
|
Milestone projects 19-21 - Notes |
|
Project 22 - Detect-a-Beacon (with challenges) iBeacons, Core Location, CLBeaconRegion |
|
Project 23 - Swifty Ninja (with challenges) SKShapeNode, AVAudioPlayer, CGPath, UIBezierPath, SKTexture |
|
Project 24 - Swift Strings (with challenges) Strings, NSAttributedString |
No screenshot |
Milestone projects 22-24 - Swift Extensions |
No screenshot |
Project 25 - Selfie Share (with challenges) Peer to Peer networking, MCSession, MCBrowserViewController, MCPeerID |
|
Project 26 - Marble Maze (with challenges) Accelerometer, CMMotionManager, Load level from file, Physics Bitmasks |
|
Project 27 - Core Graphics (with challenges 1 and 2) Core Graphics, UIGraphicsImageRenderer, Fills and Strokes, Transforms |
|
Project 27 - Challenge 3 (base: project 3) |
|
Milestone projects 25-27 - Meme Generator |
|
Core Graphics redux |
No screenshot |
Project 28 - Secret Swift (with challenges 1 and 2) Biometrics authentication, Touch ID, Face ID, iOS keychain |
|
Project 28 - Challenge 3 (base: project 10) |
|
Project 29 - Exploding Monkeys (with challenges) SKTexture, Filling a path, Mixing UIKit and SpriteKit, Texture atlases |
|
Project 30 - Instruments (with challenges 1 and 3) Instruments, Time Profiler, Allocations, Shadows, Table cells in code |
|
Project 30 - Challenge 2 (base: Milestone projects 1-3) |
|
Milestone projects 28-30 - Match Pairs |