A social network for sharing delicious recipes. Built with Ruby on Rails.
- This is the capstone project of the Ruby on Rails section at Microverse.
- It is a fully functional web app, a social network where you can share recipes, and search through them by ingredients.
- Its purpose is implementing what we have previously learned throughout the Ruby on Rails section, i.e. proper use of ActiveRecord, model associations and validations, creating sessions and authentication, using embedded ruby, logic delegation to helpers, scopes, n+1 querry problems, and unit and integration testing.
- To try it out visit this live demo link.
You can log in with usernametest_user
, or create an account.
- VSCode
- Ruby on Rails
- AWS S3
- TailwindCSS
- PostgreSQL
- Rubocop
- RSpec, FactoryBot, ShouldaMatchers, Capybara
- Install Ruby and Rails. You will need at least versions 2.6.5 and 6 respectively.
- Fork the repository and download it to your machine.
- Run
bundle
to install all the required gems. - Run
rails db:migrate db:seed
to create the tables and populate with a few users, posts, and followers. You can checkdb/seeds.rb
to see a basic example.
Configuration is already done but you can take a look at it's github repo if you're interested. As for the classes, here's a neat little cheatsheet to get you started, and you can always check their official page. This is my first project using it, and I'm already in love!
- Run
rails server
to start your local server and go tolocalhost:3000
or whatever is your set port. - Log in with username:
test_user
to have a look around, or create your own account. - You can upload a profile picture and cover image, follow/unfollow users,
post recipes and explore them manually or by using the search bar.
- Testing is done with RSpec using FactoryBot factories and Capybara for
integration tests.
to run them simply runrspec
in your terminal while in the root folder of the app.
- Website
- LinkedIn: Stefan Dili
- Twitter: @dilistefan
- Email: [email protected]
- Contributions, issues, and feature requests are welcome! If you have something in mind please visit the issues page
- A voting system for the recipes
- New recipe notifications
- Credits go to Microverse for providing the materials, and Gregoire Vella for the design
This project is MIT licensed.