Home

Awesome

Polykill

Lightweight utility for removing unwanted dependencies and build artifacts from local projects. Inspired by npkill.

Supported project types:

Installation

cargo install polykill

Usage

polykill [OPTIONS] [DIR]

Polykill will recursively search for projects in the provided directory and output a list of all projects found. If no directory is provided, the current directory will be searched.

When the search has completed, navigate the menu using the following controls:

Key BindAction
↓, ↑, ←, →, h, j, k, lselect project
enter, delremove artifacts
esc, qexit

Removing artifacts involves removing the build/dependency directories associated with a project type.

Warning for Node projects: Some Node applications need their node_modules directory to work and deleting it may break them.

Options

ArgumentDescription
-v, --verboseVerbose output
-s, --skip-emptyHide projects with zero possible disk savings
      --no-vcsInclude projects without version control (will slow down search)
-u, --unsortedDon't sort projects
-h, --helpPrint help
-V, --versionPrint version

*supported version control systems are: git, svn, and mercurial

Additional Information

How projects are identified and which directories are used for dependencies and build artifacts:

TypeIdentifier(s)Directories
Nodepackage.jsonnode_modules
Cargocargo.tomltarget
Mixmix.exs_build, deps
.NET Core.csprojbin, obj
Gradlebuild.gradle(.kts)build
Composercomposer.jsonvendor
Misc.bin, build, distbin, build, dist