For update, the strongest matches are renovatebot/renovate (Renovate is a comprehensive dependency management engine that automates), antfu-collective/taze (Taze is a specialized dependency update automator that handles) and dependabot/dependabot-core (This is the core engine for automated dependency updates). sindresorhus/np and conventional-changelog/standard-version round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Find the best open-source software update managers. We ranked top GitHub repositories by activity and features to help you compare and pick the right one.
Renovate is a GitOps-driven dependency management engine designed to automate the maintenance of software projects. It functions as an automated update tool that scans repository files to identify outdated dependencies, fetches the latest compatible versions from external sources, and generates pull requests to apply those updates. By integrating directly with code hosting platforms, it synchronizes project dependencies through declarative configuration files, ensuring that software components remain current and secure. The project distinguishes itself through its platform-agnostic architectu
Renovate is a comprehensive dependency management engine that automates the identification and updating of software dependencies across various platforms and package managers, perfectly matching the requirements for automated maintenance and release orchestration.
Taze is a dependency update automator and monorepo dependency manager that detects newer package versions and updates manifest files. It functions as a CI dependency validator, returning error codes when outdated dependencies are detected to fail continuous integration pipelines. The tool features a release stability filter to defer updates based on a minimum release age and a version constraint controller to manage major, minor, and patch update ranges with custom bumping modes. It supports workspace-wide manifest scanning across multiple subdirectories and provides dependency filtering via
Taze is a specialized dependency update automator that handles manifest scanning and version bumping for monorepos, making it a focused tool for managing project-level dependencies even though it lacks system-wide OS patch management.
dependabot-core is the automated dependency management engine that powers multi-ecosystem package updates and vulnerability remediation. It parses package manifests and lockfiles, polls package registries for newer versions, resolves version constraints across entire dependency trees, and generates pull requests with changelogs and structured descriptions. The system integrates vulnerability database matching to detect known security flaws and can automatically create remediation pull requests. What distinguishes this project is its handling of complex multi-ecosystem resolution across dozens
This is the core engine for automated dependency updates and vulnerability remediation, providing the exact multi-ecosystem resolution and pull request automation required for managing software dependencies.
np is a command line tool for managing the versioning and publication of packages to the npm registry. It serves as a release automator and semantic versioning tool that handles version bumps, git tagging, and the upload of packages to public or private registries. The tool distinguishes itself by providing an interactive workflow that guides users through sequential publishing steps, including a preview of all scheduled tasks before remote changes are performed. It includes automated release drafting to generate summary notes and audit capabilities to identify extraneous files or unpublished
This tool automates the versioning and release process for npm packages, fitting the category as a specialized utility for managing dependency releases and versioning workflows.
Standard-version is a semantic versioning release automation tool and Git versioning manager. It calculates the next semantic version by parsing commit messages that follow the Conventional Commits specification and automates the process of updating project files and creating signed Git tags. The tool distinguishes itself by generating formatted changelogs automatically from commit history and providing a release process simulation to preview version bumps without modifying files or Git history. It supports pre-release version management for experimental builds and allows for manual version o
This tool automates versioning and release workflows by parsing commit history and updating project files, which directly addresses the release automation and versioning aspects of dependency management.
release-it is an automated software release tool used for version bumping, Git tagging, and publishing software packages to registries. It functions as a Git versioning manager and changelog generator, facilitating the transition from code changes to official releases. The tool provides a non-interactive mode for executing release pipelines within continuous integration environments, as well as an interactive command-line workflow for manual configuration. It utilizes a plugin architecture to allow for custom versioning schemes and changelog generators. The system handles semantic versioning
This tool automates the versioning, tagging, and publishing lifecycle of software packages, serving as a specialized component for release automation within a broader dependency management workflow.
release-it is a Git release automation tool designed to coordinate software versioning, changelog generation, and package publishing. It functions as a semantic versioning manager that increments project versions and updates configuration files based on semantic standards or custom schemes. The project distinguishes itself through a plugin-based extension system that allows for custom versioning and publishing logic. It supports complex project structures via monorepo versioning automation to synchronize internal dependencies across multiple workspaces. The tool covers a broad range of capab
This tool automates the versioning, changelog generation, and publishing lifecycle of software projects, making it a specialized utility for release management rather than a system-wide patch or dependency update manager.
npm-check is a command-line tool that audits a project's npm dependencies, comparing local package versions against the npm registry to identify outdated, unused, or incorrect entries. It scans both package.json and node_modules, and can also inspect globally installed npm packages for the same issues. The tool distinguishes itself by offering multiple modes of operation. It can automatically update all outdated dependencies to their latest versions without interaction, suitable for automated scripts. Alternatively, it provides an interactive terminal interface that lets users review and
This tool provides automated dependency auditing and updating for JavaScript projects, serving as a focused utility for managing package versions within the npm ecosystem.
npm-check-updates is a command line utility and package version manager used to find and apply newer versions of dependencies within npm package manifests. It functions as a dependency version validator that identifies outdated packages and updates version strings in the project manifest to the latest available releases. The tool features an interactive CLI for selecting specific packages to upgrade through a prompt-based interface. It distinguishes itself by enforcing version cooldown periods to restrict the adoption of very recent releases and providing a mechanism to iteratively install up
This tool is a specialized utility for managing and automating dependency updates within Node.js projects, directly addressing the core requirement of dependency version maintenance.
Semantic-release is an automated release management tool that determines version increments, generates changelogs, and publishes software packages by analyzing commit history against standardized conventions. It functions as a plugin-based orchestrator that integrates directly into continuous integration pipelines to manage the entire release lifecycle, from verifying environment conditions to distributing artifacts. The project distinguishes itself through its commit-message-driven approach, which enforces consistent versioning standards and automates the creation of release notes based on t
This tool automates the release lifecycle, versioning, and changelog generation by analyzing commit history, which directly addresses the release automation and versioning aspects of your request.
Xmake is a cross-platform build utility and package manager designed for C and C++ development. It functions as a unified build automation tool that uses a Lua-based domain-specific language to define project targets, manage dependencies, and orchestrate compilation across multiple operating systems and hardware architectures. The system distinguishes itself through a modular, rule-based approach to task orchestration and toolchain integration. By abstracting native build systems and compilers, it allows developers to maintain consistent project configurations while targeting diverse environm
Xmake is a cross-platform build utility and package manager that handles dependency resolution and project orchestration for C/C++ development, fitting the category by automating the management of project-level dependencies and build configurations.
Maven is a Java build automation tool and software build orchestrator. It functions as a project lifecycle manager and dependency management system, using a standardized project object model to compile, test, and package Java projects. The project distinguishes itself through a phase-based build lifecycle and a plugin-based extension model, allowing users to bind custom goals to specific build stages. It coordinates complex software through multi-module project orchestration and ensures a reproducible build workflow by neutralizing environmental variables and controlling toolchain versions.
Maven is a build automation and dependency management tool for Java projects that handles versioning and library resolution, though it focuses on build-time orchestration rather than system-wide patch management or cross-platform OS updates.
pnpm is a command-line package manager designed to automate the retrieval, installation, and version management of software dependencies. It utilizes a deterministic resolution process and a lockfile to ensure that dependency trees remain consistent across different environments and machines. The project distinguishes itself through a content-addressable storage engine that saves every version of a package exactly once on the file system. By employing a hard-linking installation strategy and a symlink-based directory structure, it maps dependencies from a central store into individual project
This is a package manager that automates dependency retrieval, versioning, and installation for JavaScript projects, fitting the core identity of a dependency management tool even though it focuses on project-level packages rather than system-wide patch management.
This project is a dependency management tool for Go designed to track and lock package versions to ensure reproducible builds across different environments. It functions as a version lock file manager, recording complete snapshots of the dependency graph to prevent version drift, and as a semantic version constraint resolver that calculates compatible package versions. The tool orchestrates a local vendor directory, mirroring external source code to enable offline builds and source auditing. It utilizes a combination of static analysis to discover required libraries and a logic engine to inte
This tool manages Go project dependencies by locking versions and resolving constraints, serving as a specialized package management utility within the broader software dependency ecosystem.
Chocolatey is a Windows package manager and command-line software automator. It serves as a system configuration tool designed to automate the installation, upgrading, and removal of software packages on Windows operating systems through a terminal interface. The project utilizes a NuGet-based software distribution model to manage and version applications. This approach replaces manual downloads and interactive installer wizards with scripted, repeatable deployments. The tool covers broad capability areas including automated system provisioning, Windows package deployment, and software manag
Chocolatey is a Windows-specific package manager that automates the installation and upgrading of software, fitting the category by providing a command-line interface for managing system-wide dependencies and software versions.
This project is a command line interface for managing, installing, and publishing JavaScript packages to a remote registry. It serves as a dependency resolution tool, a software registry publishing client, and a security auditor for Node.js development workflows. The tool distinguishes itself by providing integrated monorepo workspace management and a comprehensive registry authentication client that supports multi-factor authentication. It enables detailed control over the software supply chain through provenance attestations, package signature verification, and the generation of a Software
This is a package manager that handles dependency installation, resolution, and security auditing for JavaScript projects, serving as a foundational tool for managing software dependencies within the Node.js ecosystem.
Berry is a Node.js package manager, dependency resolution engine, and monorepo workspace manager. It provides the tools necessary for resolving, downloading, and managing dependencies to ensure consistent environments across different development machines, while also serving as a publishing tool for uploading versioned package tarballs to registries. The project is distinguished by its implementation of Plug'n'Play, which resolves dependencies without creating a physical node_modules directory by mapping dependencies directly to the file system. This enables a zero-install development workflo
This is a package manager that handles dependency resolution, versioning, and consistency across projects, fitting the core requirements for managing software dependencies within the Node.js ecosystem.
This tool automates the release process by parsing commit messages to generate changelogs and manage version increments, making it a specialized solution for release automation and dependency synchronization within monorepos.
:robot: :palm_tree: Real-time automated dependency updates for npm and GitHub
This tool automates dependency updates specifically for npm packages on GitHub, directly addressing the core requirement of automated dependency management.
Argo CD Image Updater is a tool designed to automate the lifecycle of container images within Kubernetes environments. It monitors container registries for new software versions and automatically updates the corresponding image tags in version control repositories to ensure that running workloads remain current. The system distinguishes itself by maintaining a declarative state through GitOps synchronization, where updated image references are committed directly back to version control. It employs a controller-based reconciliation loop that periodically polls registries for metadata or reacts
This tool automates the update process for container images within Argo CD applications, directly addressing the need for automated dependency management in Kubernetes environments.
UniGetUI is a graphical interface designed to manage software installations on the Windows operating system. It functions as a centralized dashboard that provides a unified view for installing, updating, and removing applications across multiple command-line package managers. The application distinguishes itself by normalizing the disparate inputs and outputs of various package management utilities into a single, consistent schema. It supports batch operations, allowing users to perform maintenance tasks on multiple packages simultaneously, and includes functionality to automate update proces
UniGetUI serves as a centralized dashboard for managing and automating software updates across multiple Windows package managers, effectively acting as a unified interface for dependency and application maintenance.
Watchtower is a container-based solution designed to automate the lifecycle management of Docker applications. It functions as a background service that monitors running containers, detects when new base image versions are available in registries, and automatically redeploys the containers to ensure they remain synchronized with the latest builds. The project distinguishes itself through its ability to orchestrate complex deployment workflows and maintain service availability during updates. It interacts directly with the container runtime to manage service dependencies and restart sequences,
Watchtower is a specialized tool for automating container image updates and redeployments, effectively handling the lifecycle and version synchronization of Docker-based services.
diun is a monitoring service that tracks container registries for new tags or digest changes to notify users when image updates are available. It functions as a container orchestration watcher and registry notification engine, identifying images used within environments to ensure container deployments remain up to date. The project distinguishes itself by providing automated image discovery across multiple orchestrators and runtimes, including Kubernetes, Docker Swarm, Nomad, and containerd. It supports flexible configuration through YAML files, environment variables, and metadata labels or a
This tool automates the monitoring and discovery of container image updates across various orchestrators, serving as a specialized component for dependency management in containerized environments.
Watchtower is a Docker container update automator that monitors registries for new image pushes and automatically restarts containers with the latest versions. It functions as a container lifecycle manager, handling the process of bringing running containers up to date without manual intervention. The service includes specialized controls to manage deployment risk and precision, such as image age deferral and deployment cooldowns to protect against buggy releases. It supports image tag pinning to restrict updates to specific version series and can operate as a self-updating service to maintai
This tool automates the lifecycle and update process for Docker containers, serving as a specialized dependency and version manager for containerized environments.
CLI tool to update npm, uv, cargo, go and actions dependencies
This is a CLI tool that automates dependency updates across multiple package managers, directly addressing the core requirement for managing and automating software dependency updates.
| Repository | Stars | Sprache | Lizenz | Letzter Push |
|---|---|---|---|---|
| renovatebot/renovate | 21.8K | TypeScript | AGPL-3.0 | |
| antfu-collective/taze | 4.2K | TypeScript | MIT | |
| dependabot/dependabot-core | 5.4K | Ruby | mit | |
| sindresorhus/np | 7.7K | JavaScript | MIT | |
| conventional-changelog/standard-version | 8K | JavaScript | ISC | |
| webpro/release-it | 9K | JavaScript | MIT | |
| release-it/release-it | 9K | JavaScript | MIT | |
| dylang/npm-check | 6.6K | JavaScript | MIT | |
| tjunnone/npm-check-updates | 10.3K | TypeScript | NOASSERTION | |
| semantic-release/semantic-release | 23.3K | JavaScript | mit |