Deno 2.9
`deno desktop` for building native desktop apps from web tech, first-class migration from npm/pnpm/yarn/Bun, CSS module imports, snapshot and parameterized testing, smaller `deno compile --bundle` binaries, and Node.js 26 compatibility.
@deno-blog
Publisher
249
Posts
`deno desktop` for building native desktop apps from web tech, first-class migration from npm/pnpm/yarn/Bun, CSS module imports, snapshot and parameterized testing, smaller `deno compile --bundle` binaries, and Node.js 26 compatibility.
`import defer`, six new subcommands (`deno transpile`, `deno pack`, `deno bump-version`, `deno ci`, `deno why`, `deno audit fix`), network debugging in Chrome DevTools, framework-aware `deno compile`, and 3.66x faster cold npm installs.
Why we needed an agent firewall that speaks more than HTTP.
Fresh 2.3 ships true zero-JS pages, View Transitions, CSP nonce support, IP filtering, and Temporal API support in islands.
Deno 2.7 stabilizes the Temporal API, adds Windows on ARM builds, npm overrides in package.json, brotli compression streams, self-extracting compiled binaries, deno create, and dozens of Node.js compatibility improvements.
Add structured logging, distributed traces, and game analytics to your Deno game and learn how to use Deno Deploy's built-in logs, traces, and metrics dashboards.
Capture player identities, add a customization modal, and persist those preferences via Oak + PostgreSQL.
Instant Linux microVMs with defense-in-depth security for running untrusted code.
Deno Deploy is now generally available, plus some highlights of new features and tools.
Building a leaderboard with database integration for our example browser-based game.
Adding obstacles, collision detection and game mechanics to our example browser-based game.
This series of posts will guide you through building a simple game using Deno. This post sets up the game loop, user controls and basic game physics.
A high severity Denial-of-Service (DoS) vulnerability has been found in React Server Components and Next.js. Deno has implemented mitigations in Deno Deploy. Immediate upgrades are required for other users.
This release includes `dx` for running package binaries, more granular permissions, source phase imports, faster type checking with `tsgo`, native source maps, `deno audit`, and much more.
This series of posts will guide you through building a simple game using Deno. Each post corresponds to a stage in the development process, gradually introducing new features and concepts.
A critical Remote Code Execution (RCE) vulnerability has been found in React Server Functions and Next.js. Deno has implemented mitigations in Deno Deploy. Immediate upgrades are required for other users.
Here’s a roundup of some of our popular open source libraries and how we use them in Deno.
Recent supply chain attacks on npm is a reminder that Node and npm grants unfettered access to your systems. Here's how Deno, with an opt-in security model, protects against these vulnerabilities.
Our legal battle over Oracle's claim on the word "JavaScript" is entering the discovery phase. Here's how you can help.
Simpler permission management with permission sets, new Deno.test APIs for setting up and tearing down test cases, specifying custom headers in WebSocket connections, runtime APIs in deno bundle, and more.
Fresh 2.0 beta introduces optional Vite integration - with hot reloading, faster boot times, seamless React aliasing, and the full Vite plugin ecosystem
Deno bundle is back, alongside the addition of bytes and text imports, stabilized built-in OpenTelemetry, a new --preload flag, simplified dependency management with deno update, and more.
The Trademark Trial and Appeal Board has dismissed our fraud claim against Oracle. We disagree with this decision.
Here are proposals that were advanced at the last TC39 meeting and what that means for the future of JavaScript.
In 30 years, JavaScript went from being a little scripting language to one of the world's most popular. Here are key moments to show how it has evolved and where it is headed.
Addressing recent Deno criticisms and sharing our vision for the future
Fresh 2.0 is very much still active. Here’s an update and how to try out the alpha.
Learn how Plaid used Deno to minimize downtime and improve cutover speed during a critical infrastructure migration.
Deno 2.3 adds new features for deno compile and deno fmt, support for using local npm packages, several performance improvements, and more. Here are the biggest highlights.
Debugging requires implementation to get the right data for you to resolve issues quickly. Here's how you can use Deno to capture necessary telemetry data without any additional work.
With Deno's Jupyter support, you can explore, interact, and create interactive charts with TypeScript and HTML. Here's a tutorial featuring data of over 130,000 famous artworks.
Oracle has filed a partial motion to dismiss our fraud claim. We’re now waiting on the USPTO to weigh in.
AI and LLMs are certainly useful assistive tools. But what if we need to train LLMs on confidential documents and materials? Here's how you can build your own custom RAG AI agent.
Adding meaningful tracing to a Node backend requires additional instrumentation and configuration. Here’s another approach that requires zero additional code.
Deno は東京で行われるミートアップ toranoana.deno #20 に開催協力します。以下、主な詳細とスケジュールの概要です。
Node's experimental TypeScript support will be stabilized in 23.6. Here's what Node's TypeScript integration looks like and how it compares to Deno.
Did you know you can run a large language model with Deno and Jupyter Notebooks? Here's how.
Deno's new lint plugin system means you can extend the deno lint functionality with your own rules. We're giving prizes for anyone who publishes a lint rule this week. Here's how to participate.
Deno 2.2 adds built-in OpenTelemetry, a new linter plugin API, node:sqlite, and major improvements to deno check, deno lsp, and deno task.
One common way to import npm packages is with transpile services like esm.sh or unpkg.com, which converts npm modules to esm and hosts them on the web. However, since Deno 2, which supports npm natively, we recommend using npm specifiers. Here's why.
Documentation is a critical part of developer experience. Here's how we're improving our documentation and what's to come.
Oracle filed a motion to dismiss in response to Deno’s petition to cancel its “JavaScript” trademark. But instead of addressing the real issue—that JavaScript is an open standard with multiple independent implementations—Oracle is trying to stall the process and sidestep accountability.
JSR, a modern open source JavaScript registry, is meant for the greater JavaScript and TypeScript community. We're thrilled to announce its own independent governing body.
Web Assembly, or Wasm, is a great way to increase performance in your web application. Here is an introductory guide to what it is and how you can use it.
OpenAI, leading development platform for building generative AI products and experiences, now has a JavaScript and TypeScript SDK on JSR.
We had a busy 2024 with the launch of Deno 2 and JSR, and dozens of features to simplify programming. Here are the biggest updates in 2024 and what's on the horizon.
WinterCG, the Web Interoperable Runtimes Community Group is moving to Ecma as TC55 to be able to publish standards.
Here's how to get your Next.js SSR project up and running on Deno Deploy.
We're giving out exclusive prizes for using Deno during the Advent of Code 2024. Here's what you can win.
Oracle is holding the JavaScript trademark hostage, and we’re pursuing legal means to #FreeJavaScript. Here’s a brief update.
Deno 2.1 introduces first-class Wasm imports, built-in tracing with OpenTelemetry, faster `deno compile`, and improved package management.
Deno compile is a flexible tool that turns a JavaScript or TypeScript program into a portable, streamlined binary for any OS. Here's how it works.
Using an object-relational mapping (ORM) database can make working with persistent data simpler. Here's how to use a popular ORM, Drizzle, with Deno.
Deno’s new package manager, added in v2.0, is fast, flexible, and supports Node and package.json. Here’s how it works.
Growthbook's JavaScript SDK, which enables easy AB testing and personalization, is now available on JSR.
Here’s a thorough guide that covers everything you need to know to migrate your CommonJS project to ESM.
Our next major version of Deno combines the simplicity, security, and performance of Deno 1 with full Node and npm backwards compatibility, and much more.
We've merged in many fixes and improvements to the Deno 2 release candidate. Here's what's new.
Rusty V8, a library that provides high-quality, zero-overhead Rust bindings to V8, is finally stable. Here's how to use it.
This release candidate, a near-final look at Deno 2, includes the addition of Node's process global, better dependency management, and various API stabilizations, and more.
Deno can use private npm registries with Cloudsmith, which offers additional security features, analytics into module usage, and more. Here’s how to do it.
JSR, created for the JavaScript community, needed a logo and a website to look distinct, friendly, and inclusive. Here's how we approached this design problem.
The Web Cache API offers sub-millisecond read latency, multi-Gbps write throughput, and unbounded storage. Here’s how you can use it.
Our last 1.x release before Deno 2 comes with a ton of features, ranging from a simpler, improved CLI, to multi-threaded web servers, improvements to Node.js/npm compatibility, and more.
You can now exercise greater control over your Deno Deploy spend with our new spend limits. Here’s how they work.
Designing a module system around HTTP imports was ambitious. Here are some issues we encountered and how we solved for them.
When running production JavaScript in the cloud, performance is a critical consideration. Here’s how Deno’s cold start times compare against other JavaScript runtimes on AWS Lambda.
Deno 1.45 introduces workspaces and monorepo support, improved Node.js compatibility, updates to `deno install`, the new `deno init --lib` command, deprecation of `deno vendor`, Standard Library stabilization, upgrades to V8 12.7 and TypeScript 5.5.2, and more.
This new feature allows Subhosting users to configure their KV databases to back up data to their own S3-compatible object storage via APIs.
Quick, digestible bites of TypeScript goodness for Deno developers. In this first bite, we introduce TypeScript, how to add type annotations to your code and why you should.
When a customer reported performance issues with the Deno language server, we began a performance investigation that resulted in reducing auto-completion times from 6-8 seconds to under one second in large codebases. This is how we did it.
The Guardian receives over 350 million unique page views. Learn how Deno helps the Guardian maximize web performance and adhere to accessibility standards to retain and grow their readership.
This new update simplifies programmatically managing custom domains, wildcard domains, subdomains for different deployments, and more.
The Deno Standard Library is going to reach 1.0.0 shortly. We hope you try RC versions of the packages and give us feedback!
Deno 1.44 adds support for private npm registries, gRPC connections, improved Node.js compat with initial Next.js support, and significant performance improvements.
When building a modern cloud platform to securely run untrusted code, it can be difficult to balance cost and performance. Here’s how we built Deno Deploy and Deno Subhosting.
The Deno Standard Library has moved to JSR, supporting SemVer ranges in imports and compatibility with Node.js, Cloudflare Workers, and more.
Writing good JSDocs for your JavaScript package is critical to its success. Here are some best practices for creating docs that helps your users be successful.
A low-code solution is a simple way to offer some flexibility for your users. However, to accommodate further customization (especially for enterprise users), you should have an “escape hatch” — simple, code-level customization. Here are three product scenarios and where an escape hatch makes mos...
Deno 1.43 enhances productivity with a faster language server, improved npm compatibility, a new `deno serve` subcommand, URL.parse() API, and announcements regarding Deno 2.
Learn how building with Deno helped Slack launch their new development platform in weeks and not months.
JSR introduces a new way to share JavaScript and TypeScript code across platforms, focusing on simplifying distribution without replacing existing package managers.
Hookdeck, an event gateway for distributed and async architecture, now has an SDK on JSR.
Neon, a performant, edge-compatible, serverless Postgres driver, arrives on JSR.
TypeScript, one of the fastest growing languages, helps JavaScript developers improve code quality and productivity. But getting started can be challenging. Here's an introduction to TSConfig.
A modern JavaScript registry needs to be fast, reliable, and be as simple as possible for end users. Here's how we built JSR.
Learn why Netlify chose Deno Subhosting over building their own solution with AWS Lambda to offer a successful edge functions product within weeks.
Introducing a more simplified project creation flow in Deno Deploy, including seamless CI/CD setup, a more transparent build and deployment step, and more.
Deno 1.42 revolutionizes dependency management with the seamless integration of JSR, enhancing Node/npm compatibility and introducing significant performance improvements.
Deno Deploy’s command line interface, deployctl, is the simplest way to deploy your projects to the cloud. Here’s how to do it.
The JavaScript Registry (JSR) is a TypeScript-first, ESM-only module registry designed for the entire JavaScript ecosystem. Use JSR modules from Deno and npm-based projects. JSR is free and open source. Available today in public beta.
Enabling your users to deploy and run code can make your platform more useful. Here's a guide to building a platform that deploys and runs untrusted user code via a browser IDE with Monaco, Next.js, and Subhosting.
You answered our survey and we listened. Here’s what we’re working on currently and what you can expect from Deno next.
We've roughly halved the size of `deno compile` binaries, added official Linux ARM64 builds, continued to land Node.js compatibility improvements, and more.
Webhooks, originally proposed as a way to consume asynchronous feeds, became the one-size-fits-all solution for integrating cloud software. Here’s why we think there’s a better solution.
We revamped Deno Deploy’s onboarding to show you how easy it is to use Deno’s cloud primitives in your projects.
2023 marked a significant step towards our vision of radically simplifying web development. Here are the biggest updates and what’s coming up next.
Which technology is best for building a deployment platform for running third party code? Let's dive into the key differences in feature set, billing model, and performance.
Deno 1.40 introduces the Temporal API, TC39 decorators, and a range of deprecations and stabilizations, along with improvements in Node.js compatibility, LSP, diagnostics, and handling of unstable features, paving the way for a seamless upgrade to Deno 2.
This tutorial will show you how to build a simple cloud IDE using the Deno Subhosting API.
Details, prizes, submission guidelines, resources, and more about the Deno Subhosting Hackathon.
We've made a ton of improvements to our Node and npm compatibility this past year. Here's a chance for you to experience those improvements and win some prizes.
Learn to use text completions, image generation, image analysis, and more features of OpenAI using their official Deno SDK.
We've re-added WebGPU, added new deno coverage reporters, made substantial Node.js compatibility improvements, and more.
We compare Deno KV to other serverless data stores on performance, price, developer experience, and more.
Access our zero config distributed database, Deno KV, in your Node projects with our new npm package.
Detecting changes in Deno KV with `kv.watch` makes it easier to build real-time applications like newsfeeds, analytics, multi-user collaboration tools, and more.
Terraform is a popular tool used to safely and predictably provision and manage infrastructure in any cloud. Here’s how you could use Terraform to manage your Deno Deploy or Deno Subhosting projects.
Discover new improvements in Fresh 1.6 that simplify your project and make it speedier.
`Deno.cron` allows you to easily create scheduled jobs and is available on Deno Deploy. Here's how it works.
Deno Deploy and Deno Subhosting was designed with security and tenant isolation in mind. Here's how it works.
Learn how using Deno improves the performance of Deco.cx's clients storefronts and increase page load speeds by 5x.
Subhosting is a new way to leverage Deno Deploy's fast, scalable multi-tenant v8 isolate cloud to run your users code securely.
Deno KV is now even more flexible and powerful with self-hosted options, replicas, and S3 and GCS continuous backup support.
Deno 1.38 ships with HTML doc output, hot module replacement, improved Node.js compatibility by allowing you to use your own `node_modules` folder, and more.
Discover new improvements in Fresh 1.5 that makes your site quicker to load and comes with several improvements to make authoring complex projects easier.
Introducing Deno Queues - zero config, scalable messaging with a guaranteed at-least-once delivery. This new primitive builds on the foundation set by Deno KV, and is available today in the Deno JavaScript runtime and Deno Deploy.
Join us to learn about the past, present, and future of Deno as we co-host Deno Fest in Tokyo on October 20th!
Deno 1.37 ships with a Jupyter notebook integration and improved VSCode and LSP features.
With npm compatibility in Deno improving, and npm specifiers now available on Deno Deploy, there are more options than ever to build web apps on Deno. Let's explore some options, including Fresh, SvelteKit, Nuxt/Vue, Astro, and beyond.
How we built a performant, scalable, ACID-compliant, JavaScript-native database on FoundationDB.
Deno Deploy becomes the first isolate serverless platform to natively support more than two million modules on npm.
Deno KV, the easiest way to add a strongly consistent database to your app, is now in open beta.
Here's how Deno's built-in tools and APIs make it easy to build a CLI and distribute it to all major platforms.
Post-mortem report for the Deploy outage on August 22nd, 2023.
Discover new improvements in Fresh 1.4 that makes your site quicker to load and comes with several improvements to make authoring complex projects easier.
Why a Next.js project has over 30 configuration files and what we can do to avoid it.
Deno 1.36 introduces new runtime security options plus expanded testing and benchmarking APIs.
How to write your module with modern tooling and transform it with `dnt` to support CommonJS, ESM, browsers, Deno, Node.js, TypeScript, and more.
Deno is a critical part of distributing our own software and also helping our users manage their dependencies.
Learn how to build and deploy static and server-rendered apps with Astro on Deno and Deno Deploy.
Explore the key improvements in Fresh 1.3: streamlined route components, enhanced error handling, updated linting rules, and multi-island exports. This release also supports the stable Deno.serve API, making Deno projects more efficient and manageable.
Deno.serve() is stable, support for key npm packages, and more.
How CommonJS became Node's module system, ESM solved modules for the browser, and why supporting both slows down the JavaScript ecosystem.
What SOC 2 compliance for security, availability, and confidentiality means for Deno.
Learn what new features the 1.2 release brings and about the future of Fresh.
More developers are hosting entire apps at the edge and other major takeaways from the 2023 State of Edge Functions report.
Learn how to use secondary indexes, atomic transctions, and more with Deno KV in this introductory tutorial.
You can now use Node.js built-in modules like `node:http` on Deno Deploy, allowing you to run existing Node.js apps at the edge.
This update augments compatibility with npm and Node.js, incorporates glob support, and enhances TLS certificates with IP addresses. It also brings forth improvements to the configuration, language server, APIs, and updates to V8 and TypeScript.
Post-mortem report for the Deploy and Subhosting outage on May 23rd, 2023.
We chose Deno for its low cold start times, ability to execute untrusted code securely, and ease in creating shareable, immutable scripts.
Learn how to setup a customized ChatGPT-style doc search and work with the OpenAI Chat-GPT3 API.
We'll create and load a snapshot of our custom JavaScript runtime to optimize startup time.
Introducing Deno KV, a global key-value database for effortless stateful app development on Deno Deploy, offering seamless integration, strong consistency, and versatility.
Deno 1.33 is a step towards our next major release, with improved LSP support, enhanced Node.js compatibility, and more.
The second half in our series of how to get up and running with Deno and Express quickly.
Built on Fresh, SaaSKit combines the best developer experience with a performant user experience to help you start your SaaS fast.
Deno 1.32 brings major improvements to deno compile, Node.js compatibility, Web APIs, and more.
The most recent release brought some significant changes in the form of better Node and NPM compatibility with package.json support. This prompted questions from our users about whether our core priorities have shifted.
How to setup a REST API using Express and TypeScript in minutes.
Together we can identify current and upcoming trends as well as common frustrations to better understand how to best use this nascent technology.
The build step helps Node.js/npm run in the browser, optimize end-user performance, etc. But long build times limit productivity. With modern tooling, do we still need a build step?
Deno 1.31 adds support for package.json, stabilizes Node-API, Deno.Command API, adds `node:v8` module, and more.
We’ve got Q&A highlights from our last two live events and updates about Office Hours going forward.
We'll implement `fetch`, read command line arguments, and add native support for TypeScript and TSX.
A tutorial on building and deploying a simple image resizing API.
A brief history about server-side rendering and why it's the right approach for modern web development.
Deno 1.30 supports built-in Node modules, deno.json is an import map, deno fmt can format without semicolons, and more...
Here's a list of questions, answers, and takeaways from our January 13th office hours.
2022 was a big year for Deno. Here are the biggest updates from the past year and what's coming up next.
We're hosting bi-weekly office hours in our Discord server! Ask questions (or submit them in advance), get technical help, or just come and hang out.
Deno 1.29 ships with many npm compatibility improvements, lots of quality of life improvements and TypeScript 4.9
We're sponsoring and judging the Best Edge Functions category. Create an edge function and be eligible to win Deno merch and other prizes.
Did you know you can host and run your Deno code in any virtual private server? Here's how to get started.
How Deno's secure-by-default and opt-in permissions system gives you more confidence in running untrusted npm modules.
Getting started with web frameworks in npm and Deno.
Here's how to get started with a few data persistence npm modules and Deno.
Deno 1.28 ships with stabilized npm modules, auto-discovered lock file, a new subprocess API, and more
Combine the DX and performance of Fresh with the reliability and dependability of WordPress.
A tutorial to setting up authentication with Fresh.
Deno 1.27 ships with major improvements for IDEs, better support for npm packages, navigator.language Web API and more.
Create a simple blog with Fresh in minutes.
We test a handful of popular serverless edge computing providers to see which has the fastest git deployment time.
A brief history of the internet explaining why building for the edge is faster, more secure, and easier than ever.
Deno 1.26 adds Cache Web API; improves permission system, experimental npm support, Node.js compatibility; ships with TypeScript 4.8, and more.
Deno Deploy is one of the fastest ways to deploy an app. How does it work?
Introducing the new Slack Platform that is a faster, flexible, and more secure way to build on top of Slack.
A modern website with dynamic API endpoints and form functionality in a single JavaScript file.
This release makes Fresh even more powerful with automatic JSX, plugins, DevTools integration and more.