An open API service indexing awesome lists of open source software.

https://github.com/onjoseph/recipe-app


https://github.com/onjoseph/recipe-app

Last synced: about 2 months ago
JSON representation

Awesome Lists containing this project

README

        


logo

Recipe App

# 📗 Table of Contents

- [📖 About the Project](#about-project)
- [🛠 Built With](#built-with)
- [Tech Stack](#tech-stack)
- [Key Features](#key-features)
- [🚀 Live Demo & Project Presentation](#live-demo)
- [💻 Getting Started](#getting-started)
- [Setup](#setup)
- [Prerequisites](#prerequisites)
- [Install](#install)
- [Usage](#usage)
- [Run tests](#run-tests)
- [Deployment](#triangular_flag_on_post-deployment)
- [👥 Authors](#authors)
- [🔭 Future Features](#future-features)
- [🤝 Contributing](#contributing)
- [⭐️ Show your support](#support)
- [🙏 Acknowledgements](#acknowledgements)
- [📝 License](#license)

# 📖 Recipe App

**Recipe App** The Recipe app keeps track of all your recipes, ingredients, and inventory. It will allow you to save ingredients, keep track of what you have, create recipes, and generate a shopping list based on what you have and what you are missing from a recipe. Also, since sharing recipes is an important part of cooking the app should allow you to make them public so anyone can access them. These are some of the interfaces and some wireframes for some of them:

- **A login page.**
- **A registration page.**
- **A food list (with all CRUD implementation, except for 'update').**
- **A recipes list (with all CRUD implementation, except for 'update').**
**A general shopping list view (all missing food for all your recipes and total price).**
**A list of all public recipes from other users with their names and total prices.**

## Project requirements

### General requirements

- Make sure that there are [no linter errors](https://github.com/microverseinc/linters-config).
- Make sure that you used correct [Gitflow](https://github.com/microverseinc/curriculum-transversal-skills/blob/main/git-github/articles/gitflow.md).
- Make sure that you documented your work [in a professional way](https://github.com/microverseinc/curriculum-transversal-skills/blob/main/documentation/articles/professional_repo_rules.md).

### Ruby requirements

- Follow our list of [best practices for Ruby](https://github.com/microverseinc/curriculum-ruby/blob/main/articles/ruby_best_practices.md).

## 🛠 Built With

### Tech Stack


  • Ruby

  • Ruby on Rails

  • JavaScript

  • PostgreSQL

  • GitHub

  • CSS/SCSS(Bootstrap)

### Key Features

- Set up the ROR project and install the Devise gem
- Create the food and recipe models and their associations
- Implement the food list feature
- Implement the recipe list feature
- Implement the public recipe list feature
- Implement the recipe toggle feature
- Implement the general shopping list feature
- Write unit and integration

(back to top)

## 🚀 Live Demo & Project Presentation

- Live Demo coming soon...

(back to top)

## 💻 Getting Started

### Prerequisites

Everything will be based on the ERD class diagram presented below.


gif

Entity Relationship Diagram (ERD) of Recipe App project


## Getting Started
To run the project locally, copy up and running follow these simple example steps :

- First of all make sure you have both `Ruby` & `Rails` installed in your machine
(else You can install `Rails` just with this simple command ```gem install rails```)
```
$ git clone ### Setup
- Clone this repository to your computer: git clone https://github.com/ONJoseph/recipe-app.git
```
- Then go to the right folder
```
$ cd recipe-app
```
```
$ bundle
```
and run to install npm package
```
$ npm install
```

make sure the database is up and running.
```
$ rails db:create
```
When you will add migration file then, you can add command like
```
$ rails db:migrate
```
Run this command line to add some dummy data
```
$ rails db:seed
```

- Finaly run `rails s` and visit http://localhost:3000/ in your browser!

## Run tests :

To run Request specs locally you need just to run this following command in your terminal :

```
$ bundle exec rspec
```

### Install
- Write: bundle install
- Write: npm install

### Usage
- To test the app:
- rspec (general)
- rspec spec/unit/name_of_sile (specific one)

(back to top)

## 👥 Author

👤 **Joseph Ogbole**

- GitHub: [@ONJoseph](https://github.com/ONJoseph)
- Twitter: [@ONJoseph1](https://twitter.com/ONJoseph1)
- LinkedIn: [LinkedIn](https://www.linkedin.com/in/o-n-joseph-ba8425147/)

👤 **Ivan Martinez von Halle**

- GitHub: [@ivanmvh](https://github.com/ivanmvh)
- Twitter: [@imprivado](https://twitter.com/imprivado)
- LinkedIn: [LinkedIn](https://www.linkedin.com/in/ivan-martinez-von-halle/)

(back to top)

## 🔭 Future Features

- [ ] Add Inventories list
- [ ] Add Inventory details
- [ ] Add Recipe details
- [ ] Add Inventory shopping list

(back to top)

## 🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the [issues page](https://github.com/ONJoseph/recipe-app/issues).

(back to top)

## ⭐️ Show your support

I really enjoyed working on this project. If you like it show your support by giving a star.

(back to top)

## 🙏 Acknowledgments

Hat tip to anyone whose code was used.

(back to top)

## 📝 License

This project is [MIT](https://github.com/ONJoseph/recipe-app/blob/dev/LICENCE) licensed.

(back to top)