From vendor to edge with no build required • DEVCLASS


The Deno company, sponsor of the Deno project which provides an open-source runtime environment for TypeScript and JavaScript, adds a serverless platform and web application framework to its offerings.

Deno Fresh in action

Deno is written in Rust, uses the V8 runtime as used by Google Chrome, and was created by Node.js author Ryan Dahl. Deno supports TypeScript as the main language and modern web APIs including ES modules as standard.

In June 2021, the Deno company presented the first beta version of Deno Deploy, a serverless hosting service now operating in 33 data centers around the world. “Deploy does not run on AWS Lambda or use Cloudflare Workers; it is a new system with a unique design,” Dahl explained at the time. Deploy integrates with GitHub so that every push to a linked repository immediately updates an application. There is native support for TypeScript, JSX (an extension of JavaScript used by React components), ES modules, and remote HTTPS imports.

Deno Deploy is now in beta 4 and at the end of last month the company provided an update. The original intention, now described as “overly optimistic”, was to achieve general availability by the end of last year. “Setting up a complete serverless system involves a lot of detail and we didn’t want to rush it,” the team said. The latest estimate for general availability is “Q3 2022”.

A paid plan was introduced alongside the free plan, at $10 per month for up to 5 million queries and up to 50 ms of CPU time per query.

Accompanying Deploy is a new framework, called Fresh. Fresh is based on Deno and Preact, a smaller and more efficient version of React. Unlike a typical Node.js project, there is no build or transpilation step required for Fresh. Developers write code, push it to Deno Deploy, and “from there everything is handled by the framework,” the docs say. We took a quick look, quickly encountering some rough spots: we had installed Deno 1.13, Deno 1.12 or later is required according to the documentation, but it didn’t work until we upgraded to the latest version 1.22. The documentation is sketchy, with a getting started tutorial available but blanks for key topics like styling and data retrieval in the “Concepts” section.

That said, once configured, the experience of writing code, pushing it to GitHub, and auto-updating it almost instantly on Deno Deploy is excellent. Note that Fresh is marked “do not use” for production as everything is subject to change.

Fresh combined with Deploy has a lot in common with Next.js and other Jamstack and headless frameworks – the reason for which was well explained by Netlify’s Matt Biilmann last month. Netlify uses Node.js and React rather than Preact, but also works with Deno for Edge functions. It is reasonable to position Next.js as a more mature approach, and Fresh as more radical but still at an early stage.

“The development experience is closer to the early days of PHP,” a developer told Hacker News – perfectly conveying both Fresh’s advantage in simplifying the experience and the fact that older approaches were just as great when they were new and “fresh”. .


Comments are closed.