The Projects Opinions is an application that is available for anyone who has a project opinion to share, and other registered users will be able to comment on that opinion.
I did this project to master Rails. The aim was to implement the design of Twitter redesign by Gregoire Vella but with customized content. This project is my capstone from Microverse. It is an MVP (Minimal Viable Product), which means it has only basic features to demonstrate a big picture of a final product. I have listed all the features available on this app. Project specifications are listed here.
Homepage && Opnions page | Profile page && User page |
---|---|
- Click here to see me presenting this project.
- User can sign up
- User can sign in
- User can follow other users
- User can unfollow other users
- User can see their followers
- User can post opinions
- User can comment on any opinion
- User can upload their profile picture and cover picture while signing up
- User can see other people's profile
- Git for version control
- RSpec for testing
- Capybara for integration tests
- Travis CI for continuous integration
- Simplecov and Coveralls for counting and reporting code coverage
- Stylelint and Rubocop for code linting and formatting
- Cloudinary for saving pictures
- Heroku for deployment
- Ruby 2.7.1
- Node v12.18.4 or higher
- Yarn v1.22.4 or higher
- Git 2.17.0 or higer
- Postgresql 9.5.23 or higer
- Your computer's clock should be properly set
- Run
git clone https://github.com/descholar-ceo/projects-opinions && cd projects-opinions
to get a copy of source codes on your local computer and to navigate inside the project directory - Run
bundle install && yarn
to install gems and dependencies - Run
bundle exec rake db:create
to create databases that are being used with this project - Run
bundle exec rake db:migrate
to migrate (create) all of the tables needed by this project
- Run
bin/rails server
to start the server, normally after the server started, you should be able to access the projects-opinion app onhttp://localhost:3000
orhttp://127.0.0.1:3000
orhttp://0.0.0.0:3000
in your browser
- Create a file in
config/
folder and call itmaster.key
- You will need a master key to paste in that file
- Make sure that your computer clock is on the right time
- Run this command
bundle exec rspec
to run tests
There are two ways of contributing to this project:
-
If you see something wrong or not working, please check the issue tracker section, if that problem you met is not in already opened issues then open a new issue by clicking on
new issue
button. -
If you have a solution to that, and you are willing to work on it, follow the below steps to contribute:
- Fork this repository
- Clone it on your local computer by running
git clone https://github.com/your-username/projects-opinions.git
Replace your username with the username you use on github - Open the cloned repository which appears as a folder on your local computer with your favorite code editor
- Create a separate branch off the master branch,
- Write your codes which fix the issue you found
- Commit and push the branch you created
- Raise a pull request, comparing your new created branch with our original master branch here
👤 Mugirase Emmanuel
- Github: @descholar-ceo
- Twitter: @descholar3
- Linkedin: MUGIRASE Emmanuel
Give a ⭐️ if you like this project!
-
Gregoire Vella for the design idea