Serverless runtimes

Serverless functions and runtimes

Run isolated serverless functions in real containers with the same event model, one inquir.yaml for packages, and hot container pools across Node.js, Python, and Go — no need to split services across runtimes.

Related guides and docs

Get started →

Same platform, any language

1

Pick a language

Choose Node.js 22, Python 3.12, or Go 1.22 when you create a function — and switch any time.

2

Write your code

Install packages from npm, PyPI or Go modules and import them as usual. Each function runs in its own container; outbound network access is off until you allow it.

3

Deploy

All runtimes share the same hot container model — benchmark warm-path latency on your own bundles, since language choice alone doesn't guarantee a fixed millisecond budget.

The same handler in 3 languages

index.js
export async function handler(event, context) {
  const payload = typeof event.body === 'string' ? JSON.parse(event.body || '{}') : (event || {});
  const { name } = payload;

  // Any npm package works — fetch, axios, openai...
  const res = await fetch("https://api.example.com/greet", {
    method: "POST",
    body: JSON.stringify({ name }),
  });

  return {
    statusCode: 200,
    body: JSON.stringify({ message: `Hello, ${name || 'world'}!` }),
  };
}

Full runtime support

JS

Node.js 22

Full ESM support, the latest V8 engine, and any npm package — the fastest way to ship a JavaScript API.

Python 3.12

Native async/await, aiohttp, and pip packages declared in inquir.yaml make it a great fit for AI and data workloads.

Go 1.22

Compiled binaries run at full speed inside containers — a perfect match for CPU-bound or latency-sensitive tasks.

Unified event contract

Every runtime shares the same event, context, and response schema, so you can migrate a function between languages without changing a single caller.

Get started

Create an application or deploy a function. Start building your project.

Get started →