/Twitter

A simple iOS Twitter client

Primary LanguageObjective-C

Twitter

This is a basic twitter app to read and compose tweets using the Twitter API.

Time spent: 11.5h week 1, 9h10m week 2

Features

Required

  • Week 1:
  • User can sign in using OAuth login flow
  • User can view last 20 tweets from their home timeline
  • The current signed in user will be persisted across restarts
  • In the home timeline, user can view tweet with the user profile picture, username, tweet text, and timestamp.
  • User can pull to refresh
  • User can compose a new tweet by tapping on a compose button.
  • User can tap on a tweet to view it, with controls to retweet, favorite, and reply.
  • Week 2: Hamburger menu
  • Dragging anywhere in the view should reveal the menu.
  • The menu should include links to your profile, the home timeline, and the mentions view.
  • Week 2: Profile page
  • Contains the user header view
  • Contains a section with the user's basic stats: # tweets, # following, # followers Week 2: Home Timeline
  • Tapping on a user image should bring up that user's profile page

Optional

  • Week 1
  • When composing, you should have a countdown in the upper right for the tweet limit.
  • After creating a new tweet, a user should be able to view it in the timeline immediately without refetching the timeline from the network.
  • Retweeting and favoriting should increment the retweet and favorite count.
  • User should be able to unretweet and unfavorite and should decrement the retweet and favorite count.
  • Replies should be prefixed with the username and the reply_id should be set when posting the tweet,
  • User can load more tweets once they reach the bottom of the feed using infinite loading similar to the actual Twitter client.
  • Week 2: Profile page
  • Implement the paging view for the user description
  • As the paging view moves, increase the opacity of the background screen.
  • Pulling down the profile page should zoom the header image.
  • Week 2: Account switching
  • Long press on profile picture to bring up Account view with animation
  • Tap account to switch to
  • Include a plus button to Add an Account
  • Swipe to delete an account
  • Stuff I added
  • Display a page control to indicate when the header changes.
  • Allow links within tweets to be clickable

Walkthrough

Video Walkthrough

Credits