Skip to main content
bmux converts and compresses images without uploading them anywhere. The browser app does the work in your own tab; the CLI does the same job from a script, with no server involved either way.
The CLI uses sharp, so unlike the browser it can write every supported format and can keep EXIF metadata when you ask it to.

Quickstart

1

Install

See Installation — the CLI is built from source for now.
2

Convert something

3

Check what you got

The three commands

convert

Turn specific files into another format, with control over quality and size.

optimize

Run a whole directory through a preset without picking settings yourself.

inspect

Report what a file actually is, read from its contents rather than its name.

Things that hold true everywhere

  • Originals are never overwritten. Colliding output names get a numeric suffix unless you choose otherwise with --collision.
  • Metadata is stripped by default. EXIF/XMP is removed unless you pass --preserve-metadata. Photos are still auto-rotated upright first.
  • A failed file doesn’t stop the rest. The batch finishes, the failures are listed, and the exit code is non-zero.
  • Nothing is uploaded. There is no server and no account. --dry-run will show you exactly what would be written before anything is.

Colour output

Colour is used for status only — green for a saving, amber for a file that grew, red for a failure. It turns itself off when output isn’t a terminal, and it honours NO_COLOR: