poops-images 💩📸
One command between a folder of photos and a folder of web-ready variants. Resize, crop, convert, minify, cache — for a static site, a build script, or a directory you just want smaller.
npm install poops-images
npx poops-images src/images --out dist/images --widths 300,768,1024 --format webp,avif
It exists because the alternative is Pixelmator Pro and ImageOptim both, and because
sometimes JPEG is lighter than WebP — which you only find out by encoding both and
looking. --format smart does the looking for you.
Start here
- Introduction — what it does, what it refuses to do, the whole feature list.
- Quick examples — a recipe per job, runnable as written.
- CLI — every flag and what it takes.
- Configuration —
poops-images.json, editor completion, every key. - Preprocessors — LQIP placeholders, grayscale hovers, halftone, your own handlers.
- Poops integration — how the filenames become a
srcset.
What it will not become
An asset pipeline, a CDN client, an uploader, or a general image-editing library. It reads a directory, writes variants next to a predictable name, and caches what it already did. Anything that only makes sense inside Poops belongs in Poops. The line is drawn in CONTRIBUTING.md, and it is checked before code is written rather than after.