Crates.io | polykill |
lib.rs | polykill |
version | 1.3.1 |
source | src |
created_at | 2023-05-03 00:48:16.179953 |
updated_at | 2024-03-09 20:44:04.784782 |
description | Lightweight command line utility for removing dependencies and build artifacts from unused projects. |
homepage | https://github.com/Bdeering1/polykill#readme |
repository | https://github.com/Bdeering1/polykill |
max_upload_size | |
id | 855037 |
size | 49,863 |
Lightweight utility for removing unwanted dependencies and build artifacts from local projects. Inspired by npkill.
Supported project types:
cargo install polykill
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 Bind | Action |
---|---|
↓, ↑, ←, →, h, j, k, l | select project |
enter, del | remove artifacts |
esc, q | exit |
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.
Argument | Description |
---|---|
-v, --verbose | Verbose output |
-s, --skip-empty | Hide projects with zero possible disk savings |
--no-vcs | Include projects without version control (will slow down search) |
-u, --unsorted | Don't sort projects |
-h, --help | Print help |
-V, --version | Print version |
*supported version control systems are: git, svn, and mercurial
How projects are identified and which directories are used for dependencies and build artifacts:
Type | Identifier(s) | Directories |
---|---|---|
Node | package.json | node_modules |
Cargo | cargo.toml | target |
Mix | mix.exs | _build, deps |
.NET Core | .csproj | bin, obj |
Gradle | build.gradle(.kts) | build |
Composer | composer.json | vendor |
Misc. | bin, build, dist | bin, build, dist |