All systems operational 14 regions 99.998% uptime (90d)
v3.4.2 shipped Apr 24 — read changelog
Edge Functions

Code at every
PoP. Cold-start
under 4ms.

V8 isolates. WASM. Python via Pyodide. Each function deploys to all 14 regions in seconds, runs on the metal of every PoP, and starts in less time than a TLS handshake.

50ms CPU/req included·WASI · Web APIs·HTTP, KV, Queue triggers
deploy in 1.4s
import { Resize } from "@arveon/edge";

export default async handler(req: Request) {
  const { searchParams } = new URL(req.url);
  const w = +searchParams.get("w") ?? 800;

  const origin = await fetch(
    "https://cdn.arveon.dev/" + searchParams.get("src")
  );

  return new Response(
    await Resize(origin.body, { width: w, format: "avif" }),
    { headers: { "content-type": "image/avif" } }
  );
}
Built for production

All 14 regions. One deploy.

4ms cold start, p99

V8 isolates start in low single-digit milliseconds. We measure it from outside the platform every minute and post it on the status page.

Always-warm, everywhere

Code runs at every Arveon PoP. The user closest to Helsinki and the user closest to Tokyo hit the same code revision, ~10 ms from their door.

TS, WASM, Python

First-class TypeScript with Web APIs (fetch, streams, crypto). WASI for WASM. Pyodide-based Python with import-on-demand.

KV & Queue, built in

Replicated KV with strong reads on the local PoP, eventual elsewhere. Queues with at-least-once delivery and replay.

Real observability

Logs streamed in 200 ms. Distributed traces with W3C trace context. Metrics scraped by your existing Prometheus.

Sane pricing

€0.30 per million requests. 50 ms CPU each, included. Beyond that, €1.20 per CPU-hour. No request count tier, no surprise overages.

In code

arv fn deploy ships to fourteen regions.

$ arv fn deploy --name image-resize ./src/handler.ts
   bundling   ✓  4.2 kB  (gzipped)
   uploading  ✓  to global-control-plane
   warming    ✓  14 regions · p99 cold-start: 3.6ms
 live at https://image-resize.arveon.dev (1.4s)

$ arv fn logs image-resize --tail
2026-04-29T13:42:11.224Z eu-hel-1 INFO  GET /800x600.jpg → 200 (12ms)
2026-04-29T13:42:11.231Z eu-fra-1 INFO  GET /400x400.jpg → 200 (9ms)
2026-04-29T13:42:11.244Z ap-tyo-1 INFO  GET /1600x900.jpg → 200 (18ms)
Customer story · Trailhead.io
"Our entire image pipeline is now 184 lines of TypeScript running at the edge. We deleted three Kubernetes services."
SR
Søren Ravn
Engineering Lead · Trailhead.io
3.6ms
Cold start, p99
184
Lines of code
14
Regions per deploy
1.4s
Time-to-deploy

Ship your first function in ninety seconds.