/100-Days-of-SwiftUI

Solutions to Paul Hudson's 100 Days of SwiftUI projects and challenges

Primary LanguageSwift

100 Days of SwiftUI

Swift version Xcode version SwiftUI Progress

Solutions to Paul Hudson's 100 Days of SwiftUI projects and challenges

Requirements

  • iOS 17 or later
  • iPhone XR or iPhone SE (2nd Generation) or newer

Preview

Project / Topics
Project 1: WeSplit
Form, Section, NavigationView, @State property wrapper, TextField, Picker, ForEach
Challenge 1: Converter
VStack, Image, Alert
Project 2: Guess the Flag
VStack, Image, Alert, Animations
Project 3: View and Modifiers
Views, modifiers, composition, containers
Milestone 1: Rock Paper Scissors
Project 4: BetterRest
Machine Learning (Core ML), Dates (DatePicker, DateComponents, DateFormatter) Stepper
Project 5: Word Scramble
List, Bundle, fatalError(), UITextChecker
Project 6: Animations
Animations, transitions
Milestone 2: Multiplication Tables
Project 7: iExpense
UserDefaults, SwiftData, Codable, sheet(), onDelete(), @Observable, Navigation, Hashable
Project 8: Moonshot
ScrollView, Navigation, Codable, Generics, Hashable
Project 9: Navigation
NavigationStack, NavigationLink, navigationDestination()
Milestone 3: Habit Tracker
Project 10: Cupcakes Corner
Codable, Async/Await, URLSession, @Observable, @Bindable
Project 11: Bookworm
SwiftData, @Binding, custom components
Project 11: SwiftDataProject
SwiftData
Milestone 4: UserList
Project 13: Instafilter
CoreImage, CoreImage.CIFilterBuiltins, PhotosUI, StoreKit, .confirmationDialog()
Project 14: Bucket List
MapKit, CoreLocation, LocalAuthentication (FaceID Authentication), Secure Data Writing, Comparable, @Observable, MVVM
Project 15. AccessibilitySandbox
Accessibility
Milestone 5: EventContacts
SwiftData, PhotosUI, Comparable, MapKit
Project 16. Hot Prospects
Tab Views, Result, .contextMenu, UserNotifications, SwiftData
Project 17. Flashzilla
Gestures, Timers, Accessibility
Project 18. LayoutAndGeometry
GeometryReader, Layout, alignment
Milestone 6: Roll the Dice
SwiftData, Picker
Project 19. SnowSeeker
NavigationSplitView, Optional Alerts, List, .searchable(), UserDefaults

Certificate of Completion

Click to view

Contact

If you have any questions or feedback, you can reach me through the following channels: