Full user authentication with Devise, as well as the ability to send and accept friend requests from other users. Each user has a profile page, displaying their posts and a feed, showing recent posts from their friends.
A user can sumbit a text post, which will display on their profile (wall) and on the feeds of all their friends. Each post can be liked and/or commented on.
A user can send a friend request to other users, which can be cancelled at any time. Once sent, the user who received the friend request can choose whether to accept or decline the request before actually becoming friends.