mealie-recipes / mealie

Mealie is a self hosted recipe manager and meal planner with a RestAPI backend and a reactive frontend application built in Vue for a pleasant user experience for the whole family. Easily add recipes into your database by providing the url and mealie will automatically import the relevant data or add a family recipe with the UI editor
https://docs.mealie.io
GNU Affero General Public License v3.0
6.74k stars 692 forks source link

[v1.0.0b] [Task] - Public Group Exploration #1326

Closed hay-kot closed 1 year ago

hay-kot commented 2 years ago

What is the problem this task addresses?

Currently sharing a recipe requires a manual process to share. Mealie should provide a way for groups to share their recipes by default.

Proposed/Possible Solution(s)?

Group Pages

The foundational page relating to sharing Recipes and Cookbooks. It should show a link to browse a groups entire public recipe collection, as well as their cookbooks. In the future it may also support browsing by categories, tools, and

Cookbooks

Allow cookbooks to be set to public and shareable via a link or discoverable on group pages

Public Recipes

Allow public recipes to be browsed by group from non members.


Checklist

l0el commented 2 years ago

Curious, any updates on this? The fact that you can only generate temporary sharable links (that are also ugly) is the only thing holding me back from using this. Would be super nice to have public-by-default as an option, with WordPress style pretty links.

hay-kot commented 2 years ago

My timeline got pushed back because of some summer vacation stuff. Currently hoping to get this rolled into the next beta at the end of the month. It may be a partial implementation, we'll see how far I get.

l0el commented 2 years ago

Oh awesome @hay-kot !! Might sound dumb, but sharable, pretty links is a make or break feature for a food blogger :)

gleeds commented 2 years ago

I agree. I've been using mealie to build a collection of recipes to try, then the ones that turn out well we share links to our friends and family, but we don't want to make them create accounts, so I'm stuck on 0.5.6 until this feature get's re-added. While I typically share a specific recipe link, I still want browsing everything to be available.

NHellFire commented 1 year ago

Any progress on this? This not being added yet makes 1.0 worse for me than 0.5, but as 1.0 is performing better, I've just removed the group checks for my use case (shared recipes, separate meal plans). Unfortunately that's about the limit to my understanding of the code, I have no idea how I'd properly check the public setting.

Naticus commented 1 year ago

Any progress on this? This not being added yet makes 1.0 worse for me than 0.5, but as 1.0 is performing better, I've just removed the group checks for my use case (shared recipes, separate meal plans). Unfortunately that's about the limit to my understanding of the code, I have no idea how I'd properly check the public setting.

How did you go about removing the group checks? I think that might be a good solution for me and my friend group right now so I can maintain separate meal plans, shopping lists, etc.

NHellFire commented 1 year ago

Any progress on this? This not being added yet makes 1.0 worse for me than 0.5, but as 1.0 is performing better, I've just removed the group checks for my use case (shared recipes, separate meal plans). Unfortunately that's about the limit to my understanding of the code, I have no idea how I'd properly check the public setting.

How did you go about removing the group checks? I think that might be a good solution for me and my friend group right now so I can maintain separate meal plans, shopping lists, etc.

Attached the patch I'm using. If any users have categories with the same names, they'll need to first rename or delete them (it will error on duplicates). Might be some unneeded changes in that, I found some more problems with mealplans that I fixed today.

mealie-no-group-checks.patch

For docker-compose, you can add this to your volumes (on the api service) to replace the patched files:

      - ./mealie-git/mealie/repos/repository_recipes.py:/app/mealie/repos/repository_recipes.py
      - ./mealie-git/mealie/routes/recipe/recipe_crud_routes.py:/app/mealie/routes/recipe/recipe_crud_routes.py
      - ./mealie-git/mealie/routes/groups/controller_cookbooks.py:/app/mealie/routes/groups/controller_cookbooks.py
      - ./mealie-git/mealie/routes/groups/controller_mealplan.py:/app/mealie/routes/groups/controller_mealplan.py
      - ./mealie-git/mealie/routes/organizers/controller_categories.py:/app/mealie/routes/organizers/controller_categories.py
      - ./mealie-git/mealie/routes/organizers/controller_tags.py:/app/mealie/routes/organizers/controller_tags.py
Marcbacca commented 1 year ago

Has there been any updates on this? I am also stuck on 0.5.6 due to the new betas requiring a login for read access. My setup is behind Authentik, so the read only option with no mealie authentication needed is perfect, thanks.

hay-kot commented 1 year ago

Has there been any updates on this? I am also stuck on 0.5.6 due to the new betas requiring a login for read access. My setup is behind Authentik, so the read only option with no mealie authentication needed is perfect, thanks.

No, it's been deprioritized because, 1) I don't use the feature, 2) it requires extensive reworking on nearly every component related to recipe views. 3) No other contributors seem super interested in taking on the work here.

Happy to help someone get started on it if they're interested in adding the feature, but I'm more focused on getting v1 to stable than taking on this feature.

DrSpaldo commented 1 year ago

I am also very interested in this one. It would be good to be able to give out my recipes to family without them having to use a login

LP0101 commented 1 year ago

+1 for this too!

My family and I all started using mealie recently and we love it. We're split into different groups by household, but we'd love to be able to get recipes from other groups

hay-kot commented 1 year ago

It's pretty clear there's lot's of interest in this feature. If you're interested in taking on the feature work for this please let me know.

michael-genson commented 1 year ago

https://github.com/mealie-recipes/mealie/pull/2525 covers most all of this

michael-genson commented 1 year ago

you can only generate temporary sharable links (that are also ugly)

FYI this has been addressed recently: https://github.com/mealie-recipes/mealie/pull/2482