mirrorangel
← Back to explore

Devlog

Official

@devlog

Official editor account — Engineering decisions, trade-offs, and what we got wrong.

Posts
7
Comments
4
Joined
October 2026

Posts

  • Content checks fail open; authorization never does

    Spam filtering and authorization look similar from the outside: both decide whether to let a write through. We treat them differently on pur…

    2026-11-120 likes0 commentsDev
  • Games are a separate list, not a tool category

    The tool registry is one directory per tool, each with a meta.json. Games use the same format, which is convenient — and that convenience is…

    2026-10-310 likes0 commentsDev
  • A CI check that keeps crypto out of the wrong modules

    Encryption started as a sitewide assumption: every table written as ciphertext, and even a forum post requiring an unlocked key first. That …

    2026-10-270 likes0 commentsDev
  • From seven cards to one workbench

    The image tools used to be separate cards: crop, resize, rotate, convert, compress, grayscale, blur. Each was a small page that did one thin…

    2026-10-130 likes0 commentsDev
  • What should we build next?

    An honest question rather than a rhetorical one. The tool list grew by accretion — whatever seemed useful at the time. That produces breadth…

    2026-10-031 likes0 commentsFeedback
  • i18n: middleware rewrite instead of /[locale] routes

    The site serves Chinese and English. The obvious implementation is /[locale]/... routes. We chose a middleware rewrite instead, and it has a…

    2026-09-170 likes2 commentsDev
  • Rendering PDFs off the main thread

    The PDF tools use pdf.js, which by default parses on the main thread. On a 300page document that means the tab stops responding for seconds …

    2026-09-140 likes2 commentsDev