← Back to Glossary
Developer Glossary
Deno logo

Deno

JavaScript Runtime

Deno is what happens when the creator of Node.js gets a decade of hindsight and starts over. It runs TypeScript natively without a compilation step. It has built-in security permissions so scripts cannot access the filesystem or network unless you explicitly allow it. The standard library is vetted and maintained by the core team. I use Deno for edge functions and serverless deployments where cold start times matter and the security model is a genuine advantage, not just a talking point.


How Deno Changed Everything

In June 2018, Ryan Dahl, the original creator of Node.js, gave a talk titled "10 Things I Regret About Node.js" at JSConf EU. It was one of those rare moments in tech where a creator publicly acknowledged the design mistakes in their own widely-adopted tool. Dahl regretted not sticking with Promises, regretted the way Node resolved modules, regretted the centralized npm registry, and regretted that Node had unrestricted access to the filesystem and network by default. Then he revealed Deno, a brand new runtime built in Rust that addressed every single regret. The name itself is an anagram of "Node." Deno 1.0 launched in May 2020. By 2022, the Deno Company had raised $21 million in funding, and Deno Deploy launched as a globally distributed edge runtime. Deno 2.0, released in October 2024, added backward compatibility with npm packages, removing the biggest barrier to adoption. That was the turning point, you could now use Deno without giving up the npm ecosystem.


One Thing Most People Miss

The security model is the most underappreciated feature of Deno, and it is the reason I reach for it in certain client projects. By default, a Deno script has zero permissions. It cannot read files, write files, access environment variables, make network requests, or spawn subprocesses. You grant permissions explicitly with flags like --allow-read, --allow-net, or --allow-env. This is not just theoretical security hygiene. In a world where supply chain attacks through npm packages are a real and growing threat, where a single compromised dependency can exfiltrate environment variables or cryptocurrency keys, Deno's permission model provides genuine protection. If a dependency tries to access the network and you only granted file read permission, it fails silently. For client projects that handle sensitive data, this default-deny approach is something I can point to in a security review as a concrete architectural decision, not just a best practice in a README.

Visit: deno.com

Looking for a secure, modern runtime for your next project?

or hi@mikelatimer.ai