Skip to content

Add profiles system#223

Merged
zaldih merged 11 commits into
mainfrom
feat/profiles
Oct 21, 2025
Merged

Add profiles system#223
zaldih merged 11 commits into
mainfrom
feat/profiles

Conversation

@zaldih

@zaldih zaldih commented Oct 20, 2025

Copy link
Copy Markdown
Member

This is one of the biggest changes in npkill.

The profile system allows you to group multiple targets under one umbrella.

Now node_modules is included in the “node” profile, along with other targets.

A base has been created, but users will be allowed to define their own.

You can check the available profiles with --profiles.

The usage is npkill --profiles <profile separated by ,>. E.g.: npkill --profiles node,android,data-analysis

Available profiles

node (default) - All the usual suspects related with the node/web/javascript dev toolchain: node_modules, caches, build artifacts, and assorted JavaScript junk. Safe to clean and your disk will thank you.
node_modules,.npm,.pnpm-store,.yarn/cache,.next,.nuxt,.angular,.svelte-kit,.vite,.nx,.turbo,.parcel-cache,.rpt2_cache,.eslintcache,.esbuild,.cache,.rollup.cache,storybook-static,coverage,.nyc_output,.jest,gatsby_cache,.docusaurus,.swc,.stylelintcache,deno_cache

python - The usual Python leftovers — caches, virtual environments, and test artifacts. Safe to clear once you’ve closed your IDE and virtualenvs.
pycache,.pytest_cache,.mypy_cache,.ruff_cache,.tox,.nox,.pytype,.pyre,htmlcov,.venv,venv

data-science - Jupyter checkpoints, virtualenvs, MLflow runs, and experiment outputs. Great for learning, terrible for disk space.
.ipynb_checkpoints,pycache,.venv,venv,outputs,.dvc,.mlruns

java - Build outputs and Gradle junk.
target,.gradle,out

android - Native build caches and intermediate files from Android Studio. Deleting won't hurt, but expect a rebuild marathon next time.
.cxx,externalNativeBuild

swift - Xcode's playground leftovers and Swift package builds. Heavy, harmless, and happy to go.
DerivedData,.swiftpm

dotnet - Compilation artifacts and Visual Studio cache folders. Disposable once you're done building or testing.
obj,TestResults,.vs

rust - Cargo build targets. Huge, regenerable, and surprisingly clingy, your disk will appreciate the reset.
target

ruby - Bundler caches and dependency leftovers.
.bundle

elixir - Mix build folders, dependencies, and coverage reports. Easy to regenerate, safe to purge.
_build,deps,cover

haskell - GHC and Stack build outputs. A collection of intermediate binaries you definitely don't need anymore.
dist-newstyle,.stack-work

scala - Bloop, Metals, and build outputs from Scala projects.
.bloop,.metals,target

cpp - CMake build directories and temporary artifacts. Rebuilds take time, but space is priceless.
CMakeFiles,cmake-build-debug,cmake-build-release

unity - Unity's cache and build artifacts. Expect longer load times next launch but it can save tons of space on unused projects.
Library,Temp,Obj

unreal - Intermediate and binary build caches. Safe to clean. Unreal will (happily?) recompile.
Intermediate,DerivedDataCache,Binaries

godot - Editor caches and import data. Godot can recreate these in a blink.
.import,.godot

infra - Leftovers from deployment tools like Serverless, Vercel, Netlify, and Terraform.
.serverless,.vercel,.netlify,.terraform,.sass-cache,.cpcache,elm_stuff,nimcache,deno_cache

@zaldih zaldih merged commit 4618af8 into main Oct 21, 2025
19 checks passed
@zaldih zaldih deleted the feat/profiles branch October 21, 2025 10:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant