Product · Web app · Image & PDF tools

PixelGnome

Local-first image & PDF utility · Live tool

Production

Open pixelgnome.com (opens in new tab) All projects

PixelGnome workspace: the Compress recipe selected, a six-page PDF and a batch of 4032 × 3024 photos in one list, each photo showing about 70% saved
01The story

Problem, approach, outcome

Most free image and PDF tools work by uploading your files to someone else’s server. That’s a poor fit for client photos, contracts and drafts, and it’s slower than it needs to be: a modern browser can do this work itself. The hard part is making a local tool feel as easy as the online ones — one place to drop files, clear choices, and results you can trust.

Everything runs client-side. Images are processed with the Canvas API in a background worker, with HEIC, SVG and animated GIF handled on the way in. PDFs run on MuPDF compiled to WebAssembly, loaded only when a PDF arrives and kept in its own worker so the page stays responsive. PDF compression recompresses the embedded images while keeping text selectable and transparency intact.

The bigger decision came mid-build. Once PDFs could be compressed, split and reordered, they felt bolted on: a separate tool inside the tool. So I reframed the product around the task instead of the file type. A PDF now lands in the same workspace as an image and opens in the same kind of full-screen editor; task recipes (Compress, Make email-safe, Convert format) sit at the top of the workflow; and a mixed selection of images and PDFs can be downloaded, zipped or combined into one PDF.

Every release has to pass linting, both production builds, and a contract test that runs each PDF operation against the real engine, so a library update that breaks saving fails the build instead of reaching the site.

PixelGnome is part of my own workflow now: it’s what I use to prepare images for the client sites I build. The source is public on GitHub under AGPL-3.0, so the privacy claim can be checked rather than taken on trust.

02Overview

About PixelGnome

PixelGnome is a file utility that runs entirely in your browser. Drop in photos, screenshots or PDFs, choose what you want done — compress, convert, resize, reorder pages, combine — and download the results. The files never leave your device: there is no upload step and no server to send them to.

I built it for my own client work. Every site I build needs images resized and compressed, and the free online tools that do it ask you to upload the files first, client photos and documents included. I wanted something fast enough for daily use and private by construction, not by promise.

It launched in May 2026 as an image resizer called PixelDrop, was renamed PixelGnome within a week because the first name was already crowded, and grew from there. PDFs now get equal billing with images, the interface is in English and Italian, and the source is public under AGPL-3.0, so anyone can check that nothing is uploaded.

03Features

What it does

  • Drag-and-drop batches of JPEG, PNG, WebP, GIF, HEIC, SVG, AVIF and PDF files
  • Task recipes — Compress, Make email-safe, Convert format — above 14 grouped presets for web, social and email
  • Exact-size crops previewed on each thumbnail before export, plus per-image rotate, flip and crop
  • Convert and compress at original size, with quality control, a target file size and multi-size export
  • PDF editor: reorder, rotate, delete, extract and remove pages, then apply or export
  • PDF compression that keeps text selectable, plus split, PDF to images, and images to PDF
  • Download, ZIP or combine into one PDF across a mixed selection of images and PDFs
  • English and Italian interface, light and dark themes, and a portable single-file offline build
05Stack

How it’s built

  • HTML, CSS and vanilla JavaScript, bundled with Vite — no framework
  • Canvas API and Web Workers for image processing
  • MuPDF compiled to WebAssembly for PDFs, lazy-loaded in its own worker
  • heic-to for HEIC decoding, JSZip for ZIP export
  • A small framework-free translation layer (English and Italian)
  • GitHub Actions build with lint, format and PDF-engine checks; static hosting on IONOS
  • Open source under AGPL-3.0
06Roadmap

Where it’s going

  1. Shipped

    Image toolkit

    Batch resize, convert and compress, with presets, recipes and a per-image editor.

  2. Shipped

    PDFs as first-class files

    Compress, reorder, rotate, split and combine, in the same workspace as images.

  3. Shipped

    English and Italian

    Every screen in either language, including number formats.

  4. Next

    Native Italian review

    A native speaker’s pass over the Italian draft.

  5. Exploring

    Italian search pages

    Localized pages so people searching in Italian can find it.

  6. Exploring

    A native iOS app

    Photos and Share Sheet integration, beyond what a web page can do.

Have a problem a small, focused tool could solve?

This is the kind of work I do at 321 Enterprise. Tell me what slows your team down and we’ll see what we can build.

Start a conversation See all projects