- Deno was created by Ryan Dahl, the creator of Node.js.
- Deno is secure by default. Without permission, it cannot access files, network, or the environment.
- Deno has TypeScript built-in with no external configuration needed.
- External packages are pulled in via urls (much like Go)
- Deno is an anagram for Node and it's pronounced Deeno (long e).
Deno.js is arriving its 1.0.0. release date on May 13th, 2020, so I decided I collate the top information about the project.
In 2018 Ryan Dahl did a talk at JSConf EU where he talked about his top 10 regrets with Node.js. His talk was excellent and you can watch it below.
A lot has happened since Ryan's talk at JSCONF 2018. Many people have joined the project, it already has 48k stars on Github, and the project is beginning to raise a lot of attention in the community prior to its official 1.0.0. release on May 13th.
Time will only tell whether Deno will continue to grow but if the initial reaction is anything to go by, it's very positive.
No more wrapper async functions. Just use top-level await syntax
const data = await fetch('someapi/data');
You can use import and you don't need to NPM install all your packages. Much like GoLang, you can import from URLs.
import stuff from 'https://package/url'
No need to set up TypeScript. It's all built-in. Just start writing your code!
Deno has restricted access to files, the network, and the environment. This is a big difference to Node.js which has access immediately to everything.
Deno's API is meant to be compatible with the web.
Deno has support for wasm binaries.
There's more planned with Web Assembly so keep an eye on the project.
Videos of Conference talks by Deno creator Ryan Dahl and fellow project contributors Kitson Kelly and Bert Belder.
Jeff from Fireship does a short informative rundown of Deno (with super cool graphics).
Ryan Dahl did an interview with the organizers of the HolyJS Conference. Read it here.
Deno is an exciting project that you should definitely check out!
I would like to be clear that this article isn't bashing on Node.js. Node.js is amazing, I love using it and will continue to. It's just nice to have a new and improved version out there for the future.
Let me know what you think of Deno. Are you excited, surprised, or horrified? Let me know in the comments!