{"id":15011502,"url":"https://github.com/omznc/nrush","last_synced_at":"2026-02-18T10:02:55.213Z","repository":{"id":208155614,"uuid":"720936732","full_name":"omznc/nrush","owner":"omznc","description":"Fast and tiny update checker for npm packages, written in Rust.","archived":false,"fork":false,"pushed_at":"2024-09-11T09:59:39.000Z","size":107,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-10T12:38:42.793Z","etag":null,"topics":["bun","javascript","nodejs","npm","rust","typescript","updater","utility"],"latest_commit_sha":null,"homepage":"https://nrush.omarzunic.com","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/omznc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-11-20T02:20:39.000Z","updated_at":"2024-09-11T10:41:46.000Z","dependencies_parsed_at":"2024-09-30T04:00:23.292Z","dependency_job_id":null,"html_url":"https://github.com/omznc/nrush","commit_stats":{"total_commits":55,"total_committers":2,"mean_commits":27.5,"dds":0.07272727272727275,"last_synced_commit":"dc4556c0b73fa467901f63ca5e9ff9f6472572c9"},"previous_names":["omznc/nrush"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/omznc/nrush","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omznc%2Fnrush","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omznc%2Fnrush/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omznc%2Fnrush/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omznc%2Fnrush/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/omznc","download_url":"https://codeload.github.com/omznc/nrush/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omznc%2Fnrush/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279003896,"owners_count":26083641,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-10T02:00:06.843Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bun","javascript","nodejs","npm","rust","typescript","updater","utility"],"created_at":"2024-09-24T19:41:10.565Z","updated_at":"2025-10-10T12:38:43.276Z","avatar_url":"https://github.com/omznc.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ccenter\u003e\r\n\r\n![nrush](https://github.com/omznc/nrush/assets/38432561/ad2f9d0c-477a-420a-aa34-7c171fe8a0a8)\r\n\r\n\u003c/center\u003e\r\n\r\n\u003cdiv style=\"display: flex;\"\u003e\r\n    \u003ca href=\"https://www.npmjs.com/package/nrush\"\u003e\r\n        \u003cimg src=\"https://img.shields.io/npm/dw/nrush?style=for-the-badge\u0026logo=npm\" alt=\"npm\"/\u003e\r\n    \u003c/a\u003e\r\n    \u003cimg src=\"https://img.shields.io/github/actions/workflow/status/omznc/nrush/cd.yml?style=for-the-badge\u0026logo=github\" alt=\"GitHub\"/\u003e\r\n\u003c/div\u003e\r\n\r\n\r\n\r\n\r\n\r\n# nrush 🦀 \r\n\r\n\u003e A speedy way to update all packages in a Node/Bun project, written in Rust.\r\n\r\n\r\n\r\n## Usage\r\n\r\nBun\r\n\r\n```bash\r\nbun --bun add -d nrush@latest # Ensures the latest version is used\r\nnrush -i\r\n```\r\n\r\nNode\r\n\r\n```bash\r\nnpx nrush@latest -i\r\n```\r\n\r\n**Commands:**\r\n\r\n- `nrush about` - Display comprehensive information about NRush.\r\n- `nrush help` - Provide a usage guide for NRush. Primarily, this section.\r\n\r\n**Arguments:**\r\n(Arguments are applicable only if no commands are supplied and only `nrush` is executed.)\r\n\r\n1. Update Options (`-u` / `--update`):\r\n\t- Automatically updates all dependencies without user interaction.\r\n\r\n2. Interactive Mode (`-i` / `--interactive`)\r\n\t- User can select which packages to update. Defaults to this if both `-u` and `-i` are supplied.\r\n\r\n3. Include (`--include \u003cdev,peer\u003e`):\r\n\t- Include `dev` and/or `peer` dependencies in the update process.\r\n\r\n4. Path Specification (`-p \u003cpath\u003e` / `--path \u003cpath\u003e`):\r\n\t- Specify the path to a `package.json` file. The default is the current directory.\r\n\r\n5. Skip Ranges in Versioning (`--skip-ranges`):\r\n\t- Skips version ranges in package.json. Default is `false`, preserving them.\r\n\t- Example: `^1.0.0` will be updated to `2.0.0` if `--skip-ranges` is supplied.\r\n\r\n6. Update Any Version (`--update-any`):\r\n\t- Updates `*` versions in package.json. Default is `false`, maintaining them.\r\n\t- Example: `*` will be updated to `2.0.0` if `--update-any` is supplied.\r\n\r\n7. SOON: Semver Constraint (`-s \u003csemver\u003e` / `--semver \u003csemver\u003e`):\r\n\t- Specify a maximum semver range to update to. Choose either `major`, `minor`, or `patch`. Default is `major`.\r\n    - This currently does nothing.\r\n\r\nBy executing `nrush` without any arguments or commands, a list of updatable packages will be displayed, and you'll be prompted to install them.\r\n\r\n## Purpose\r\n\r\nI made this as a personal alternative to `npm-check-updates`, mostly as a challenge to write a less feature-packed,\r\nfaster version that checks the packages concurrently, resulting in 🔥speed🔥.\r\n\r\nConcurrency, baby.\r\n\r\n# Contributing\r\n\r\nPlease do. I don't really do Rust that often, and all of this was done in 30 minutes.\r\n\r\n# Goals\r\n\r\n- Full feature set from npm-check-updates\r\n\r\n# Notes\r\n\r\n- nrush is short for npm rush, as in \"please get me up to date\"\r\n- The base `omznc/nrush` package figures out your OS architecture and downloads the correct binary. It uses `child_process` which you could find alarming, but hey, that's what open-source is for. \r\n\t- These are the underlying binaries:\r\n\t\t- [nrush-windows-x64](https://www.npmjs.com/package/nrush-windows-x64)\r\n\t\t- [nrush-windows-arm64](https://www.npmjs.com/package/nrush-windows-arm64)\r\n\t\t- [nrush-darwin-x64](https://www.npmjs.com/package/nrush-darwin-x64)\r\n\t\t- [nrush-darwin-arm64](https://www.npmjs.com/package/nrush-darwin-arm64)\r\n\t\t- [nrush-linux-x64](https://www.npmjs.com/package/nrush-linux-x64)\r\n\t\t- [nrush-linux-arm64](https://www.npmjs.com/package/nrush-linux-arm64)\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fomznc%2Fnrush","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fomznc%2Fnrush","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fomznc%2Fnrush/lists"}