Awesome
Unsplash_Clone
Make a clone of Unsplash App with using Unsplash api. Integrate Firebase to make register & login
Preview
AppIcon
<img src = "https://github.com/jphong1111/Unsplash_Clone/blob/main/githubImages/AppIcon.png" width = "150" height = "160"/>AppFlow
<img src = "https://github.com/jphong1111/Unsplash_Clone/blob/main/githubImages/main.gif" width = "200" height = "405" />Main Screen
<img src = "https://github.com/jphong1111/Unsplash_Clone/blob/main/githubImages/MainScreen.gif" wdith = "200" height = "405" />Detail Screen
Use Hero Library to make a dynamic animation when user click photo
If user didn't logged in, it will show up like this
<img src = "https://github.com/jphong1111/Unsplash_Clone/blob/main/githubImages/DetailScreen.gif" width = "200" height = "405" />When user logged in, it will show like this
<img src = "https://github.com/jphong1111/Unsplash_Clone/blob/main/githubImages/DetailScreenLoggedIn.gif" width = "200" height = "405" />Search Screen
User can search photos, collections, users based on keyword
<img src = "https://github.com/jphong1111/Unsplash_Clone/blob/main/githubImages/SearchScreen.gif" width = "200" height = "405" />Collaboration Screen
If user didn't logged in, log in screen will pop up when user trying to collaborate their pictures
<img src = "https://github.com/jphong1111/Unsplash_Clone/blob/main/githubImages/Collaborate%20Screen.gif" width = "200" height = "405" />LogIn Screen
User can log in with their email and password
<img src = "https://github.com/jphong1111/Unsplash_Clone/blob/main/githubImages/LoginScreen.gif" width = "200" height = "405" />SignUp Screen
User can make a account for this app and actual data will store in Firebase
<img src = "https://github.com/jphong1111/Unsplash_Clone/blob/main/githubImages/SignUpScreen.gif" width = "200" height = "405" /> <img src = "https://github.com/jphong1111/Unsplash_Clone/blob/main/githubImages/FirebaseEmail.png"/> <img src = "https://github.com/jphong1111/Unsplash_Clone/blob/main/githubImages/FirebaseData.png"/>IDE
Xcode 12.4
Swift 5
iOS Deployment Target: 13.0
Techniques
- Model-View-ViewModel(MVVM)
- Custom Network Layer
- Firebase
- Firestore
- Delegation
- UIkit
- Hero Animation Tools
- Protocol Oriented
- App Screen Life Cycle
API
Used API for this project
Library
Third Party Library for this project
Sources
Images from Unsplash
icon images from icon8
Reusable handlers from here
GIF converter from here