{"_id":"@claudiu-ceia/nav","_rev":"4-9595120cbf53975b059ae7815f4b7738","name":"@claudiu-ceia/nav","dist-tags":{"latest":"0.3.2"},"versions":{"0.2.0":{"name":"@claudiu-ceia/nav","version":"0.2.0","license":"MIT","_id":"@claudiu-ceia/nav@0.2.0","maintainers":[{"name":"claudiu.ceia","email":"claudiu.ceia@gmail.com"}],"bin":{"nav":"dist/cli.js"},"dist":{"shasum":"0bfcc807c0976c44ae393af7601182fab5b57154","tarball":"https://registry.npmjs.org/@claudiu-ceia/nav/-/nav-0.2.0.tgz","fileCount":36,"integrity":"sha512-mloZ4F3pb2UMYMzMvk7sMZZ1Btl7vaNyqzIczvIUnmuCj7PIeVEjp0W4lLtNQaJUNTi4sj3UBg05RvyoprbRlw==","signatures":[{"sig":"MEUCIGAISimpQPLy6fWn/luLLNWPHm60rwoMPPfyL0wdVzCZAiEAg8UqbQih00yJeBNslLH2UbBsYuQ2k1vfwHaV3VI2ge0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":173864},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"bun":"./src/index.ts","types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"7cb524ab1dfe1b5631f96132e9f076139e193f5d","_npmUser":{"name":"claudiu.ceia","email":"claudiu.ceia@gmail.com"},"_npmVersion":"10.8.2","description":"TypeScript language-service based navigation and reference tooling.","directories":{},"_nodeVersion":"20.20.0","dependencies":{"chalk":"^5.6.2","@stricli/core":"^1.2.5","@claudiu-ceia/combine":"^0.2.6","@claudiu-ceia/astkit-core":"^0.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/nav_0.2.0_1770774516608_0.45046773844510524","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@claudiu-ceia/nav","version":"0.3.0","license":"MIT","_id":"@claudiu-ceia/nav@0.3.0","maintainers":[{"name":"claudiu.ceia","email":"claudiu.ceia@gmail.com"}],"homepage":"https://github.com/ClaudiuCeia/astkit/tree/main/packages/nav#readme","bugs":{"url":"https://github.com/ClaudiuCeia/astkit/issues"},"bin":{"nav":"dist/cli.js"},"dist":{"shasum":"cf8c8dec1b338f314a84e43433c41c30b9907345","tarball":"https://registry.npmjs.org/@claudiu-ceia/nav/-/nav-0.3.0.tgz","fileCount":32,"integrity":"sha512-ZPRxIs1ISgu/CdhSKcS7DT70UVZl/KVYG3xZXxv7m87ULy3jBZEfjLp/09kRa9ywafsvv0gn8Q7T4iyQLEzqoA==","signatures":[{"sig":"MEUCIBYYJYZDF0HYKqEavsjz5VSplum8Ozi+19qq+A0NbdBBAiEA33Yxp89+DsLWhBqXWjEVQV83XWILmIlzwj/okVVFVyM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@claudiu-ceia%2fnav@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129075},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12.0"},"exports":{".":{"bun":"./src/index.ts","types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"eb808ebf41b54a2be5d20af21283fe610f3ca7d0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fe198eb5-2d32-46c5-823e-7ce41dbd1e3c"}},"repository":{"url":"git+https://github.com/ClaudiuCeia/astkit.git","type":"git","directory":"packages/nav"},"_npmVersion":"12.0.1","description":"TypeScript language-service based navigation and reference tooling.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"chalk":"^5.6.2","@stricli/core":"^1.3.0","@claudiu-ceia/combine":"^0.6.0","@claudiu-ceia/astkit-core":"^0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"typescript":">=5.9 <7"},"_npmOperationalInternal":{"tmp":"tmp/nav_0.3.0_1784941107917_0.937578210960569","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@claudiu-ceia/nav","version":"0.3.1","license":"MIT","_id":"@claudiu-ceia/nav@0.3.1","maintainers":[{"name":"claudiu.ceia","email":"claudiu.ceia@gmail.com"}],"homepage":"https://github.com/ClaudiuCeia/astkit/tree/main/packages/nav#readme","bugs":{"url":"https://github.com/ClaudiuCeia/astkit/issues"},"bin":{"nav":"dist/cli.js"},"dist":{"shasum":"a1536f4617ec015599f423930fbb715ae3a4dad3","tarball":"https://registry.npmjs.org/@claudiu-ceia/nav/-/nav-0.3.1.tgz","fileCount":32,"integrity":"sha512-jWvTlhWUe01h6UAOGHN0bE464YTctu9bFk9CtcbFtIbrQLazjtrvBFQOBdczZvTrQUErot5do33t4lKZYzQfpg==","signatures":[{"sig":"MEUCIQCiiXiDNT4XeIXHW2uy2un9h2+CRvHnd40s8NBR+FLErgIgMh344CiJZEiN7TYkFTDuTNiXwlveEcvtpGGWt4l5skA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@claudiu-ceia%2fnav@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":143784},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12.0"},"exports":{".":{"bun":"./src/index.ts","types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"fa95bb8bdbda995d214f63223216df1c17fd6275","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fe198eb5-2d32-46c5-823e-7ce41dbd1e3c"}},"repository":{"url":"git+https://github.com/ClaudiuCeia/astkit.git","type":"git","directory":"packages/nav"},"_npmVersion":"12.0.2","description":"TypeScript language-service based navigation and reference tooling.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"chalk":"^6.0.0","@stricli/core":"^1.3.0","@claudiu-ceia/combine":"^0.6.1","@typescript/typescript6":"^6.0.2","@claudiu-ceia/astkit-core":"^0.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"typescript":">=5.9 <8"},"_npmOperationalInternal":{"tmp":"tmp/nav_0.3.1_1787960488185_0.8231758545802617","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"_id":"@claudiu-ceia/nav@0.3.2","bin":{"nav":"dist/cli.js"},"bugs":{"url":"https://github.com/ClaudiuCeia/astkit/issues"},"dist":{"shasum":"c18486da20bf3ec35464f4cdc65746914563b570","tarball":"https://registry.npmjs.org/@claudiu-ceia/nav/-/nav-0.3.2.tgz","fileCount":32,"integrity":"sha512-6zp0oWeiH1gFzaMq/Y050QDfGN4d8jPIYIznEG5X4vrhB4u506Sy1rg3OO1vAHP6+3UQJtHUwniGhNPwOOqlJA==","signatures":[{"sig":"MEYCIQCcriE985DwS+ylr74TGOmO8SbSDpnBtoCiAtqB5ynQHwIhAL9p7uaAk2kZWLkB9vsjA6vQnbTyPAmNRpfwlDLvxZLQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAfQD34GKLoI0f9LVhNMq/ZOOI4V4XHi6FefjF5iDQA2AiEA3KBA6P7w6sW5EFgth+UaPnI3MbbSwFj1w7E/7or5OHc="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@claudiu-ceia%2fnav@0.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":143785},"main":"./dist/index.js","name":"@claudiu-ceia/nav","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12.0"},"exports":{".":{"bun":"./src/index.ts","types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"4e64db9e05f8cb67afddd0f72698657c7a5a3dd7","license":"MIT","version":"0.3.2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fe198eb5-2d32-46c5-823e-7ce41dbd1e3c"}},"homepage":"https://github.com/ClaudiuCeia/astkit/tree/main/packages/nav#readme","repository":{"url":"git+https://github.com/ClaudiuCeia/astkit.git","type":"git","directory":"packages/nav"},"_npmVersion":"12.0.2","description":"TypeScript language-service based navigation and reference tooling.","directories":{},"maintainers":[{"name":"claudiu.ceia","email":"claudiu.ceia@gmail.com"}],"_nodeVersion":"24.20.0","dependencies":{"chalk":"^6.0.0","@stricli/core":"^1.3.0","@claudiu-ceia/combine":"^0.11.3","@typescript/typescript6":"^6.0.2","@claudiu-ceia/astkit-core":"^0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"typescript":">=5.9 <8"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/nav_0.3.2_1789946230935_0.4792157025391992"}}},"time":{"created":"2026-02-11T01:48:36.512Z","modified":"2026-09-20T23:17:11.336Z","0.2.0":"2026-02-11T01:48:36.751Z","0.3.0":"2026-07-25T00:58:28.052Z","0.3.1":"2026-08-28T23:41:28.386Z","0.3.2":"2026-09-20T23:17:11.018Z"},"bugs":{"url":"https://github.com/ClaudiuCeia/astkit/issues"},"license":"MIT","homepage":"https://github.com/ClaudiuCeia/astkit/tree/main/packages/nav#readme","repository":{"url":"git+https://github.com/ClaudiuCeia/astkit.git","type":"git","directory":"packages/nav"},"description":"TypeScript language-service based navigation and reference tooling.","maintainers":[{"name":"claudiu.ceia","email":"claudiu.ceia@gmail.com"}],"readme":"# @claudiu-ceia/nav\n\nTypeScript language-service navigation utilities for exported declarations, definitions, references, and symbol ranking.\n\n## Install\n\n```bash\nnpm install --save-dev @claudiu-ceia/nav typescript@^7\n```\n\n`@claudiu-ceia/nav` supports projects on TypeScript 5.9, 6, and 7. TypeScript 7.0 does not expose\na stable compiler API, so navigation uses its official TypeScript 6 compatibility package\ninternally while the target project can use the TypeScript 7 compiler.\n\n## CLI\n\n```bash\nnpx @claudiu-ceia/nav --help\n# or\nnav --help\n```\n\n## Command surface\n\n```bash\nnav declarations [--json] [--no-color] <file>\nnav definition <file>:<line>:<character>\nnav references <file>:<line>:<character>\nnav code-rank [--json] [--limit <n>] [--cwd <path>] [scope]\n```\n\nLocation syntax:\n\n- `<file>:<line>:<character>`\n- line and character are 1-indexed\n\n## Output modes\n\n- `declarations`: compact text by default, `--json` for structured output.\n- `definition`: structured JSON output.\n- `references`: structured JSON output.\n- `code-rank`: compact text by default, `--json` for structured output.\n\n## Quick examples\n\n```bash\n# list exported declarations from a file\nnav declarations src/index.ts\n\n# get symbol definition at a location\nnav definition src/main.ts:42:17\n\n# list references for a symbol at a location\nnav references src/main.ts:42:17\n\n# rank exported symbols by reference strength\nnav code-rank src --limit 20\n```\n\n## Safety model\n\n- File and scope paths are constrained to the nearest git repository root when available.\n- If no git root is found, paths are constrained to `cwd`.\n- Path escape and symlink boundary checks are enforced for path-based operations.\n\n## Programmatic API\n\n```ts\nimport {\n  codeRankCommand,\n  createService,\n  declarationsCommand,\n  definitionCommand,\n  formatCodeRankOutput,\n  formatDeclarationsOutput,\n  fromPosition,\n  getDeclarations,\n  getDefinition,\n  getReferences,\n  parseFilePosition,\n  rankCode,\n  referencesCommand,\n  relativePath,\n  runCodeRankCommand,\n  toPosition,\n  type CodeRankOptions,\n  type CodeRankResult,\n  type FilePosition,\n  type RankedSymbol,\n} from \"@claudiu-ceia/nav\";\n```\n\nCore APIs:\n\n- `getDeclarations(filePath)`: exported declarations/signatures for one file.\n- `getDefinition(filePath, line, character)`: definition target at one source location.\n- `getReferences(filePath, line, character)`: references for one source location.\n- `rankCode({ cwd?, scope?, limit? })`: rank exported symbols by reference strength.\n\nCLI integration exports:\n\n- `declarationsCommand`\n- `definitionCommand`\n- `referencesCommand`\n- `codeRankCommand`\n\n## Development\n\nFrom monorepo root:\n\n```bash\nbun run nav -- --help\nbun test packages/nav/__tests__\nbun test --coverage packages/nav/__tests__\nbun run typecheck\n```\n","readmeFilename":"README.md"}