Skip to content

Apps

Photos.sh where you work.

A desktop app, the command line, plugins for WordPress and Drupal, and libraries for the API. Each uses an API key from your organisation’s API keys page and the same credits as the tools in your browser. All are open source.

Apps

Every tool without writing code: on your desktop, or in a terminal and your scripts.

Photos.sh desktop

Linux, macOS and Windows

Process product photos by the folder, or edit one photo tool by tool, with undo and a before and after view. You see what a batch costs before it starts, and originals are never changed.

Download the installer for your system from the latest release: .dmg for macOS, .exe or .msi for Windows, .deb, .rpm or AppImage for Linux.

Command line

Linux, macOS and Windows (Git Bash), amd64 and arm64

Every tool from a terminal and from scripts, on one photo or a whole folder: remove backgrounds, resize, check and fix for a marketplace, read barcodes and labels. One static binary, with no runtime to install.

curl -fsSL https://raw.githubusercontent.com/photos-sh/photos-cli/main/installer.sh | bash

Plugins

The tools inside the site you already run.

WordPress

WordPress 6.5 or later, PHP 8.3 or later

The tools in the media library: remove backgrounds, upscale, fix light and colour, fix a photo for a marketplace and write alt text. Every result is saved as a new image; originals are never overwritten.

Download photos-sh.zip, upload it under Plugins → Add New → Upload Plugin, and enter your API key under Settings → Photos.sh.

Drupal

Drupal 11, PHP 8.3 or later

The tools as image effects in Drupal’s image styles: remove the background, upscale, remove text, fix for a marketplace, crop or expand to a shape, on every image a style makes.

composer require drupal/photos_sh

API libraries

The API in your own language: every tool as a method, typed options and results, retries, and batch jobs with signed webhooks.

JavaScript and TypeScript

Node.js 20 or later, ESM

Types for every option and result, and no dependencies: built on fetch, so it runs in Node.js, Deno, Bun, Cloudflare Workers and browsers.

npm install @photos-sh/photos

Python

Python 3.9 or later

Sync and asyncio clients, fully typed, with one dependency (httpx).

pip install photos-sh

Go

Go 1.23 or later

The standard library only. Uploads are streamed from files, bytes or any reader, and every call takes a context.

go get github.com/photos-sh/photos-go

PHP

PHP 8.3 or later

No dependencies. The HTTP layer is one interface, so it runs on curl, Guzzle, wp_remote_request() or your own.

composer require photos-sh/photos