- 📖 About the Project
- 💻 Getting Started
- 👥 Authors
- 🔭 Future Features
- 🤝 Contributing
- ⭐️ Show your support
- 🙏 Acknowledgements
- 📝 License
This is a web application that allows users to register and start managing recipes. Users can create, edit, and delete recipes. In addition, it is also possible to create a food inventory and take ingredients from it when creating a recipe. The application will also allow you to generate a shopping list based on the recipes you have created and the food items needed to make them. For those who do not wish to register, you can see the public recipes posted by other users.
- Use Ruby gems as a software packages system.
- Install Ruby on Rails framework.
- Understand Rails RESTful design and router.
- Use controllers to handle requests and render empty views.
- Understand Rails naming conventions.
- Use params from browser requests in a safe way.
- Use preprocessed HTML file with embedded Ruby code.
- Use layouts and templates for shared content.
- Use database migration files to maintain database schema.
- Use validations for models.
- Secure app from n+1 problems.
- Understand what ORM is.
- Write SQL queries with ActiveRecord.
- Set up associations between models.
- Build a web app that requires the user to log in.
- Describe the difference between authorization and authentication.
- Use Devise gem for authentication.
- Understand how sessions and cookies can support authentication.
- Write unit tests using Rspec
- Write integration tests with capybara gem
- Users can sign up and log in to the application.
- Users can create, edit, and delete recipes.
- Users can create a food inventory and take ingredients from it when creating a recipe.
- Users can generate a shopping list based on the recipes they have created and the food items needed to make them.
To get a local copy up and running, follow these steps.
To run this project you need:
- Have Ruby installed. If you need to install Ruby, follow the instructions on the official page.
Clone this repository to your desired folder:
Example commands:
- With SSH:
cd my-folder
git clone git@github.com:demesameneshoa/recipes-app.git
- With HTTPS:
cd my-folder
git clone https://github.com/demesameneshoa/recipes-app.git
- With GitHub CLI:
cd my-folder
gh repo clone demesameneshoa/recipes-app
Go to the project directory:
cd recipes-app
Before running the program, verify that you have Ruby on Rails installed on your OS by running the following command:
rails --version
It should show you the version of Ruby On Rails installed. If this does not happen and only an error message is displayed, you should verify your installation or install Ruby on Rails from scratch.
Download and Install Ruby on Rails
Once you have verified that you have Ruby on Rails installed, run the following command to install the necessary gems:
bundle install
After installing the gems, run the following command to create the database:
rails db:create
Then run the following command to migrate the database:
rails db:migrate
Run the following command inside the project folder to start the application:
rails s
This will start the application on your local server. You can now open your browser and go to http://localhost:3000/ to see the application running.
To execute the tests, run the following command inside the project folder (root):
bundle exec rspec
👤 Demes Ameneshoa
- GitHub: @demesameneshoa
- LinkedIn: @demesameneshoa
👤 Arthur Iturres
- GitHub: @ITurres
- LinkedIn: Arthur Emanuel G. Iturres
- Angellist / Wellfound: Arturo (Arthur) Emanuel Guerra Iturres
- Youtube: Arturo Emanuel Guerra Iturres - Youtube Channel
- Portfolio: Arthur Iturres - Portfolio
- Allow users to upload images for their recipes.
Contributions, issues, and feature requests are welcome!
Feel free to check the issues page.
Give a ⭐ if you liked this project!
I thank the Code Reviewers for their advice and time 🏆
This project is MIT licensed.