myfacebook is a clone of Facebook built on Rails and Backbone. Users can:
- Create user account (sign up)
- Create sessions (log in)
- Create profile
- Upload user avatar
- View profiles
- Send Friend request
- Approve Friend
- Deny Friend
- Remove Friend
- View Friend profile
- Create profile posts
- View Friend's posts as Newsfeed
I will implement user authentication in Rails based on the practices learned at App Academy. By the end of this phase, users will be able to create profiles using a simple text form in a Rails view. The most important part of this phase will be pushing the app to Heroku and ensuring that everything works before moving on to phase 2.
I will add API routes to serve profile data as JSON, then add Backbone models and collections that fetch data from those routes. By the end of this phase, users will be able to update profiles and view profiles, inside the Backbone frontend.
I will add friends, and present a user with a choice whether to approve or deny the pending request. Thereupon the authenticated user will be authorized to view the friend's profile. By default, a user's profile will be set to private.
I'll start by adding a feed
route that uses the current_user
's
subscribed_profiles
association to serve a list of profile posts ordered
chronologically. On the Backbone side, I'll make a FeedShow
view whose posts
collection fetches from the new route. Ultimately, this will be the page users
see after logging in.