Fresh fruit cake design

Fresh fruit cake design is a new full stack web framework for Deno. The framework has no build step which allows for an order of magnitude improvement in deployment times.

Today we are releasing the first stable version of Fresh. Client side rendering has become increasingly popular in recent years. The popularity shows in the current web framework space: it is dominated by React based frameworks. These JS bundles often do little more than rendering static content that could just as well have been served as plain HTML. But most current implementations still ship the entire rendering infrastructure for the full application to every client so the page can be fully re-rendered on the client. Fresh uses a different model: one where you ship 0 KB of JS to clients by default.

A model where the developer explicitly opts in to client side rendering for specific components. Fresh also provides an interface for seamlessly rendering some components on the client for maximum interactivity. Fresh does not have a build step. This allows for very fast iteration loops with instant deployments. You can learn more about what all the files mean in the Getting Started guide. It contains the handlers and templates for each route of the application. The name of each file defines which paths the route matches.

Try update this message in the . The template component itself is never rendered on the client. This poses the question: what if you do want to re-render some parts of the application on the client, for example in response to some user interaction? This is what Fresh’s Islands are for. They are individual components of an application that are re-hydrated on the client to allow interaction. Below is an example of an island that provides a client side counter with increment and decrement buttons. Fresh takes care of automatically re-hydrating the island on the client if it encounters its use in a route’s template.

Fresh is not just a frontend framework, but rather a fully integrated system for writing websites. You can arbitrarily handle requests of any type, return custom responses, make database requests, and more. This can also be used to do asynchronous data fetching for a route. This makes Fresh very well suited for running on the edge in runtimes like Deno Deploy, Netlify Edge Functions, or Supabase Edge Functions.