
Build an Instagram clone from scratch, featuring login and sign-up, image uploads with comments, a live feed powered by Firebase authentication, storage, and database, plus tab bars and custom UI.
Learn what Firebase is and how to integrate it with Xcode projects, including creating a Firebase project, connecting iOS apps to Firebase, and exploring authentication, database, and storage modules.
This lecture explains using CocoaPods to install Firebase modules in an Xcode project, including adding the Google service info file and editing the Podfile, then installing and opening the workspace.
Create a tab bar based user interface with sign in and sign up screens, linking feed and upload views via segues, and configure firebase in app delegate.
Add a new settings tab by wiring a tab bar controller to Cocoa Touch classes for feed, upload, and settings, using a relationship segue and proper Interface Builder setup.
learn to create users with firebase authentication by configuring email and password sign-up, validating inputs, handling errors with alerts, and updating the feed after successful signup.
Demonstrates a Firebase email/password sign-in flow with sign out, input validation, error alerts, and using the scene delegate to remember the current user and auto-navigate to the feed.
Implement the upload view controller to select an image from the photo library, display it, add a comment field and upload button, and prepare to save data to firebase.
Upload images to Firebase storage using a media folder and a storage reference, converting the image to data. Save the image URL to the database under authentication rules.
Rename uploaded images with uuid-based names to ensure unique file names and prevent overwriting, then prepare to save image URLs to the database after upload.
Explore Firestore’s collection and document structure for posts, with fields like image URL, posted by, email, date, comments, and likes. Learn to implement this in Swift using dictionaries.
Save the current date with server timestamp to your five year star database to order posts by date. Test uploads and view real-time feed updates.
Create custom table view cells to display a post image, user email, comments, a like button, and a like count in a feed using storyboard and a Cocoa Touch Class.
Retrieve data from the five year star database posts collection. Use a snapshot listener for real-time updates and parse documents to display posted by, post comment, likes, and image URLs.
Learn to asynchronously download images from urls and display them in image views using SDWebImage, avoiding user interface blocking with pod setup and placeholders.
Learn how to order posts by date in descending order via Firestore snapshot listener, implement like functionality, and manage document IDs in a feed to update likes safely.
Increase the like count by 1 and update the Firestore document identified by its document ID, using a merge to preserve other fields.
Strengthen Firebase security by configuring Firestore rules to require authentication for read and write, test changes safely, and learn pricing, storage, and real-time features.
Learn how to enable and integrate push notifications in your apps using procedural steps, with the Instagram clone from a prior section guiding the workflow.
Learn to enable push notifications for an iOS app using OneSignal, test on iPhone with a developer account, and configure APNs certificates via CSR, Keychain Access, and a P12 file.
Learn to integrate the one signal push notification SDK into an iOS 13 Swift 5 project, including configuring p12, app id, and a notification service extension.
Demonstrates sending a manual push notification using one signal, testing on a real iPhone, subscribing users, and sending dashboard messages while debugging permissions and pod updates.
Learn to send push notifications from Xcode using one signal, targeting a single user with a player ID and composing the content.
Learn how to obtain the player ID via OneSignal, save it to Firebase Firestore with the current user's email, and retrieve it for targeted push notifications.
Learn how to prevent duplicate player IDs by querying Firestore for the current user, handling empty results, and conditionally saving or updating the player ID for push notifications.
Add push notifications to an iPhone app by integrating like functionality with OneSignal and Firestore, sending personalized alerts when a user likes a post, and test on devices.
Discover how Parse powers a simple Instagram clone by storing usernames, passwords, and images on a server and integrating into an iOS project.
Integrate parse into your iPhone project with CocoaPods, install the pod, and open the generated Xcode workspace to build a tabbed app with two view controllers and a navigation controller.
Design and implement a functional iOS user interface with a tab bar, feed and upload views, and a sign-in sign-up flow using text fields and action buttons.
Configure Parse in the app delegate by initializing the Parse client with the application ID, client key, and server, then set PFACL for current user and public ACL.
Launch an AWS server by navigating the AWS console, signing up, and selecting a free tier instance; create a key pair, launch the instance, and monitor status checks until running.
Connect to the server by selecting a client option, then use ssh or manual key setup, copy the application id and server details, and log in to the dashboard.
Store data to parse by creating a PFObject (fruits), setting fields like name and calories, saving in the background, and validating results in the dashboard.
Retrieve objects from Parse by querying the fruits class for name equals Mallam and calories greater than one, filter results, print outputs, and handle errors.
Implement a user sign-up flow by validating username and password, presenting alerts on errors, and creating a user object with username and password, handling success or account already exists cases.
Sign in users by validating the username and password, checking user existence, handling errors, and performing a segue to the main interface with login progress.
Remember the signed-in user by storing the username in user defaults, check on app launch, and skip sign-in by directing to the tab bar feed when a username exists.
Add a logout function with a navigation bar item, perform logout in background, handle errors, clear stored username, and return to sign-in screen.
Create an upload view controller that lets users pick an image, enter a comment, and post it using an image picker and gesture recognizers for keyboard dismissal.
Create and upload your first post with a parse object, attach a compressed image, add comments and user data, and refresh the feed to view it.
Create a feed view using a table view and prototype cell to display posts with image and username. Wire the table view to its delegate and data source.
Retrieve post data from Parse and populate the feed with user names, comments, IDs, and images, then update the table view to show posts chronologically.
Implement safeguards for post submissions by toggling the post button, handling image selection, and preventing duplicate posts, while using notification center to refresh the feed and keep data in sync.
This lecture shows implementing likes and comments in a social feed by creating like objects with sender and post IDs, saving actions in background, and handling errors with alerts.
Enable push notifications in the Instagram clone app by configuring target capabilities and background modes, after signing up for an Apple developer account.
Configure OneSignal for iOS push notifications by creating an app, generating and exporting a P12 certificate via keychain and Apple developer, then uploading it to OneSignal.
Register OneSignal in your iOS app by adding the notification service extension and app ID, then initialize it in the app delegate and test on a real device.
Explore sending manual push notifications from the dashboard, including segmenting users, composing the message, badges, and scheduling, with a plan to automate the process in the next lecture.
Learn how to implement automated push notifications in Xcode using OneSignal, including composing content, targeting by include player IDs, testing with multiple simulator users, and integrating in the feed controller.
Map user IDs to player IDs and push tokens using OneSignal and Parse, storing mappings in a player IDs object to enable targeted push notifications.
Learn to trigger push notifications when a user likes a post by querying post owner with parse, then send a OneSignal alert that the current user has liked your post.
Learn how to configure push notifications and comment updates in an iPhone app by using a limit to deliver a single notification, adjusting preferences, and testing on the simulator.
Learn to increment the app badge number using push notifications, update post notification methods, and handle batch counts as strings, then verify badge updates on the home screen.
Learn the fundamentals of Firebase, Social Media & Push Notifications.
We will create a simple version of Instagram to test Push Notifications and see how projects with server connection works. We will create this project in the latest technology with Swift 5, XCode 11 & iOS13.
For right now, this is one of the best guides for push notifications you can ever find online! 30+ lectures and more than 4 hours of content!
You will learn useful skills about topics below:
Push Notifications
Firebase
Parse
One Signal
Cocoapods
Swift 5
iOS 13
Tab Bar Applications
Sign In - Sign Up Process
Information Uploading to Server
AWS Server Setup
You will learn a new skill that will take you far far away than where you are right now!
If you are learning Swift & iOS 13 techniques and you are just in the beginning of your journey, you will love this course.
The most influential applications ever written for Iphone are social media applications. And we will learn how to do that. You can use these skills to apply into any app which you can think of later on!
Content and Overview
This course is great for people with some basic experience on Swift or other programming languages. I will not explain basic concepts like "Arrays, Variables, TableViews, Constants, Loops". But i will teach you how to connect your project to a server, how to send an information to that server and how to receive and present that information. We will send texts, images etc.
After learning how to connect with server you will step into whole new brand world in the name of development. You will write social media apps, internet connected apps, push notification enabled apps from now on!
This will be a real-time coding experience. You'll see an actual debugging and have a valuable coding content. You will be provided with final project file and codes at the end of the lesson.