Reusing software components

Software teams use packages for common jobs such as handling dates, displaying charts, or connecting to a database. Like standard parts in a manufactured product, packages save teams from making every component themselves.

A project lists the packages and versions it needs. An installation tool downloads them, along with any packages they themselves may require.

Packages may be installed on a developer’s computer or a build server. Their code may later run in a user’s browser, an installed app, or on a server.

Saved effort, shared risk

Dependencies save work but also need care. A package can contain a security vulnerability, stop being maintained, or change in a way that breaks the project. Teams review important dependencies and update them deliberately.