The gist: Allow users to sign up for an account and author simple text-based updates with a maximum length of 256 characters and follow other users to see their updates.
It's debatable how much of a "social network" this project is. It's more of a social microblog. But a lot of the foundations becomes present when you have the ability to follow other users and aggregate various updates in a timeline.
- Authentication + sign up
- Create, edit, delete posts
- View a profile
- Follow a user to see their posts in your timeline
- Favorite posts
- Feed aggregation
- Content publishing
- Network graph
- Reply to posts, notifies other user
- Image uploads
- Michael Hartl's Rails Tutorial book covers building something similar