
Open Xcode to create a SwiftUI iOS app, organize the project into app, core, extensions, models; set up authentication and root views, then build login and signup UI.
Build a login and signup flow in swiftui using a navigation stack, image, text fields, forgot password, and sign up links; refactor with a custom view modifier for cleaner code.
learn to build a SwiftUI tab bar with a selection-bound TabView, custom icons that switch between filled and outline, and scaffolded feed, explore, create thread, activity, and profile views.
Build a feed view UI in SwiftUI by wrapping a scroll view of lazy-loaded thread cells inside a navigation stack, with pull-to-refresh and a toolbar refresh button.
Create an Explore view with a scrollable, searchable user list, follow/unfollow controls, and profile navigation using vstack and search bar. Refactor into components: circular profile image view and user cell.
Build a SwiftUI profile view with a scrollable header, bio, stats, a profile image, and a scalable thread filter using an enum and matched geometry animation.
Build an edit profile UI in SwiftUI with a navigation stack and a white card layout featuring name, profile image, bio, link, and a private profile toggle, plus toolbar actions.
Build the create thread UI in SwiftUI using a navigation stack and top toolbar, with a caption text field and an X clear button that enables posting.
Learn to set up and integrate Firebase into an iOS app by configuring authentication, Cloud Firestore, and storage, using Swift Package Manager and the Google service plist.
Register a user using Firebase authentication with async/await, build a registration view model and auth service, test sign-up flows, and prepare to save user data in Firestore.
Implement login, logout, and keep-authenticated sessions using a shared firebase auth service, routing users to the main interface or login view via a content view model.
Explore a shared authentication service architecture that synchronizes a single user session across login, registration, and content views, and implement a Firestore-backed user model for upload and fetch.
Populate the profile view with the current user from the view model, using optional bio handling to adjust layout. Test login, signup, and sign out with Firestore, combine, and async/await.
Load users in the explore view by fetching them via a Firestore service with async/await, then navigate to their profile when a user cell is tapped.
Refactor profile navigation by splitting the current user profile from navigable profiles, injecting the selected user, and extracting reusable components (profile header, user content list) to fix navigation stack issues.
Launch the edit profile sheet from the profile view and implement a photos picker to select, load, and display the new profile image with a view model.
Learn to refactor the edit profile flow, implement a dedicated image uploader, and upload profile images to Firebase Storage, updating Firestore with the new image URL using async/await.
Load and display each user’s profile image from its url with Kingfisher by injecting a user object and showing a placeholder when absent, while supporting configurable circular sizing.
Model a thread with identifiable and codable properties, including a computed id tied to Firestore’s document ID, then implement upload logic via a thread service and view model.
Fetch and display threads from Firestore in a SwiftUI iOS 17 feed, using async/await to load threads by timestamp and then fetch each thread's user data for display.
Fetch and refresh user threads in a SwiftUI iOS 17 app using Firestore and async/await, filtering by owner uid with pull-to-refresh and timestamp sorting.
Overview:
Dive into the world of modern iOS app development by joining our comprehensive course on creating a Threads app clone using SwiftUI. In this hands-on journey, you'll gain a deep understanding of SwiftUI's powerful declarative syntax while building a feature-rich social media app.
Course Highlights:
Through a series of engaging lectures, practical exercises, and real-world projects, you will learn to:
Build a full scale mobile application from scratch with SwiftUI
Implement secure authentication using Firebase. Learn how to manage user sessions and provide a seamless signup and log-in experience.
Create and upload Threads to drive conversation and engagement with your followers
Display Threads in a media feed
Develop user profiles and settings views, allowing user to customize their experience, manage notifications, and update profile information
Implement dark mode support and explore theming to give your app a polished and customizable look
Performance optimization strategies to create. smooth and responsive user experience, even as the app scales to handle large user bases and data sets.
Use the new async/await functionality for all networking
Prerequisites:
Basic understanding of Swift programming language.
Some familiarity with Xcode and SwiftUI
Macbook Computer
Join us on this exciting journey to build a Threads app clone with SwiftUI, and equip yourself with the skills needed to create captivating and feature-rich iOS applications. Whether you're a beginner looking to explore app development or an experienced developer aiming to master SwiftUI, this course offers a comprehensive learning experience to help you achieve your goals.