Learning iOS and Swift. Day 28: Signing in over API
Today I removed the mock from the login view and made the form actually call a login mutation upon submission.
Today I removed the mock from the login view and made the form actually call a login mutation upon submission.
Today I implemented a login view with a mocked authentication step.
Exploring integration with Apollo Client for iOS. Discovering MVVM architecture and singleton classes. Storing authentication data inside the Keychain using the Security module, which is part of Foundation.
I made my first steps building a watchOS application according to Apple's SwiftUI tutorial.
Following Apple's SwiftUI tutorial, I explore the interoperability techniques used to embed SwiftUI components inside UIKit Controllers, and vice versa. The tutorial teaches how to build a carousel view, which I find pretty cool. I also learned how to overlay text and a gradient over an image.
I implemented saving data in the practice edit view.
I found out how to programmatically return from a NavigationLink
.
I spent the whole evening going through tutorials and working on my side project, Ngöndro Tracker, leaving little time to post updates to the blog. Among others, I implemented a text field component with label, a helper to initialize colors from CSS hex strings, and began work on the view to edit practice settings.
Today I implemented persisting practice history each time the user adds some repetitions of a practice.
I also implemented a simple view for presenting those records.
I found out how to implement custom keys for Decodable
data structures.
Following Apple's tutorial on graphics leaves me completely dumbfounded. Does it mean I will learn how to make stuff as pretty as Apple's native apps?
I implemented adding custom amounts of mantras or repetitions of practices to the Ngöndro Tracker using a wrapper for UIAlertController
.
After following two parts of Apple's SwiftUI tutorial, I made some improvements to the first iteration of my side project, Ngöndro Tracker.
I found out some amazing SwiftUI tutorials from Apple, and they are free. I followed one along on the way to Cracow today.
Today I spent the whole evening working on my pet project, Ngöndro Counter. Therefore, the blog post will consist solely of the project update.
Brief progress update on issues from the book. I present the mobile app I want to work on henceforth.
I spent another evening treading through SQLite's low-level C APIs. I integrated a very naïvely written data store built with these APIs into a simple iOS GUI app. Finally, I found out how to detect dark mode on macOS using Swift APIs.
I intended to write about @AppStorage
and @SceneStorage
, but I ended up playing around with SQLite3 in C and Swift.
Describing observable objects, which act like event-driven data sources, and @EnvironmentObject
s,
which expose a given object to the entire view tree.
Today I explore basic state management using @State
, @Binding
, and @Environment
property wrappers.
In today's post I introduce the basic techniques used to translate strings within SwiftUI applications. I also present a simple component with an image placed in a circle.
Tips and tricks for synchronizing Xcode's keyboard shortcuts between devices, autoformatting Swift files in Neovim, and IntelliSense. Brief description of a prototype scene built along chapter 3 of SwiftUI Apprentice.