The easiest package.json updater there is

Update dependency ranges, tidy your manifest, and create a reviewable diff without leaving your browser.

JSON manifestValid JSON
Package Version
Which npm release channel should we use?
Output Semver
How much can each range move?
Additional Options
Keep the output easy to review.
Ready when you are.We'll check each package against npm before creating the output.
01Choose the version policy
02Keep your dependency order tidy
03Review before you commit
A better maintenance loop

Less hunting. More shipping.

Everything the updater does is designed to make a small maintenance task stay small.

01
{ }

Paste once

Bring in the manifest you already have. No repository connection or setup wizard needed.

02

Set your policy

Choose latest, newest, or next, then decide how conservative each semver change should be.

03

Review the diff

See what changed, copy the clean result, and keep the final decision in your hands.

From the blog

Dependency updates without the drama.

Practical notes for keeping package manifests healthy, readable, and easier to review.

SemverAugust 8, 2026

Semver ^ vs ~: what those prefixes actually mean

Caret and tilde ranges look tiny, but they encode different maintenance policies. Learn how they behave across stable releases, 0.x packages, and prereleases.

6 min read
MaintenanceAugust 8, 2026

Safely updating major dependencies

A major bump is a migration, not a version-string edit. Use a staged workflow to read the release notes, isolate the change, test it, and roll it back cleanly.

9 min read
npmAugust 8, 2026

package-lock.json vs package.json

One file declares dependency intent and the other records the resolved tree. Understanding the difference makes installs reproducible and lockfile diffs easier to review.

7 min read
MaintenanceAugust 8, 2026

npm outdated vs npm-check-updates

Both tools find newer versions, but only one is designed to rewrite your manifest. Compare their output, scope, flags, and safest workflow.

7 min read
npmAugust 8, 2026

Handling peer dependency conflicts in practice

Read ERESOLVE as a constraint report, align the host and plugin versions, and use overrides or escape hatches only when you can explain the tradeoff.

10 min read
MonoreposAugust 8, 2026

Dependency updates in monorepos

Shared manifests, workspace protocols, lockfiles, and focused tests help a monorepo keep routine dependency updates small and reviewable.

8 min read
SecurityAugust 8, 2026

Dependency security updates: audit, triage, and fix with care

Audit alerts are the beginning of a security decision. Triage severity and reachability, choose the least risky fix, and document what you defer.

9 min read
MaintenanceAugust 7, 2026

A safer way to update every package in package.json

Updating dependencies is one of those tasks that looks simple from a distance. Open package.json, change a few versions, reinstall, and move on. In practice, a dependency file is a compact record of compatibility decisions. A large or noisy edit makes it harder to tell which change caused a problem later.

6 min read
Need to know

Questions, answered.

Everything you need to make your next dependency update feel routine.

Where is my package.json file?
Your package.json file is usually in the root directory of your javascript/typescript/node project. If you have a monorepo pattern (multiple projects in the same repository) you might have multiple package.json files that all need to be updated independently
What format is my package.json file?
Your package.json file is json as expected, but also has several required and several recommended fields. Required fields: name, version. Recommended fields: dependencies, scripts, author, private, license. For more information see https://flaviocopes.com/package-json
What does semver mean?
Semver is semantic versioning. Versions are split into 3 numbers major.minor.patch (e.g. 1.2.3) Usually the first character is either ^ ~ or nothing. ^ means compatible within the minor version (e.g. ^1.2.3 will match 1.2.3, 1.2.4, and 1.3.0, but not 2.0.0) ~ means compatible within the patch version (e.g. ~1.2.3 will match 1.2.3 and 1.2.4, but not 1.3.0) Nothing means exactly that version (e.g. 1.2.3 will only match 1.2.3)
What does * mean?
* means any version is acceptable. Usually this is not what you want, and you should use a specific version or compatible version range instead.
Why should I update my package.json file?
Updating your package.json file regularly helps ensure you have the latest bug fixes, security patches, and new features from the packages you depend on. However, you should test your application after updating to make sure everything still works correctly.
How often should I update my dependencies?
It depends on your project, but a good rule of thumb is to check for updates monthly or quarterly. For security updates, you should update as soon as possible. For major version updates, take more time to test and ensure compatibility.