Runtimes

Choose a runtime

The first app guide uses Deno. If you already work with Bun or Node, you can run the same Qino app there. Choose one tab below; you do not need to install all three runtimes.

Install and run

The commands assume that server.ts contains the first app example. Use the import line shown for your runtime.

Deno

Install from JSR, then run the server with the permissions your application needs.

sh
deno add jsr:@qino/qino@^0.7
deno run --allow-all server.ts

Import Qino in server.ts:

ts
import { Access, App, sys } from "@qino/qino";

Bun

Install the npm package and run the TypeScript file with Bun.

sh
npm install qinojs
bun server.ts

Import Qino in server.ts:

ts
import { Access, App, sys } from "qinojs";

Node 26+

Install the npm package and start Node with Qino's TypeScript loader.

sh
npm install qinojs
node --import qinojs/node server.ts

Import Qino in server.ts:

ts
import { Access, App, sys } from "qinojs";

The rest of server.ts stays the same.

If you use Deno without a project file

For a single file without a deno.json, import directly from JSR:

ts
import { App, sys } from "jsr:@qino/qino@^0.7";

In a project, deno add records the dependency and lets you use the shorter @qino/qino import.

Why Node needs one extra flag

Node needs --import qinojs/node to load TypeScript from Qino's package. Bun and Deno do not need that flag. Qino's package declares Node 26 or newer.

Next step

Build an endpoint in Your first Qino app. You can learn modules later.