Ambar A common misconception is that “requirements.txt” is the equivalent of “package.json” . The functionality is split between setup.py would be the equivalent with running tests, installing, packaging, for a specific package, while requirements files are for maintaining a list of dependencies. I think having a “build” file is a good idea and teaches developers to care about this stuff. setup.py sometimes arcane setup doesn’t do this, so most developer end up with a only a requirements file
Yes debugging a broken npm installation is a terrible expedience. I’ve also been there. Incompatible versions of npm make this even worse (I’ve almost never encountered that problem in python).