This is Microverse's final project in Ruby on Rail's course. In this project, we build a social media page similar to Facebook where the users can create and edit an account, add other users as friends, post their thoughts, comment and like their friends and their own posts.
The assignment for this project is in the Odin Project's Ruby on Rails course that can be found here.
This project was divided into 8 milestones:
- First: Preparation for the data architecture and documentation where the project as planned and an Entity Relationship Diagram was created.
- Second: Project setup as described in Odin Project.
- Third: Created the models with associations for users, posts, and likes in posts.
- Fourth: Created the model with the association for comments and likes in comments.
- Fifth: Started to implement friendship, allowing users to request, accept, reject and undo friendship with other users.
- Sixth: We implemented friendship with 2 rows for mutual friendship as described here
- Seventh: Login with a Facebook account using omniauth.
- Eighth: Deploy for Heroku
The Entity-Relationship Diagram (ERD) describes illustratively how the associations work in this project. Our final version can be seen below:
For a live version, you can visit App
The Github repository is here
In this project we used:
- Ruby on Rails
- HTML and CSS
- Lucid chart in the creation of the ERD
- Font Awesome for the icons
- Omniauth gem for the facebook integration
- Devise gem in the creation of the Users model and controller
- Bootstrap for some CSS classes
- AWS