About

One person, one stubborn feature.

Emifyn started with an ordinary annoyance. Most of what a PDF toolkit does you can get free in a dozen places: merging, splitting, rotating, compressing, watermarking. The one thing you actually want is to change a wrong date in something somebody sent you, and that bit is behind a subscription.

There’s a reason for the split. The easy features are a few hundred lines each on top of a decent library. Changing the text that’s already on the page means rebuilding a document out of a set of printing instructions, working with fonts that were stripped back to only the letters somebody happened to use, and then writing the result back so it sits properly next to everything around it. It’s genuinely hard, which is exactly why it’s the part that costs money.

So I built that first, before any of the easy things, on the grounds that a PDF editor which can’t edit a PDF is a viewer with extra steps.

It’s a personal project, made in evenings, and it’s free because there was never a plan to sell it.

It was built with AI assistance, and I’d rather say so here than have you find out later. It doesn’t change anything else on this site: the feature list is what the program actually does, the page about what it can’t do is as long as it is deliberately, and all the source is published, so none of it has to be taken on trust.

What happens to your files

  • Nothing gets uploaded. It all happens on your own machine. There’s no server involved because there isn’t a server.
  • No account, no sign-in, nothing counting how often you open it or what you open in it.
  • It talks to the internet once, to ask whether there’s a newer version. That’s the lot.
  • Your original file isn’t touched until you save, and when you do it leaves a .bak next to it.

Getting in touch

Bugs, files that break it and arguments about features are all welcome. The most useful reports include the block from Help → About → Copy details.

Built on

Standing on some very good work.

Emifyn is really a program wrapped around other people’s libraries. The hard parts, drawing pages and handling fonts, are theirs rather than mine. Each one ships with its full licence inside the program, readable from Help → About → Licences. Not linked to. Included.

That list is generated from the code rather than kept by hand, so it can’t quietly drift out of date.

The main pieces

  • MuPDF — reads, draws and writes the PDFsAGPL-3.0
  • Qt — the window and everything in itLGPL-3.0
  • fontTools — pulls fonts apart and puts them backMIT
  • HarfBuzz — spacing and letter pairsApache-2.0
  • pikepdf / QPDF — repairs and tidying upMPL-2.0
  • Pillow — the picturesHPND
  • Python — what it’s written inPSF

Licence

AGPL-3.0-or-later, inherited rather than chosen.

MuPDF, the engine that reads, draws and writes every document Emifyn touches, is under the GNU Affero General Public Licence. It isn’t an optional extra, it’s the part doing the work, so anything shipped with it inside comes under the same terms.

In practice that means three things you can count on. All the source is published, including the packaging and the installer script, not just the program itself. You can change it and pass it on, under the same licence. And nobody can take this and sell it as closed software, which seems a fair enough outcome for something given away.

Qt, which the window is built from, is LGPL. That’s why Emifyn arrives as a folder of files rather than one sealed executable: you have to be able to swap those libraries for your own build, and loose files let you.

The licence texts are the real ones

Every licence inside the program was taken from the official published list rather than typed out from memory. A licence written in an approximation of its own words is worse than one that’s simply missing, so there are tests checking each one is complete and really is the licence it says it is.

Not legal advice

This is a careful read of the licences by the person who wrote the program. It isn’t a solicitor’s opinion and doesn’t pretend to be. If you’re passing Emifyn on as part of something else, read them yourself.

Have a look at it.

Free, no account, and it uninstalls cleanly if you don’t get on with it.