ottercraft.dev

About

Small tools that leave your files alone.

ottercraft.dev is a side project. I make small web utilities that do their work in your browser, so the files you open don't get sent anywhere.

Why

A lot of ordinary tasks have turned into "upload your file". Merging two PDFs. Rotating a scanned page. Getting a photo from my phone onto my laptop. Each of these now seems to require a website with a sign-up form, a file-size limit and a paid tier, and my documents end up on a server I know nothing about.

None of that is necessary. Browsers have been able to read, render and rewrite files locally for years. A merged PDF doesn't need to go through anyone's server. Neither does a photo travelling two metres across my desk.

So these tools work the other way round. The page you open is the whole program. It runs on your device, uses your device's memory, and saves the result back to your device. There is no account because there is nothing for an account to hold.

What I try to stick to

The tools right now

I add a tool when I need one myself and it can be done entirely in the browser.

What it's built with

TypeScript and React, styled with Tailwind, bundled with Vite. OtterPDF draws page thumbnails with Mozilla's pdf.js in a Web Worker and writes output files with pdf-lib. OtterDrop uses WebRTC data channels, the same encrypted peer-to-peer standard that browser video calls use, plus a very small signalling service on Cloudflare Workers that passes the connection handshake between devices and nothing else. The pages themselves are static files on Cloudflare's network.

Who

Me, a software engineer, evenings and weekends. It's not a company and there are no investors. If something is broken, confusing or missing, telling me is the fastest way to get it fixed: contact.