Simple twitter client
- Has a button that opens a web page for authentication. It will be dismissed after the user grants and save the user credential in device settings.
- Handle the situation when you kill the app after the credential saved to not open the login screen page again. it will open the second screen.
- It display logged-in user followers in a list. The list contains profile image, full name, handle, and bio. Each cell height will depend if the follower has bio or not. if the follower has bio it will show all the bio in the cell, and if not it will show just the name, and handle.
- Tapping on a follower will open the Follower Information screen.
- You should cache the API response for offline use.
- Bonus: handle device orientation (when in portrait it will be a list, in landscape it will be a grid).
- Bonus: add a drop down menu that show multi accounts that they saved already on the settings, and choose any one of them. Once i choose an account it will reload the page and show the followers related to that account.
- Bonus: add refresh page loading and infinite scrolling. Follower Information
- Display follower profile Image and background (if not; add any default image).
- Display last 10 tweets in a list.
- Bonus: create a sticky header for background image, when users scroll the screen. The background should still stick to the top of the screen and stretch.
- Bonus: make profile image and background image clickable, and open them in overlay view.
- Write the code using Swift language.
- Localization (Arabic and English).
- iOS 10.0+
- Xcode 8.0+
- Swift 3.0+
Install CocoaPods first if you don't have it already (more about CocoaPods here):
$ gem install cocoapods
CocoaPods 1.1.0+ is required to build dependencies.
To clone iASTwitter the first time, simply run the command:
$ git clone https://github.com/iAmrSalman/iASTwitter.git
Then, run the following command:
$ pod install
I got my inspiration from Death Note Movie & Anime
Nots form @iAmrSalman
- Make sure you selects
none
for team inside project target sining
Reason: Death Note has no App id that identify white list and block list behaviors which causes to terminat the app as long as it's not in sandboxing enviornment