I Built a Batch Image Processor with Zero Backend — Here's How

I Built a Batch Image Processor with Zero Backend — Here's How

2 2 8
calendar_today agoschedule4 min read

title: "I Built a Batch Image Processor with Zero Backend — Here's How"

canonical_url: https://imagepipeline.art

I process between 50 and 100 images every month. Portfolio pieces for Behance. Pinterest pins in three aspect ratios. Client deliverables that need to be web-ready, print-ready, and social-ready — all from the same source file.

For years I had three options. All of them were bad.

The Problem

Photoshop Actions worked once. Then a client sent vertical covers. The Action cropped them wrong. Then I needed PNGs for one project and WebPs for another. I ended up with twelve duplicated Actions, each with a slightly different suffix, and a folder full of files named final_v3_actual_FINAL.jpg.

ImageMagick scripts were fast. But three months later I opened a script and had no idea what ^ meant or why I chose center gravity. I needed to add a watermark. I needed to skip images smaller than 800px. I needed to see if the crop looked right before processing a hundred files.

Cloud converters were convenient. They also required me to upload client artwork — sometimes unpublished book covers under NDA — to someone else's server. "Theoretical risk" is not a phrase I want in the same sentence as "client contract."

The Realization

I didn't need a faster Photoshop. I didn't need a simpler ImageMagick. I needed a tool that combined three things:

  1. Privacy. My files stay on my machine.
  2. Visual feedback. I see what the pipeline does before I run it.
  3. Zero setup. I open a link and start working.

Nothing I tried offered all three. So I built it.

What I Built

Image Pipeline is a node-based batch image processor that runs entirely in your browser.

You drag images in. You build a pipeline by connecting nodes: Load → Resize → Crop → Compress → Export. You click Process. Everything happens via Canvas API in your browser tab. Images never touch a server. You download a ZIP.

No signup. No installation. No credit card to "try it free."

The Technical Stack

When I say "zero backend for image processing," I mean it. The entire image manipulation layer is client-side:

  • Image decoding: Native FileReader + Image constructor
  • Manipulation: HTML5 Canvas API (drawImage, toBlob, getImageData)
  • Compression: Canvas toBlob with quality parameter
  • ZIP generation: JSZip, entirely client-side
  • Hosting: Static HTML/JS on Vercel

The "backend" that exists is minimal: 16 Vercel Edge Functions for rate limiting, payment verification (USDT on Tron), and email receipts. None of them touch your images.

Why No WebAssembly?

I intentionally avoided WebAssembly and heavy libraries. The app loads fast, works on old devices, and doesn't require users to download 5MB of WASM binaries just to resize a JPEG.

Why React Flow?

The node editor is built with @xyflow/react. It gives me drag-and-drop nodes, connection validation, and a clean API — without building a canvas renderer from scratch. The visual pipeline is the core UX, not a gimmick.

The Node System

Currently 14 node types:

Node What It Does
Load Accepts input images
Resize Changes dimensions, fit modes, algorithms
Crop Crops to region with position presets
Compress Reduces file size with quality slider
Format Converts between JPG, PNG, WebP
Watermark Adds text overlay
Denoise Reduces image noise
Brightness Adjusts luminance
Contrast Adjusts tonal range
Exposure Adjusts light intensity
Saturation Adjusts color intensity
Emotion Filter Applies mood-based color grading (Joy, Sadness, Calm, Tension)
Rename Batch renaming with patterns
Export Output settings, ZIP generation

Each node has a live preview. Click a node, see before/after. Adjust settings, see changes in real time. The preview processes only a thumbnail (200px), so it's instant — the full batch runs only when you hit Process.

The Monetization Model

I didn't want subscriptions. As a user, I hate discovering a tool, liking it, then hitting a paywall that demands my credit card every month.

  • Free: 10 files/day, all nodes, all features
  • Pro ($10 one-time): Unlimited files, unlimited nodes
  • Lifetime ($30 one-time): Pro forever

Payments in USDT (TRC-20). No Stripe, no PayPal, no recurring charges. Verification happens via TronScan API with a Trongrid fallback. If the API is down, the client falls back to localStorage counters — the app never breaks.

What I Learned

Shipping beats perfection. I launched with 9 nodes, a basic landing page, and no onboarding. The first user on AlternativeTo gave me 2 stars and a list of complaints: "missing brightness, contrast, exposure," "preview is tiny," "multiple export broken."

Five days later I shipped Brightness, Contrast, Exposure, fixed the preview (300px + compare modal), fixed Multiple Export, and added Emotion Filter + Saturation as bonuses. The next review was 5 stars.

Users will tell you what to build. I never planned an Emotion Filter node. Someone asked about "applying mood to images" in a comment. I researched color matrices, built 5 emotion presets, and shipped it in two days.

Privacy is a feature, not a footnote. Every third comment mentions "images never leave the device" as the primary reason to try Image Pipeline. In a world of cloud-everything, client-side processing is a differentiator.

Try It

If you batch-process images regularly and none of the existing tools fit your workflow cleanly:

👉 imagepipeline.art

Free tier: 10 files per day. One-time purchase for unlimited.

If you're a developer and prefer CLI — honestly, stick with ImageMagick. It's unbeatable for automation. This tool is for everyone else who got tired of the trade-offs.


Maxim Mitenkov is a book cover illustrator and indie developer. He built Image Pipeline because he was tired of uploading client artwork to cloud services just to resize a batch of images.

11 Comments

1 vote
1 vote
1
1 vote
0
1
2 votes
1
1
2
0
🔥 Join developers growing publicly
Share your knowledge, build in public, and grow your developer presence with a global community.

More Posts

How I Built a React Portfolio in 7 Days That Landed ₹1.2L in Freelance Work

Dharanidharan - Feb 9

I’m a Senior Dev and I’ve Forgotten How to Think Without a Prompt

Karol Modelski - Mar 19

The Zero-Net-Loss Fleet & The Mercenary Squad: A Live AI Economy

DEVPlank - Aug 4

Europe Just Dropped the Hammer on AI: A Wake-Up Call?

PrabashanaDev - Jul 15

5 Web Dev Pitfalls That Are Silently Killing Your Projects (With Real Fixes)

Dharanidharan - Mar 3
chevron_left
308 Points12 Badges
Беларусьimagepipeline.art
1Posts
6Comments
5Connections
I'm a book cover illustrator and indie developer. Built Image Pipeline because I was tired of upload... Show more

Related Jobs

View all jobs →

Commenters (This Week)

3 comments
1 comment
1 comment

Contribute meaningful comments to climb the leaderboard and earn badges!