Define services, databases, queues, and workflows in TypeScript. Vy deploys them to the edge with end-to-end tracing and a typed infrastructure graph humans and AI agents can both reason about.

Get early accessAlready have access? Sign in →

7-day free trial · Usage-based pricing · $15/mo minimum

app/orders.ts
ts
1// app/orders.ts
2import { service } from "vy/service";
3import { database } from "vy/storage";
4import { topic } from "vy/pubsub";
5
6export const db = database("orders");
7export const events = topic("order.created");
8
9export default service();
trace · req_8f24a1
200 · 318ms
browser · /checkout318ms
api · POST /orders248ms
db · INSERT orders70ms
workflow · charge146ms
The shift

84% of developers report using or planning to use AI coding tools. 46% don't trust the output, up from 31% a year ago. The bottleneck isn't writing code anymore, it's understanding, debugging and operating what gets generated.

Generation is fast. Production is the gap.

AI app builders and coding agents can scaffold a full-stack prototype in an afternoon. Getting that prototype deployed, traced, and safe to iterate on is still the slow part, and it's where most generated apps stall.

Runtime truth beats reading code.

When AI wrote half the file last week, the only honest source is what actually happened in production. Logs, grep and intuition don't scale, you need a runtime that tells you what your system is really doing.

Six vendors deep, still no full picture.

Frontend host, backend host, database, queue, storage, APM, secrets, CI. Each owns a slice of the request, none of them see the whole one. Most of the work is wiring, not product.

What Vy gives you

Vy unifies what most teams stitch from six vendors: typed services co-located with your frontend, a runtime graph humans and AI agents can introspect, and tracing that follows a request from the browser to the database and back.

01

Frontend and backend, one typed deploy.

Put your frontend and backend in the same repo. Vy deploys both, generates a typed client across the boundary, and provisions the database, queues, cron, and storage your code declares, no Terraform, no glue SDKs, no secrets dashboard to babysit.

apps/
ts
1// apps/web/app/orders/page.tsx
2import { backend } from "vy/clients";
3
4export default async function Page() {
5 const orders = await backend.orders.list(); // fully typed
6 return <OrderList data={orders} />;
7}
8
9// apps/backend/orders.service.ts
10export const list = api.get("/orders", () => db.orders.findMany());
02

Tracing across the entire stack.

Follow a single request from the browser click, through the API route, into the queue, to the database query and back, in one timeline. Built into the runtime, no separate APM to configure. The runtime graph is the source of truth that humans and AI agents both read from.

trace · req_8f24a1
200 · 318ms
frontend · /checkout318ms
api · POST /orders260ms
db · INSERT orders70ms
workflow · charge152ms
03

A live environment for every branch.

Each pull request, yours or your agent's, gets its own URL, its own database branch, and its own trace view. Pay-per-request billing means an idle preview costs nothing, so reviewing turns into clicking real behavior instead of staring at diffs.

open pull requests
23 today · $0 idle
feat: invoice retry workflow
#4821 · claude
preview ready
fix: idempotent webhook handler
#4822 · cursor
preview ready
perf: batch outbound emails
#4823 · codex
preview ready
What you can build

Vy gives you the building blocks for the products teams actually ship today, from AI agents to SaaS backends, without stitching together a dozen vendors.

AI apps & agents

Ship chatbots, copilots, and autonomous agents with streaming responses, tool calls, and durable memory, without wiring five services together.

Streaming · Tools · Memory

SaaS backends

Multi-tenant APIs with auth, billing, and a Postgres database. Type-safe end to end, deployed globally on the first push.

API · Auth · Postgres

Stateful actors

Single-instance objects with durable state, sessions, rooms, agent memory. Vy handles persistence and lifecycle.

Actors · State · Lifecycle

Background jobs & pipelines

Long-running work that survives restarts: payment flows, ETL, onboarding sequences. Resumes exactly where it left off.

Durable · Retried · Observable

Internal tools & dashboards

Stand up admin panels, ops consoles, and reporting on top of your real data, no separate analytics stack.

SQL · Charts · Auth

Event-driven products

React to webhooks, user events, or upstream changes. Fan out work across services without managing a broker.

Webhooks · Topics · Fan-out

Media & file workflows

Uploads, transformations, and signed downloads. Browser uploads go straight to storage, then trigger your code.

Uploads · Processing · CDN

Scheduled & recurring work

Daily reports, reminders, sync jobs, cleanup tasks. Schedule it once, run it forever, see every execution.

Cron · History · Alerts

APIs for AI agents

Expose your product to LLMs over MCP and HTTP. Agents get typed tools, traces, and preview environments to test against.

MCP · Tools · Previews
Edge deployment

A Vercel-style developer experience for the whole stack, frontend, backend, database and jobs, deployed to a global edge network. Requests run close to your users, idle previews and dormant endpoints don't show up on the bill.

Always-on stack
Reserved capacity in one region
Idle hours
What you pay for

You pay whether traffic arrives or not. Scale-to-zero is rarely the default.

Vy on the edge
Per-request billing, served globally
Real work
What you pay for

Pay when a request runs. Spin up dozens of services and previews without watching the meter.

Global
served from the closest edge
Per request
no idle billing
Scales to zero
when nothing runs

From AI prototype to production.

Define your stack in TypeScript. Vy deploys frontend and backend together, traces every request end-to-end, and gives every branch its own preview environment, on a typed graph humans and AI can both reason about.