README
The Deno Runtime compiles a TypeScript or JavaScript function into a serverless function powered by Deno, running on Vercel.
Usage
Your serverless function file is expected to export default
the HTTP handler
function, and then vercel-deno
takes care of invoking that handler function
every time an HTTP request is received.
Note: Check out the
api
directory to see examples of using popular Deno web frameworks withvercel-deno
. Feel free to send a pull request to add additional examples!
Example
Create a file called api/hello.ts
with the following contents:
import { ServerRequest } from 'https://deno.land/std@0.70.0/http/server.ts';
export default async (req: ServerRequest) => {
req.respond({ body: `Hello, from Deno v${Deno.version.deno}!` });
};
Next, define the vercel-deno runtime within the "functions" object in your
vercel.json
file:
{
"functions": {
"api/**/*.[jt]s": { "runtime": "vercel-deno@0.7.1" }
}
}
Demo: https://vercel-deno.vercel.app/api/hello
Configuration
There are a few build environment variables that you may configure for your serverless functions:
Name | Description | Default |
---|---|---|
DEBUG |
Enables additional logging during build-time. | false |
DENO_TSCONFIG |
Passes the --config flag to specify a tsconfig.json file that Deno will use. |
None |
DENO_UNSTABLE |
Passes the --unstable flag to deno cache (at build-time) and deno run (at runtime). |
false |
DENO_VERSION |
Version of deno that the serverless function will use. |
1.4.1 |
Development
The vercel dev
command is supported on Windows, macOS, and Linux:
- Vercel CLI v19.1.0 or newer is required.
- Uses the
deno
binary installed on the system (does not downloaddeno
). - Specifying a specific version of Deno via
DENO_VERSION
env var is not supported.