1 Step

Reflexion
Things I learned (iOS Development)
- Using the MVVM design pattern on the SwiftUI framework
- Learning to write scalable code and structuring a large code base
- Building user interfaces with AlignmentGuides, PreferenceKeys and custom Paths
- Building and managing complex custom animations, gestures and overlays
- Handling dynamic app icons, app appearances along with color themes and text localization
- Working with the NSPersistentCloudKitContainer for CoreData with iCloud synchronization, synchronizing NSManagedObjectContext operations
- Managing persistent user data with UserDefaults that are synched with CloudKit
- Displaying repeating UserNotifications and handling the authentication logic
- Running UnitTests for important algorithms
- Integrating Firebase Analytics and Crashlytics
- Working with StoreKit and managing user purchases
- Publishing and managing the app with App Store Connect and TestFlight
- Actively taking part in the StackOverflow community, answering and writing many questions
Things I learned (Design)
- Planning and designing app user interfaces
- Working with Sketch and creating working prototypes
- Creating vector graphics, custom icons and rendering design mock ups
- Researching user experience
- Making and integrating tutorial gifs for new users
Technologies I used
- Swift
- SwiftUI and Combine
- CoreData and CloudKit
- Firebase Analytics and Crashlytics
- Xcode
- Sketch
- Miro
- Procreate
- Adobe Photoshop
- Final Cut Pro X
Object diagram of CoreData entities
