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

Don’t Let Anyone Take Away Your Big Box of Cables

Speaking of being on the internet and finding things that make you go, “Hey! It’s not just me!” I scrolled across this skeet from Tyler Gaw: I just dug to the bottom of my Big Box of Cables to find two cables that I needed for something. They've been in th...

via Jim Nielsen’s Blog September 9, 2026

Do We Have to Choose Between Rails and Trails?

A Bike-Riding Railfan on the Pros and Cons of "Railbanking"

via High Speed September 9, 2026

Greyscale in Doodle Scan

I added a greyscale colour mode to Doodle Scan

via Robb Knight • Posts • Atom Feed September 9, 2026

Generated by openring