Twitter Client
A twitter client android app where one can view and post tweets.
Time spent: 10 hours spent in total.
Completed user stories:
- [x] Required: User can sign in using OAuth login flow
- [x] Required: User can view last 25 tweets from their home timeline
- [x] Required: User should be able to see the user, body and timestamp for each tweet
- [x] Required: User should be displayed the relative timestamp for a tweet "8m", "7h"
- [ ] Optional: Links in tweets are clickable and viewable
- [x] Required: User can load more tweets once they reach the bottom of the list using "infinite scroll" pagination
- [x] Required: User can switch between Timeline and Mention views using tabs.
- [x] Required: Mentions timeline must also have pull to refresh and infinte scroll.
- [x] Required: User can compose a new tweet
- [x] Required: User can click a “Compose” icon in the Action Bar on the top right
- [x] Required: User will have a Compose view opened
- [x] Required: User can enter a message and hit a button to post to twitter
- [x] Required: User should be taken back to home timeline with new tweet visible
- [ ] Optional: User can see a counter with total number of characters left for tweet
- [x] Optional: User can refresh tweets timeline by pulling down to refresh (implemented using since id parameter)
- [x] Required: User can navigate to view their own profile
- [x] Required: User can see picture, tagline, # of followers, # of following, and tweets on their profile.
- [x] Required: User can click on the profile image in any tweet to see another user's profile.
- [x] Required: User can see picture, tagline, # of followers, # of following, and tweets of clicked user.
- [x] Required: Profile view should include that user's timeline.
- [ ] Optional: Optional: User can view following / followers list through the profile
- [ ] Optional: User can open the twitter app offline and see last loaded tweets (persisted in local db)
- [ ] Optional: User can tap a tweet to display a "detailed" view of that tweet
- [ ] Optional: User can take favorite (and unfavorite) or reweet actions on a tweet
- [ ] Optional: User can select "reply" from detail view to respond to a tweet
- [ ] Optional: The user that wrote the original tweet is automatically "@" replied in compose
- [ ] Optional: Improve the user interface and theme the app to feel twitter branded
- [ ] Optional: User can see an embedded media (image) within tweet detail view
- [ ] Optional: Compose View activity is replaced with a modal overlay
- [ ] Optional: User can search for tweets matching a particular query and see results
- [ ] Optional: User can view their direct messages (or send new ones)
Walkthrough of all user stories: