Deno: Ryan Dahl's Fix for Node.js
It’s 2018, and Ryan Dahl has just given a famous talk: "10 Things I Regret About Node.js." His answer to those regrets is Deno, a brand new runtime built on V8, Rust, and Tokio.
Deno isn't just a faster Node; it's a fundamental rethink of how a server-side JS runtime should work.
Security by Default
In Node, any script can read your ~/.ssh folder or access the network. Deno is sandboxed. You have to explicitly grant permissions.
# This will fail in Deno!
deno run my_script.ts
# This is required
deno run --allow-net --allow-read my_script.ts
No more package.json or node_modules
Deno does away with the complex module resolution of Node. It uses standard ES Modules and imports files by URL, just like the browser.
// No npm install! Just import from a URL.
import { serve } from "https://deno.land/std@0.0.1/http/server.ts";
const s = serve({ port: 8000 });
console.log("http://localhost:8000/");
for await (const req of s) {
req.respond({ body: "Hello World\\n" });
}
TypeScript Out of the Box
Deno has a built-in TypeScript compiler. You don't need tsconfig.json, webpack, or babel just to run a simple TS file.
Built with Rust
By leveraging Rust and the tokio event loop, Deno aims to be more robust and performant than the C++ internals of Node.
In 2018, Deno feels like a breath of fresh air. It’s a runtime that respects the last 10 years of web evolution instead of being stuck in 2009.
Aunimeda builds production-grade backend systems - APIs, microservices, real-time applications, and system integrations.
Contact us for backend engineering services. See also: Custom Software Development, Web Development