Ribbit-Network / ribbit-network-dashboard

The web dashboard for the world's largest crowdsourced network of open-source, low-cost, CO2 Gas Detection Sensors.
MIT License
17 stars 16 forks source link

Python Dependency Management #82

Open abhinavtripathy opened 2 years ago

abhinavtripathy commented 2 years ago

Hi,

I was looking at the codebase and I see that venv is used as a python package manager. While this is the default, to scale this project I was wondering if pipenv or poetry would be appropriate as an easy way manage our dependencies as they can get complicated fairly quickly.

@keenanjohnson any thoughts?

keenanjohnson commented 2 years ago

Hey there!

I'm not an expert, but I've heard that poetry is excellent. In fact, we switched the Frog Sensor package manager to poetry a while ago, so I think it would be great to do that here as well if that's the standard.

@spestana do you have any thoughts or experience on poetry vs pipenv vs venv?

spestana commented 2 years ago

I haven't yet used it myself, but have heard others recommending poetry.

Either way it would be good to be consistent across the board!

abesto commented 2 years ago

In general, Python package management is a bit of a mess :D pipenv and poetry are indeed the major options. I do think adopting poetry here (possibly along with the other devenv goodies in the PR linked above) is a Good Idea (TM). I may do it myself at some point, but also, very happy to review code if someone wants to take on this!

keenanjohnson commented 2 years ago

@abhinavtripathy are you still working on this issue or should we change it to unassigned for someone else?

abhinavtripathy commented 2 years ago

@keenanjohnson Thank you for checking In. I have paused on this due to our considering of migration to React. I am looking into the deployment/tech stack and what we can use. I will get back to you on that.