uf0.44.0

Type to search every page and heading. Page titles only, while the full index loads.

All pages

Readiness: Experimental

Targets

Targets

One build, served by uf start, written out for Node.js, Bun, Deno, a container, Cloudflare Workers, AWS Lambda or a static host, or compiled into a single executable — and the two targets that are not a browser: a phone, and a terminal. Each page says what is established and what is not yet.

Most read

What you need first

An application that builds — Build an app. React Native and the terminal each say on their own page what else they need.

The web, deployed

uf build writes the client bundle, the prerendered documents and a server bundle. Deploy a web build is the guide for choosing what to run next. The options differ in what the machine that answers a request has to have — not in the answer, which is the same from all four:

CommandWhat you getThe host needs
uf previewVite's preview server over the build, to check it before you deploythe project, its dependencies and Vite
uf startuf's own server, with no bundler in the processa JavaScript host, node_modules and the build
uf build --adaptera directory for one platform: node, bun, deno, container, edge for Cloudflare Workers, serverless for AWS Lambda, or staticwhatever that platform is
uf build --compileone executable file with the runtime inside itnothing

Which of them a project may use is decided by its routes. A route handler, a middleware, a server action the browser can call, and a redirect, rewrite or response header in app.router each need a server, and a static host has none: Choosing a deployment shape is the table, and uf build --adapter static refuses a project that has any of them, by name.

What is established is written down beside the commands. The deployment guide keeps the decision in one place, and the command reference keeps the complete adapter detail, including the current limit: no server adapter's output has been deployed to a real platform by uf's own pipeline yet.

A phone, and a terminal

  1. Deploy a web buildChoose how to serve a uf web build: preview, start, adapters, static files, or one executable.
  2. React Native targetNative route files, Metro, navigator events and the test-tree surface.
  3. Terminal UIReact with a terminal for a host: flexbox, cells, and only the ones that changed.

React Native target is a target rather than a flag: native route files, Metro, a navigator contract, and test-tree queries that do not pretend there is a DOM. It is the least finished part of this section — uf cannot mount into a real native host yet — and the page opens with what works today. Terminal UI is React with a terminal for a host: the same components and hooks, laid out with flexbox and drawn as cells.

When you are done

Reference is next: every command, flag, config key and export. The toolchain is the commands you run against all of this: the tests, the environments they run on, and the pipeline that runs them.

Edit this pagedocs/app/guide/targets/$page.mdx