Skip to main content

Privacy-first local image processing utility

Project description

Imgsh

Privacy-first local image utility for resize, convert, batch processing, and optional OCR.

Install (Published Package)

pipx install "imgsh[gui,ocr]"

Or with pip:

pip install "imgsh[gui,ocr]"

Install (Local Checkout with pipx)

pipx install "$HOME/Desktop/projects/imgsh[gui,ocr]"

pipx install <path> installs only base dependencies unless extras are included in the path spec.

Development Setup

poetry install --all-extras

Commands

imgsh resize input.jpg --width 1200 --fit contain
imgsh crop input.jpg --x 120 --y 80 --width 640 --height 400
imgsh batch-resize ./images --width 1200 --recursive --out ./processed
imgsh convert input.png --format webp
imgsh extract-text input.jpg --engine textract --ocr-format txt
imgsh gui

Help

imgsh -h
imgsh resize -h
imgsh crop -h

GUI Crop

  • Open an image in imgsh gui.
  • Enable Crop, then drag on the preview to create a selection.
  • Fine-tune the crop using Left X / Top Y / Width / Height (in original image pixels).
  • Click Export to apply crop (and optional resize settings).

Build Distribution Artifacts

poetry check
rm -rf dist
poetry build
pipx run twine check dist/*

Publish

# bump patch version, commit, and create tag (for example v0.1.1)
poetry run publish

# bump minor instead
poetry run publish --bump minor

# set an explicit version
poetry run publish --version 0.2.0

# push commit and tag to origin (triggers tag-based publish workflow)
poetry run publish --push

A GitHub Actions workflow is included at .github/workflows/publish.yml. Set PYPI_API_TOKEN in repository secrets, then push a tag like v0.1.1 to publish automatically.

Notes

  • OCR extra is pinned to textract==1.6.3 for compatibility with current packaging tooling.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

imgsh-0.1.4.tar.gz (15.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

imgsh-0.1.4-py3-none-any.whl (24.3 kB view details)

Uploaded Python 3

File details

Details for the file imgsh-0.1.4.tar.gz.

File metadata

  • Download URL: imgsh-0.1.4.tar.gz
  • Upload date:
  • Size: 15.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imgsh-0.1.4.tar.gz
Algorithm Hash digest
SHA256 9a792e522237ebd839f33171d51ba747a0c7676babb256fb7a442f4e277129b4
MD5 67230e829ce2769e1615dd709c9ed0b8
BLAKE2b-256 8c33572bd287d198a33fb1fe2d5303cf2422cd8e535b53697cfdd9470dff95cc

See more details on using hashes here.

File details

Details for the file imgsh-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: imgsh-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 24.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imgsh-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 2f21499bfa4f64e3864d60a62de084a31d38f45427c940968993a828bc5ccb53
MD5 ca8e228242baac19b8f774f0d6960332
BLAKE2b-256 18ae5cd55379bfbc4e18a8569a082db0c52137b29af5b342ee5088cd10f25908

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page