Projects, playgrounds, and other material made while following along with Paul Hudson’s 100 Days of SwiftUI course -- and adapting it to my own experiments around Combine and SwiftUI architecture.
If you're just getting started with SwiftUI, I'd recommend the About SwiftUI repo as a reference of all the different learning resources out there. Hopefully, though, this repo can offer some helpful examples, too.
For each day that proves conducive to some kind of code or content, I'll make a standalone folder and link to it below. I'll also make a section for any standalone projects that span multiple days so those can be found directly.
I'm currently seeking freelance, remote opportunities as an iOS developer! If you're looking for an experienced software engineer who's been diving deep into SwiftUI, Combine, and iOS 13 since WWDC (and who welcomes being paid in Bitcoin 🙂), and you could use some help with any of those things, please feel free to reach out ✌️.
Full List
- Days 1-15: Introduction to Swift (Covered during the 100 Days of Swift challenge.)
- Day 16: Project 1: WeSplit (Part One)
- Day 17: Project 1: WeSplit (Part Two)
- Day 18: Project 1: WeSplit (Part Three)
- Day 19: Challenge Day
- Day 20: Project 2: Guess The Flag (Part One)
- Day 21: Project 2: Guess The Flag (Part Two)
- Day 22: Project 2: Guess The Flag (Part Three)
- Day 23: Project 3: Views and Modifiers (Part One)
- Day 24: Project 3: Views and Modifiers (Part Two)
- Day 25: Milestone for Projects 1-3
- Day 26: Project 4: BetterRest (Part One)
- Day 27: Project 4: BetterRest (Part Two)
- Day 28: Project 4: BetterRest (Part Three)
- Day 29: Project 5: WordScramble (Part One)
- Day 30: Project 5: WordScramble (Part Two)
- Day 31: Project 5: WordScramble (Part Three)
- Day 32: Project 6: Animation (Part One)
- Day 33: Project 6: Animation (Part Two)
- Day 34: Project 6: Animation (Part Three)
- Day 35: Milestone for Projects 4-6
- Day 36: Project 7: iExpense (Part One)
- Day 37: Project 7: iExpense (Part Two)
- Day 38: Project 7: iExpense (Part Three)
- Day 39: Project 8: Moonshot (Part One)
- Day 40: Project 8: Moonshot (Part Two)
- Day 41: Project 8: Moonshot (Part Three)
- Day 42: Project 8: Moonshot (Part Four)
- Day 43: Project 9: Drawing (Part One)
- Day 44: Project 9: Drawing (Part Two)
- Day 45: Project 9: Drawing (Part Three)
- Day 46: Project 9: Drawing (Part Four)
- Day 47: Milestone for Projects 7-9
- Day 48: What Star Wars can Teach Us About Swift
- Day 49: Project 10: CupcakeCorner (Part One)
- Day 50: Project 10: CupcakeCorner (Part Two)
- Day 51: Project 10: CupcakeCorner (Part Three)
- Day 52: Project 10: CupcakeCorner (Part Four)
- Day 53: Project 11: Bookworm (Part One)
- Day 54: Project 11: Bookworm (Part Two)
- Day 55: Project 11: Bookworm (Part Three)
- Day 56: Project 11: Bookworm (Part Four)
- Day 57: Project 12: Core Data (Part One)
- Day 58: Project 12: Core Data (Part Two)
- Day 59: Project 12: Core Data (Part Three)
- Day 60: Milestone for Projects 10-12 (Part One)
- Day 61: Milestone for Projects 10-12 (Part Two)
- Day 62: Project 13: Instafilter (Part One)
- Day 63: Project 13: Instafilter (Part Two)
- Day 64: Project 13: Instafilter (Part Three)
- Day 65: Project 13: Instafilter (Part Four)
- Day 66: Project 13: Instafilter (Part Five)
- Day 67: Project 13: Instafilter (Part Six)
- Day 68: Project 14: PlaceCase (Part One)
- Day 69: Project 14: PlaceCase (Part Two)
- Day 70: Project 14: PlaceCase (Part Three)
- Day 71: Project 14: PlaceCase (Part Four)
- Day 72: Project 14: PlaceCase (Part Five)
- Day 73: Project 14: PlaceCase (Part Six)
- Day 74: Project 15: Accessibility (Part One)
- Day 75: Project 15: Accessibility (Part Two)
- Day 76: Project 15: Accessibility (Part Three)
- Day 77: Milestone for Projects 13-15 (Part One)
- Day 78: Milestone for Projects 13-15 (Part Two)
- Day 79: Project 16: QRConnections (Part One)
- Day 80: Project 16: QRConnections (Part Two)
- Day 81: Project 16: QRConnections (Part Three)
- Day 82: Project 16: QRConnections (Part Four)
- Day 83: Project 16: QRConnections (Part Five)
- Day 84: Project 16: QRConnections (Part Six)
- Day 85: Project 16: QRConnections (Part Seven)
- Day 86: Project 17: Flashzilla (Part One)
- Day 87: Project 17: Flashzilla (Part Two)
- Day 88: Project 17: Flashzilla (Part Three)
- Day 89: Project 17: Flashzilla (Part Four)
- Day 90: Project 17: Flashzilla (Part Five)
- Day 91: Project 17: Flashzilla (Part Six)
- Day 92: Project 18: Layout And Geometry (Part One)
- Day 93: Project 18: Layout And Geometry (Part Two)
- Day 94: Project 18: Layout And Geometry (Part Three)
- Day 95: Milestone for Projects 16-18
- Day 96: Project 19: PadFinder (Part One)
- Day 97: Project 19: PadFinder (Part Two)
- Day 98: Project 19: PadFinder (Part Three)
- Day 99: Project 19: PadFinder (Part Four)