pip-save NPM Style Package Management for Python

| programming | python |

One of my favorite things about npm is how simple it makes it to manage production, testing, and development dependencies with the npm install –save command. I was browsing through the latest packages on PyPI and I came across pip-save which does basically the same thing as npm –save as a wrapper around pip.

From the Project README:

Currently its a big pain while installing new dependencies using pip. After installing the dependency, you need to figure out the version number and then manually add it to your requirements file. pip-save allows you to install/uninstall any dependecy and automatically add/remove it to/from your requirements file using one command only.
I cannot count the number of times where I have read a doc for some package and it said that installation was as simple as pip install foo. Sure, installing the package is that easy, but keeping track of versions is a whole different story.

One approach is to dump every single package into your requirements.txt with pip freeze > requirements.txt but this is troublesome because it also includes dependencies which clutter up the requirements.txt file.

What I then end up doing is finding the package on either GitHub or PyPI, figuring out what the latest version is, putting the package with the version into my requirements.txt file and then running pip install -r requirements.txt.

pip-save does exactly what it says on the tin and solves this annoying workflow in one step. It installs whatever package you want, and adds it to your requirements.txt with the version that you installed. Simple, Rustic, Yes.

Thank you for reading! Share your thoughts with me on bluesky, mastodon, or via email.

Check out some more stuff to read down below.

Most popular posts this month

Recent Favorite Blog Posts

This is a collection of the last 8 posts that I bookmarked.

Articles from blogs I follow around the net

Doing less, for her

My daughter will be born soon, and I’m reflecting on what that means for my OpenSource work.

via Carlos Becker February 1, 2026

The Browser’s Little White Lies

So I’m making a thing and I want it to be styled different if the link’s been visited. Rather than build something myself in JavaScript, I figure I’ll just hook into the browser’s mechanism for tracking if a link’s been visited (a sensible approach, if I d…

via Jim Nielsen’s Blog February 1, 2026

$29 million stolen from from Step Finance treasury wallets

The Solana-based defi portfolio tracker Step Finance lost 261,854 SOL (~$28.7 million) when a thief gained access to treasury and fee wallets. It's not yet clear how the attacker was able to steal the funds, although Step Finance…

via Web3 is Going Just Great February 1, 2026

Generated by openring