Package managers allow to manage a project’s dependancies run configurations etc.. mostly in an isolated way.

They can also manage versioning related to these packages.

Here are managers for few different languages

Nodejs          bun, pnpm, yarn, npm
Go              go mod
Rust            Cargo
C# dotnet       Nuget
Python          pip

What do they do?

Let’s see how we share code without package managers.

  • We write code and share it with others by copying the code and pasting it in their project.
  • To manage the versioning, we can potentially use version control systems like git.

Package manager automates this process and makes it easier to manage.