From 4cf0f8fead1b5389353b363530b480462152b084 Mon Sep 17 00:00:00 2001 From: Elijah Kotyluk Date: Mon, 5 Jan 2026 20:46:36 -0600 Subject: [PATCH 1/2] chore(cli): update help command. --- README.md | 108 ++++++++++++++++++++++++++++++++++++++++++++++++ src/cli/help.ts | 3 ++ 2 files changed, 111 insertions(+) diff --git a/README.md b/README.md index b09350b..880e286 100644 --- a/README.md +++ b/README.md @@ -51,12 +51,120 @@ yarn add -D devoid ```sh devoid src/ +``` + +## Commmon Flags + +```sh devoid src/ --exports devoid src/ --files devoid src/ --locals devoid src/ --json ``` +## Analysis Modes + +### Unused Exports + +List exports that are never imported or referenced: + +```sh +devoid src/ --exports +``` + +### Unused Files + +List files that are unreachable from the entrypoints and have no side effects: + +```sh +devoid src/ --files +``` + +### Unused Local Identifiers + +Detect unused classes, enums, functions, and variables within files: + +```sh +devoid src/ --locals +# or +devoid src/ --identifiers +``` + +Enable strict mode to include type declarations: + +```sh +devoid src/ --locals --track-all-locals +``` + +### Types + +Detect unused exported types and local type declarations: + +```sh +devoid src/ --types +``` + +Types mode: + - Tracks type and interface usage only + - Respects import type and export type + - Follows barrel and wildcard type re-exports + - Does not require the TypeScript type checker + - Does not affect runtime export analysis + + +## Output Options + +### JSON + +```sh +devoid src/ --json +``` + +### Summary + +```sh +devoid src/ --summary-only +``` + +### Verbose + +Print raw graphs for debugging: + +```sh +devoid src/ --verbose +``` + +## Internal (Single-File) Analysis + +Analyze unused identifiers within a single file only: + +```sh +devoid internal src/utils/helpers.ts +``` + +Enable strict local tracking: + +```sh +devoid internal src/utils/helpers.ts --track-all-locals +``` + +## Misc Options + +### Ignore Paths + +Ignore files or directories containing a substring: + +```sh +devoid src/ --ignore dist --ignore generated +``` + +### Color Control + +```sh +devoid src/ --no-color +devoid src/ --color +``` + ## License MIT © Elijah Kotyluk diff --git a/src/cli/help.ts b/src/cli/help.ts index 505a643..0c312b0 100644 --- a/src/cli/help.ts +++ b/src/cli/help.ts @@ -24,6 +24,7 @@ ${colors.bold}Analysis Options:${colors.reset} --exports List unused exports --files List unused files --locals, --identifiers List unused local identifiers + --types Enable type-only analysis (unused exported + unused local types) --track-all-locals Count all variable declarations (strict mode) ${colors.bold}Output Options:${colors.reset} @@ -37,6 +38,8 @@ ${colors.bold}Examples:${colors.reset} devoid src/ --json devoid src/ --exports devoid src/ --files --locals + devoid src/ --types + devoid src/ --types --json devoid src/ --track-all-locals devoid internal src/utils/helpers.ts devoid internal src/module.ts --track-all-locals From 525ff00bb4f37b7dff0a10a03a9994c147ddb792 Mon Sep 17 00:00:00 2001 From: Elijah Kotyluk Date: Mon, 5 Jan 2026 20:48:38 -0600 Subject: [PATCH 2/2] fix(README): spelling mistake. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 880e286..0afef10 100644 --- a/README.md +++ b/README.md @@ -53,7 +53,7 @@ yarn add -D devoid devoid src/ ``` -## Commmon Flags +## Common Flags ```sh devoid src/ --exports