git404hub

what is photu fr?

u84u/photu — explained in plain English

Analysis updated 2026-07-24

4TypeScriptAudience · developerComplexity · 2/5Setup · easy

tl;dr

A command-line tool that lets you resize, crop, blur, and convert batches of images by chaining simple pipe commands together. It processes everything quickly and with low memory usage.

vibe map

mindmap
  root((repo))
    What it does
      Batch image processing
      Shell pipe pipelines
      Fast and memory efficient
    Tech stack
      TypeScript
      libvips
      CLI
    Use cases
      Resize many images
      Convert image formats
      Apply filters in bulk
    Audience
      Developers
      Content creators
      Ops teams

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Resize a folder of photos to thumbnails in one command.

VIBE 2

Convert images between formats like JPEG, PNG, and WebP.

VIBE 3

Apply blur or grayscale filters to batches of images.

VIBE 4

Download and process images directly from web URLs.

what's the stack?

TypeScriptlibvipsCLI

how it stacks up fr

u84u/photu0labs-in/vision-linkadarsh-me/image-sdk
Stars444
LanguageTypeScriptTypeScriptTypeScript
Setup difficultyeasymoderateeasy
Complexity2/53/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · easy time til it works · 5min

in plain english

photu is a command-line tool for batch image processing. It lets you build image manipulation pipelines using ordinary shell pipes, where each step chains into the next. The tool is built on top of libvips, a fast image processing library, and it runs the entire pipeline as a single operation at the end. This approach makes it quick and memory-efficient compared to alternatives like ImageMagick, whose command syntax can be difficult to remember correctly. The way photu works is clever. The pipe between stages does not actually carry image data. Instead, each stage appends its operation to a small JSON plan and passes that plan along. The final write stage hands the whole plan to libvips in one go. This means you can chain as many stages as you like, and each image is still only decoded and encoded once. You can inspect the plan at any point by piping into photu explain. Because the plan is plain text, pipelines work the same way in bash, zsh, PowerShell, and cmd. photu supports a range of commands including read, resize, crop, rotate, flip, mirror, grayscale, adjust, blur, sharpen, overlay, pad, and write. You can read from local files or HTTP URLs, mix them freely, and use output templates with placeholders like the source filename or index. Supported formats include JPEG, PNG, WebP, GIF, TIFF, and AVIF. Animated GIF, WebP, and TIFF files are processed frame by frame, so every stage applies correctly to each frame. The tool tries to fail before touching any pixels. It catches bad arguments, empty globs, malformed URLs, filename collisions, and attempts to overwrite an input file up front. Errors from dead links or corrupt files surface at write time and fail the whole batch. The author acknowledges photu is a libvips wrapper, noting that what it adds is the interface, globs, URL sources, output templates, and a simple install. The full README is longer than what was shown.

prompts (copy fr)

prompt 1
Write a photu command that reads all JPEGs in a folder, resizes them to 800px wide, converts them to WebP, and saves them to an output folder.
prompt 2
Create a photu pipeline that downloads an image from a URL, applies a grayscale filter, adds padding, and writes it as a PNG file.
prompt 3
Explain how to use photu explain to inspect a multi-step image processing pipeline before any images are actually modified.
prompt 4
Build a photu command that reads an animated GIF, flips it horizontally, and writes it back out as an animated WebP.

Frequently asked questions

what is photu fr?

A command-line tool that lets you resize, crop, blur, and convert batches of images by chaining simple pipe commands together. It processes everything quickly and with low memory usage.

What language is photu written in?

Mainly TypeScript. The stack also includes TypeScript, libvips, CLI.

How hard is photu to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is photu for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.