Skip to content

venugv/CodepathTwitterClient

Repository files navigation

CodepathTwitterClient

Twitter with Fragments

####Total time spent: 140 Hours

####User Stories:

  • User can sign in to Twitter using OAuth login
  • User can view the tweets from their home timeline
    • User should be displayed the username, name, and body for each tweet
    • User should be displayed the relative timestamp for each tweet "8m", "7h"
    • User can view more tweets as they scroll with infinite pagination
  • User can compose a new tweet
    • User can click a “Compose” icon in the Action Bar on the top right
    • User can then enter a new tweet and post this to twitter
    • User is taken back to home timeline with new tweet visible in timeline
  • User can switch between Timeline and Mention views using tabs.
    • User can view their home timeline tweets.
    • User can view the recent mentions of their username.
  • User can navigate to view their own profile
    • User can see picture, tagline, # of followers, # of following, and tweets on their profile.
  • User can click on the profile image in any tweet to see another user's profile.
    • User can see picture, tagline, # of followers, # of following, and tweets of clicked user.
    • Profile view should include that user's timeline
    • Optional: User can view following / followers list through the profile
  • User can infinitely paginate any of these timelines (home, mentions, user) by scrolling to the bottom

The following advanced user stories are completed:

  • While composing a tweet, user can see a character counter with characters remaining for tweet out of 140
  • Links in tweets are clickable and will launch the web browser (see autolink)
  • User can refresh tweets timeline by pulling down to refresh (i.e pull-to-refresh)
  • User can open the twitter app offline and see last loaded tweets
    • Tweets are persisted into sqlite and can be displayed from the local DB
  • User can tap a tweet to display a "detailed" view of that tweet
  • User can select "reply" from detail view to respond to a tweet
  • Improve the user interface and theme the app to feel "twitter branded"
  • User can see embedded image media within the tweet detail view
  • Compose activity is replaced with a modal overlay
  • Replace the existing ActionBar with the newer support App ToolBar instead.
  • Apply the popular Butterknife annotation library to reduce boilerplate.
  • Leverage the popular GSON library to streamline the parsing of JSON data.
  • Robust error handling, check if internet is available, handle error cases, network failures
  • When a network request is sent, user sees an indeterminate progress indicator
  • User can "reply" to any tweet on their home timeline
    • The user that wrote the original tweet is automatically "@" replied in compose
  • User can click on a tweet to be taken to a "detail view" of that tweet
    • Advanced: User can take favorite (and unfavorite) or reweet actions on a tweet
  • Improve the user interface and theme the app to feel "twitter branded"
  • User can search for tweets matching a particular query and see results
  • Apply the popular Butterknife annotation library to reduce view boilerplate.
  • Leverage the popular GSON library to streamline the parsing of JSON data.
  • User can view their Twitter direct messages (and/or send new ones)

Libraries used: android-async-http-1.4.9, Glide-3.6, Mike Ortiz's TouchView, CardView-v7, jackson-2.0.1 and android-support-appcompat-v7.

####Demo: Video Walkthrough

About

A twitter client for codepath assignment weeks 3 and 4

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages