Blog.
Notes from the team.
How we build a European cloud: engineering notes, product decisions and what ships.
Why our object storage is 4+2, one fragment per server
enum Object Storage cuts every object into four data and two parity fragments and puts each one on a different server. What that survives, what it doesn't, and why we picked it over three copies.
Read moreHow we handled today's PHP remote code execution CVEs
PHP shipped fixes today for two unauthenticated remote code execution bugs. Here is what we did: tell every customer running PHP on enum, take pages offline behind static fallbacks, and build patched images before official ones existed.
Read moreWe didn't build for agents. We built a good CLI.
enum has no MCP server and no agent SDK yet. Coding agents use it anyway, because the things that make a CLI pleasant for a developer are the same things an agent needs. What we built into enumctl, and why.
Read moreWe built DNS. The hard part wasn't DNS.
Anyone can create a DNS zone for a domain they don't own. The four ways providers handle that gap, why three of them let a stranger block or take over your domain, and how enum verifies ownership through the parent's delegation.
Read moreFree DNS, forever. For a better European internet
Host DNS zones on enum at no cost, forever. Zones, records, BIND import/export, DNSSEC, and TLS certificates, on nameservers we run in the EU. For a better European internet.
Read moreHow to ransomware-proof S3 backups with Object Lock
S3 Object Lock turns your bucket into write-once storage. Even with valid credentials, ransomware can't delete what's locked. Here's how it works on enum.
Read more