i’ve tried grocy a few times over and it’s burned a lot of time and brain cells. is there anything that does this (or even much less than this) and just works?
i understand why it was made this complex - i code and i work with people who want everything to be so theoretically ‘flexible’ that nothing simple works, so i’m used to the abstraction layers. but
- first try: looked at number and size of packages, no tree-shaking, code doesn’t pass sniff test. dozens of megabyes for this? nope
- second try: well i don’t want to build this myself. i’ll put it in its own instance to minimize security exposure. but hey, this release is months old and these terrible bugs have been fixed, i’ll just grab newer code. missed the thing where database migrations are tested only from official releases. database breaks.
- i learn sqlite syntax and reconstruct the database.
- months later i download new grocy android client, which expects a v4 grocy back end. all recipes break.
- i download official grocy v4 release (the third one in rapid succession, due to major bugs - luckily i hadn’t tried too early).
- database breaks.
i’m done. i don’t care that i lose the work i already put into it. i just want to open the cupboard twice and have the same thing be there both times. help
I was thinking about trying Grocy, but your post scares me! Have you tried with a Docker container?
I added mine to an existing compose file and was up and running in a couple minutes. I only use it for chore tracking so cant speak to the rest of it.
Docker is super easy. But the app itself has its quirks. If you only want shopping/planning, I think there are more suitable apps.
I started using it mostly for tracking stuff in the fridge because too much spoiled because it was hidden somewhere and I forgot about it.
i haven’t tried the docker route - it seems fairly new. it also doesn’t seem like it would fix the issues i ran into. containerization is great for insulating the app from external dependency hell and environmental variation. but the problems i’ve had involve its own code and logic, and corruption of a sqlite database within its own filesystem; wrapping issues like that in a docker container only makes them harder to solve