Giter VIP home page Giter VIP logo

marcuswolschon / advancedrecipes Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tandoorrecipes/recipes

2.0 2.0 1.0 50.94 MB

Application for managing recipes, planning meals, building shopping lists and much much more!

Home Page: https://docs.tandoor.dev

License: Other

Dockerfile 0.01% Python 10.30% JavaScript 12.62% HTML 64.21% Shell 0.01% CSS 1.16% Batchfile 0.01% Vue 5.00% TypeScript 6.69% C 0.01%

advancedrecipes's People

Contributors

aarondoet avatar afaren57 avatar auanasgheps avatar bloomcake avatar cazier avatar d0t1x avatar dannytszho avatar dependabot[bot] avatar h4llow3en avatar itsmegb avatar jakobwenzel avatar kaibu avatar kampsj avatar klem7ens avatar lostlont avatar marcuswolschon avatar maxja4 avatar neferin12 avatar pastudan avatar rustamuzb avatar sebimarkgraf avatar shuihuo avatar smilerz avatar staeff avatar tandy-1000 avatar tiagorascazzi avatar tourn avatar transifex-integration[bot] avatar vabene1111 avatar xeals avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

mayurstwt

advancedrecipes's Issues

Import Cookidoo with booklet - no steps

Tandoor Version

1.0.4

Setup

Synology

Reverse Proxy

Nginx Proxy Manager (NPM)

Other

Synology docker (tandor and nginx)

Bug description

When importing Cookidoo recipes via the booklet, no steps are found anymore.

Relevant logs

No response

Better document installation

Documentation link

No response

Affected section

Installation

Other

No response

Issue description

Better document this and link it prominently from the README.md

allow step import for other sites then just cookidoo

Is your feature request related to a problem? Please describe.

No response

Describe the solution you'd like

allow step import for other sites then just cookidoo

Describe alternatives you've considered

No response

Additional context

No response

Contribute

  • Yes
  • Partly
  • No

Better document recipe import via Bookmarklet

Documentation link

No response

Affected section

Features

Other

No response

Issue description

Document with screenshots and link this prominently from the README.md .
It is after all the feature that makes this recipe database unique.

allow a default unit

Describe the solution you'd like

if quantity > 0 and no unit is given, set a default unit "Pieces"/"Pcs," DE: "Stück"/"Stk."

chefkoch.de URL import - error 500

Tandoor Version

1.0.4

Setup

Synology

Reverse Proxy

Nginx Proxy Manager (NPM)

Other

Synology docker (tandor and nginx)

Bug description

There is a 500 error when importing from Chefkoch.de. Other sites like kochbar.de work without problems.
Everything is read in, including the image. But when clicking on save then comes the error 500

Relevant logs

An error occurred while trying to import this recipe! <!doctype html> <html lang="en"> <head> <title>Server Error (500)</title> </head> <body> <h1>Server Error (500)</h1><p></p> </body> </html>

Multiply nutritional values by number of portions

Is your feature request related to a problem? Please describe.

No response

Describe the solution you'd like

Recipes state the nutritonal values per serving but Tandoor expects them to be for the entire meal and does scale them up/down when a different number of services is to be cooked

Describe alternatives you've considered

No response

Additional context

No response

Contribute

  • Yes
  • Partly
  • No

add "advanced" to the logo images

Is your feature request related to a problem? Please describe.

No response

Describe the solution you'd like

To distinguish it from the vanilla version.
Maybe also choose a different colour schema

Describe alternatives you've considered

No response

Additional context

No response

Contribute

  • Yes
  • Partly
  • No

text-replacement to help special cases of ingredients

Describe the solution you'd like

Override the method https://github.com/hhursev/recipe-scrapers/blob/main/recipe_scrapers/_schemaorg.py#L139 in scrapers.py and cookidoo.py to replace some special speial cases before separating the ingredient into amount, unit, food and note:

  1. German unit "geh. TL", "geh. EL", "ges. TL" and "ges. TL" to get rid of the space and thus not parse the "EL" and "TL" as part of the ingredient name
  2. replace "(\d+) - (\d+)(.*)" with "\1\3 \1-\2" (e.g. "100 - 150 g Mehl" -> "100 g Mehl 100-150") to not have "-" become a unit and the food to become "150 g Mehl"

nutrients import - aliases

Describe the solution you'd like

from: https://www.rewe.de/rezepte/thermomix-sauerbratenragout/

"nutrients":[
{"title":"Energie","unit":"kcal","amount":734,"rda":2200,"percentage":33},
{"title":"Eiweiß","unit":"g","amount":40,"rda":55,"percentage":73},
{"title":"Fett","unit":"g","amount":32,"rda":75,"percentage":43},
{"title":"Kohlenhydrate","unit":"g","amount":58,"rda":300,"percentage":19}
]

in addition to

"nutrition":{"@type":"NutritionInformation","servingSize":"6 persons","calories":"734 kcal"}

in code line
https://github.com/MarcusWolschon/AdvancedRecipes/blob/release/latest/cookbook/integration/cookbookapp.py#L46

        # vvvvvvvvvvvvvvvvvvvvvv
        if 'nutrition' in recipe_json or 'nutrients' in recipe_json:
            if settings.DEBUG:
                print("found nutrition or nutrient")
            calories = 0
            carbohydrates = 0
            fats = 0
            proteins = 0
            # check out the keys in 'nutrients'
            if 'nutrients' in recipe_json:
                if settings.DEBUG:
                    print("found nutrient")
                for nutrient in recipe_json['nutrients']:
                    if 'title' in nutrient and 'amount' in nutrient:
                        if settings.DEBUG:
                            print("found nutrient " + nutrient['title'])
                        if nurient['title'] == "Energie":
                            calories  = nurient['amount']
                        if nurient['title'] == "Eiweiß":
                            proteins = nurient['amount']
                        if nurient['title'] == "Fett":
                            fats = nurient['amount']
                        if nurient['title'] == "Kohlenhydrate":
                            carbohydrates = nurient['amount']
            # but prefer values in 'nutrition'
            if 'nutrition' in recipe_json:
                if settings.DEBUG:
                    print("found nutrition")
                if recipe_json['nutrition']['calories']:
                    calories = remove_non_digts(recipe_json['nutrition']['calories'])
                if recipe_json['nutrition']['carbohydrateContent']:
                    carbohydrates = remove_non_digts(recipe_json['nutrition']['carbohydrateContent'])
                if recipe_json['nutrition']['fatContent']:
                    fats = remove_non_digts(recipe_json['nutrition']['fatContent'])
                if recipe_json['nutrition']['proteinContent']:
                    proteins = remove_non_digts(recipe_json['nutrition']['proteinContent'])

            recipe.nutrition = NutritionInformation.objects.create(
                calories=calories,
                carbohydrates=carbohydrates,
                fats=fats,
                proteins=proteins,
                source='cookbookapp',
                space=self.request.space,
            )
        # ^^^^^^^^^^^^^^^^^^^^^^

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.