Deno is a secure, modern JavaScript and TypeScript runtime. It is created by the same developer who created Node.js, Ryan Dahl. Deno is built on the same V8 JavaScript engine as Node.js, but it provides an improved security model, better performance, and a more robust standard library. Deno also supports TypeScript, allowing developers to write their code in a type-safe language, which can then be compiled down to JavaScript for execution. Deno is designed to be a lightweight, secure, and efficient way to develop web applications.
Javascript Should Come With Batteries
React Day Berlin 2023React Day Berlin 2023
30 min
Javascript Should Come With Batteries
Watch video: Javascript Should Come With Batteries
JavaScript Should Come With Batteries: Deno is a next-generation JavaScript runtime that addresses the lack of built-in tooling in JavaScript. It provides a secure and simple way to develop applications with built-in testing, linting, formatting, and a language server for VS Code. Deno is compatible with Node.js and NPM, supports web standard APIs, and allows code portability between frontend and server. It also offers features like a built-in database, a key-value store, and transparent monetization with Deno Deploy.
Node.js Compatibility in Deno
Node Congress 2022Node Congress 2022
34 min
Node.js Compatibility in Deno
Deno aims to provide Node.js compatibility to make migration smoother and easier. While Deno can run apps and libraries offered for Node.js, not all are supported yet. There are trade-offs to consider, such as incompatible APIs and a less ideal developer experience. Deno is working on improving compatibility and the transition process. Efforts include porting Node.js modules, exploring a superset approach, and transparent package installation from npm.
Building Optimal Servers with Deno: A Modern Approach to Serverless Architecture
Building Optimal Servers with Deno: A Modern Approach to Serverless Architecture
Article
Deno's focus on forced optimization for building optimal servers.The significance of non-blocking IO in server development.Integration of Deno Deploy for serverless edge functions.Built-in compatibility with NPM and JavaScript ecosystem.Introduction of Deno KV for advanced key-value data storage.The evolution of server development has taken significant strides in recent years, and Deno is at the forefront of this transformation. Deno's approach to forced optimization aims to equip developers with tools to build optimal servers efficiently. The goal is to expand on the principles that Node.js introduced, focusing on non-blocking IO to ensure seamless user experiences across the globe.When Node.js first emerged, the idea of asynchronous IO was groundbreaking. Developers were pushed to adopt this model to create more efficient servers. Over a decade later, asynchronous IO has become the norm, yet building optimal servers now requires more than just this feature. With the complexity of cloud configurations, database selections, and global data replication, developers face challenges that demand holistic solutions. Deno seeks to address these challenges by providing a modern platform that focuses on accessibility and performance.Deno emphasizes accessibility by leveraging JavaScript, the most widely used programming language. While JavaScript may not be the perfect language, its accessibility makes it an ideal choice for reaching a broad developer base. In striving for performance, Deno aims to achieve excellent latency regardless of the user's location, ensuring a consistent experience whether accessing the system from Japan or New York City. This commitment to performance is further emphasized by the system's serverless architecture, which allows it to scale dynamically as needed. This feature is increasingly crucial in today's cloud-centric world.A core component of Deno's offering is Deno Deploy, a serverless platform that extends Deno's capabilities to the cloud. It runs on a global network of data centers, enabling developers to deploy applications worldwide with ease. Deno Deploy's serverless edge functions power platforms like Netlify Edge Functions and Superbase Edge Functions, demonstrating its versatility and effectiveness. With Deno Deploy, applications can achieve strong consistency and geo-replication, backed by FoundationDB, a scalable database used by major services like iCloud and Snowflake.One of the standout features of Deno is its built-in support for the NPM ecosystem. This integration allows developers to access a vast array of modules without the need for additional configurations. Deno's approach ensures that developers can leverage NPM's extensive library while maintaining the security constraints that Deno is known for. This compatibility is crucial as it bridges the gap between Node.js and Deno, allowing developers to transition smoothly between the two platforms.Deno also introduces a powerful feature in the form of Deno KV, an advanced key-value database built directly into the platform. Deno KV supports typical key-value operations and atomic transactions, making it suitable for a range of applications. With Deno KV, developers can store JavaScript objects with ease, leveraging its built-in support and SQLite backend. This feature is currently in development and promises to be a core part of Deno's API, further simplifying the development process for application servers.Security is paramount in Deno's architecture. By default, Deno enforces strict permissions, preventing unauthorized access to the system. This approach aligns with the platform's goal of reducing boilerplate and making server development as seamless as possible. Developers can bypass these prompts by explicitly allowing permissions, ensuring that security is always front and center.Deno's commitment to optimization and accessibility makes it a compelling choice for modern server development. By building on the foundations laid by Node.js, Deno offers a platform that addresses the challenges of today's cloud-driven world. Whether it's through its serverless architecture, compatibility with NPM, or advanced database features, Deno equips developers with the tools they need to build efficient, scalable servers that meet the demands of global users.
The State of Node Compatibility in Deno
Node Congress 2024Node Congress 2024
23 min
The State of Node Compatibility in Deno
David Sherret
Kevin Whinnery
2 authors
Today's Talk introduces Deno, a next-generation JavaScript runtime with native TypeScript support and improved server-side development features. Deno offers granular permissions for sensitive APIs and includes built-in tools like a test framework and linter. The Talk demonstrates how to use Deno with an existing Node.js project, showcasing compatibility and import features. It also discusses upcoming features like bringing Node modules to Deno and handling file extensions. Overall, Deno provides a seamless transition for Node developers and offers a range of powerful tools and features.
Roll you own JavaScript runtime
Node Congress 2023Node Congress 2023
21 min
Roll you own JavaScript runtime
This Talk introduces Deno, a custom JavaScript runtime similar to Node.js, and discusses the benefits of using a custom runtime. It explores the process of building a custom runtime with Deno in Rust, including the integration with Cargo and the ability to mix and match crates and APIs. The Talk also covers the implementation of the setTimeout function in both Run.js and Runtime.js, and provides examples of how to fix errors and implement additional functions. Overall, the Talk highlights the flexibility and possibilities of creating custom runtimes with Deno.
Fresh: a new full stack web framework for Deno
Node Congress 2023Node Congress 2023
24 min
Fresh: a new full stack web framework for Deno
Today's Talk introduces Fresh, a full-stack web framework for Deno, and covers its features, such as static files, routes, and data-fetching. It also discusses middleware, error pages, and styling options. The Talk explains the Islands architecture used by Fresh to enable client interactivity. The demo showcases the use of hybrid routes and islands components, and resources for Fresh, Deno, Preact, TypeScript, and web standards are provided.
Bun, Deno, Node.js? Recreating a JavaScript runtime from Scratch - Understand magic behind Node.js
Node Congress 2023Node Congress 2023
29 min
Bun, Deno, Node.js? Recreating a JavaScript runtime from Scratch - Understand magic behind Node.js
The Talk explores the magic behind Node.js and delves into its components, including V8, libuv, and the C++ bridge. It discusses the workflow and execution process, the use of NodeMod, and the understanding of console functions. The Talk also covers Node.js functions and scheduling, the introduction of runtimes, and the collaboration between JavaScript runtimes. It concludes with insights on content production, the choice of Node.js, and the inspiration behind it.
Deno 2.0
Node Congress 2023Node Congress 2023
36 min
Deno 2.0
Top Content
The Talk discusses forced optimization with Node and Deno, with Deno aiming to pursue the same goals in a more expansive and modern way. Deno has built-in support for NPM and enforces security constraints. It also has a key-value database called Deno KV, which will be a core part of the Deno 2 API. Deno Deploy is a serverless Edge Functions platform powered by FoundationDB, optimized for fast reading and ideal for building eCommerce sites or application servers at the edge. Deno 2.0 is coming soon with more features under development.
Instant websites using Fresh and Deno on the Edge
React Advanced Conference 2022React Advanced Conference 2022
33 min
Instant websites using Fresh and Deno on the Edge
The Talk discusses the concept of instant websites, aiming to minimize the time between user interaction and unblocking the user. It emphasizes prioritizing the loading of primary content and delaying the loading of secondary content to improve page loading times. Server-side rendering is highlighted as a faster alternative to client-side rendering, reducing network round trips and improving rendering times. The concept of island architecture is introduced, where only the JavaScript needed for interactive components is shipped to the client. The Fresh web framework is presented as a speed-focused framework for Deno, offering automatic CSS inlining and using Preact for client-side interactivity.
An Introduction to Deno for Node.js Developers
JSNation 2022JSNation 2022
22 min
An Introduction to Deno for Node.js Developers
This Talk provides an introduction to Deno for Node.js developers, highlighting the differences in architecture and dependencies between the two runtimes. It discusses the Deno CLI and integrated toolchain, the Deno standard library and dependency management, as well as the Deno runtime and its core features. The Talk also covers Deno's permission system, its focus on web platform compatibility, and its support for TypeScript. Overall, it provides a comprehensive overview of Deno and its advantages over Node.js.
Writing universal modules for Deno, Node, and the browser
TypeScript Congress 2022TypeScript Congress 2022
25 min
Writing universal modules for Deno, Node, and the browser
Deno is a modern runtime for TypeScript and JavaScript that runs out of the box and is secure by default. The Talk covers building a greeting message library with Deno, compiling Deno libraries for Node consumers, setting up the editor and writing code, writing tests and running them with dnotest, code formatting, linting, and publishing, publishing to NPM and running tests, and building and publishing the NPM package. The speaker emphasizes the ease of use and integration of Deno's tooling system.
Experimenting with Deno for Easier Kubernetes Deployments
DevOps.js Conf 2022DevOps.js Conf 2022
31 min
Experimenting with Deno for Easier Kubernetes Deployments
The Talk discusses using Dino and TypeScript to simplify writing and managing Kubernetes YAML configurations. It explores the challenges of working with large YAML files and introduces a unique solution. The Talk also highlights the features and benefits of Deno, such as its secure runtime and powerful typing capabilities. It demonstrates how Deno can be used to create and modify Kubernetes objects, and emphasizes the advantages of using a general-purpose language for configuration. The Talk concludes by discussing the potential applications of this approach beyond Kubernetes deployments.
Writing Universal Modules for Deno, Node and the Browser
Node Congress 2022Node Congress 2022
57 min
Writing Universal Modules for Deno, Node and the Browser
Workshop
Luca Casonato
Luca Casonato
This workshop will walk you through writing a module in TypeScript that can be consumed users of Deno, Node and the browsers. I will explain how to set up formatting, linting and testing in Deno, and then how to publish your module to deno.land/x and npm. We’ll start out with a quick introduction to what Deno is.
The Future of JavaScript Runtimes
Node Congress 2022Node Congress 2022
34 min
The Future of JavaScript Runtimes
Today's Talk explores the future of JavaScript runtimes, their evolution, and impact on software development. It discusses the historical trends of JavaScript, the adoption of new tools and libraries, and the convergence of Node and Deno. The emergence of isolate clouds and their potential to replace traditional VMs and containers is also highlighted. Additionally, the talk touches on the possibilities of JavaScript in exotic use cases, its impact on machine learning, and the potential for TypeScript to become the de facto language for JavaScript development.
Aleph.js - Build your React app in Deno
React Finland 2021React Finland 2021
26 min
Aleph.js - Build your React app in Deno
A demo on Aleph.js about good development experience and deno runtime.
Building a Hyper Fast Web Server with Deno
JSNation Live 2021JSNation Live 2021
156 min
Building a Hyper Fast Web Server with Deno
WorkshopFree
Matt Landers
Will Johnston
2 authors
Deno 1.9 introduced a new web server API that takes advantage of Hyper, a fast and correct HTTP implementation for Rust. Using this API instead of the std/http implementation increases performance and provides support for HTTP2. In this workshop, learn how to create a web server utilizing Hyper under the hood and boost the performance for your web apps.