All the core compoments of ready to be published Instagram features :
- Create users
- Create a user profile
- Authenticate users with Firebase
- Search for users
- Upload posts
- Home feed with posts from followers
- Like posts
- Comment on posts
- In app notifications for following, post likes and post comments
- Follow/Unfollow users from profile
- Follow/Unfollow user from notifications screen
- Go to post or profile from notifications screen
- Display timestamp on posts and notifications
- Logging in and logging out
- Auto-layout and programmatic UI with Swift
- Modified MVVM Architecture
- Backend using Cloud Firestore
- Register and authenticate users using FirebaseAuth
- Object Oriented Programming
- Used CocoaPods : Firebase, ActiveLabel, SDWebImage, JGProgressHUD, YPImagePicker