{"id":15979080,"url":"https://github.com/perry-mitchell/linkmon","last_synced_at":"2025-08-08T02:44:39.275Z","repository":{"id":55500047,"uuid":"213231977","full_name":"perry-mitchell/linkmon","owner":"perry-mitchell","description":"NPM link monitor CLI utility","archived":false,"fork":false,"pushed_at":"2020-12-26T14:47:32.000Z","size":67,"stargazers_count":5,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-11T04:38:41.354Z","etag":null,"topics":["cli","cli-utility","link","monitor","npm","npm-link","symlink","utility"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/perry-mitchell.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-10-06T19:39:26.000Z","updated_at":"2019-11-12T11:42:28.000Z","dependencies_parsed_at":"2022-08-15T01:50:43.605Z","dependency_job_id":null,"html_url":"https://github.com/perry-mitchell/linkmon","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/perry-mitchell/linkmon","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/perry-mitchell%2Flinkmon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/perry-mitchell%2Flinkmon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/perry-mitchell%2Flinkmon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/perry-mitchell%2Flinkmon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/perry-mitchell","download_url":"https://codeload.github.com/perry-mitchell/linkmon/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/perry-mitchell%2Flinkmon/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269355822,"owners_count":24403498,"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-08-08T02:00:09.200Z","response_time":72,"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":["cli","cli-utility","link","monitor","npm","npm-link","symlink","utility"],"created_at":"2024-10-07T23:41:02.649Z","updated_at":"2025-08-08T02:44:39.213Z","avatar_url":"https://github.com/perry-mitchell.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# linkmon\n\u003e NPM link monitor CLI utility\n\n![linkmon monitoring directories](screenshot.jpg)\n\n## About\n\nMonitor and display NPM-linked project dependencies in the terminal. Watches directories and displays linked projects so you can keep track of what is linked where.\n\nWhy? I frequently find that some operations result in npm stripping my linked modules and replacing them with copies from the registry, which can be very frustrating during development across multiple libraries. This project provides aid by showing you all links so you can keep track of what is linked where.\n\n**`linkmon` can also notify you when a linked dependency becomes unlinked!**\n\n## Installation\n\nInstall by running `npm install -g linkmon`, if you intend on using it as a CLI utility. Install it for use within a project by running `npm install linkmon --save`.\n\n## Usage\n\n`linkmon` id designed as a CLI utility first:\n\n```\nUsage: linkmon [options] [arguments]\n\n    Watch a directory:\n        linkmon ~/programming/projects\n    Watch multiple directories, with notifications:\n        linkmon /Users/lucy/git ~/temp/my-project --notify\n    Custom watch interval (30 seconds):\n        linkmon some-dir --interval=30\n\nOptions:\n    --interval=             Watch interval, in seconds, for monitoring\n                            the provided project directories. Defaults\n                            to 15 seconds.\n    --notify                Enable operating-system notifications. Is\n                            disabled by default. Requires a GUI such\n                            as Mac OS or Windows.\n\nArguments:\n    Provide one or more directories for scanning and monitoring. A\n    directory can either contain one or more further directories that\n    house NodeJS projects, or can be a NodeJS project itself. A\n    directory is classified as a NodeJS project if it contains a\n    package.json file and a node_modules directory.\n```\n\n### NodeJS API\n\n`linkmon` can be used as a NodeJS API as well:\n\n```javascript\nconst { scanLinks } = require(\"linkmon\");\n\n(async function() {\n    const links = await scanLinks(\"../\");\n    // links look like the following:\n    // {\n    //     parent: \"my-lib\",\n    //     parentVersion: \"0.3.4\",\n    //     linkedPackage: \"@company/package\",\n    //     linkedPackageVersion: \"5.3.12\",\n    //     link: \"/Users/joe/work/package-dev\",\n    //     path: \"/Users/joe/work/my-lib\"\n    // }\n})();\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fperry-mitchell%2Flinkmon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fperry-mitchell%2Flinkmon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fperry-mitchell%2Flinkmon/lists"}