Your constraints are incorrectly specified for the TweetCell, Compose, as well as TweetVC.
Your cells don't seem to fit the content correctly.
You don't do any date parsing.
Consider reloading the twitter feed after the compose. A slightly better alternative would be to pass the created tweet back into the feed locally, so it'll be there immediately even with slow internet.
There's no way to retweet, reply, delete, or delete a retweet or favorite.
Consider implementing pull to refresh and infinite scroll loading.
The main takeaways for this homework were:
How to handle dynamically sized rows in table views.
How to implement and debug Auto Layout in the Tweet Cell, Compose view, and Tweet view.
How to implement nav stack and modal navigation.
How to augment a networking client.
How to augment a model, adding serialization/deserialization code, and formatting code.
Here's my checklist of things I'm looking at when I'm reviewing this project.
Is the Objective-C code styling consistent with standards?
Did you augment the API client with the methods for updating status, reply, retweet, favorite? Note that there is a separate endpoint for removing a retweet or favorite.
Did you augment the Tweet model? Note that for the embedded user, you should instantiate a User object and have the User class do the deserialization, instead of navigating to user.screen_name in the Tweet model.
Were the Auto Layout constraints correct for all the views?
Was the navigation implemented correctly either manually or via segues?
/cc @nesquena @timothy1ee