https://github.com/babilonczyk/recipe-suggest
React & Rails app helping users find the most relevant recipes that they can prepare with the ingredients that they have at home
https://github.com/babilonczyk/recipe-suggest
Last synced: 4 months ago
JSON representation
React & Rails app helping users find the most relevant recipes that they can prepare with the ingredients that they have at home
- Host: GitHub
- URL: https://github.com/babilonczyk/recipe-suggest
- Owner: babilonczyk
- License: other
- Created: 2025-05-29T10:36:11.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-07-21T06:40:36.000Z (6 months ago)
- Last Synced: 2025-07-21T08:30:55.759Z (6 months ago)
- Language: Ruby
- Homepage: https://recipe-suggest-web-lac.vercel.app
- Size: 1.8 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## recipe-suggest
api -> https://recipe-suggest-4ef83f6f8450.herokuapp.com/
web -> https://recipe-suggest-web-lac.vercel.app/
## Before running
```
cd apps/be
rails db::create
rails db:migrate
rails db::seed
```
## How to run?
Before install dependencies
```sh
yarn install
```
### recipe-suggest web
React single page app for the web version of the app.
```sh
yarn workspace recipe-suggest dev
```
### recipe-suggest be
Backend business logic for recipe suggest app.
```sh
cd apps/be
rails s
```
## User stories
1. As a user, I want to select ingredients I currently have at home, so that I can find recipes I can cook right now.
2. As a user, I want to view recipes that match the ingredients I selected, so that I can quickly choose something to cook.
3. As a user, I want to understand what quantities are expected in recipes, so I can check if I have enough of each ingredient.
## Left to do / ideas
Stuff I made as a cut scope, because I didn't have enough time:
- rate limiting
- display information on found_recipe page on how many ingrediants user has and how many he needs to buy
- allow passing image of the items and send request to the openai to find what ingrediants user has. Than search recipes based on that output
## Interesting cases/observations
- I was thinking on implementing infinite scrolling on the be, to don't end up with memory problem on the client side when displaying all ingrediants/recipes. But I found the 'window-react' lib which solves the issue on the client side
- I've spend some time debugging cors issue. For some reason client could make some request, but other were being blocked. Turnes out I have passed / at the end of https://recipe-suggest-web-lac.vercel.app in cors.rb initializer which was creating some formating issue
- I've had select all ingrediants working on the local environment, but when dealing with thousands of records I've been reaching the limit of how long request can be when passing ?imgrediant_ids=... filter. So I've removed it.
## Vision
Simplicity. My goal was to create a simple tool for finding recipes.