Product documentation
PBVex
TypeScript functions. One PocketBase-based Go binary.
Convex-shaped TypeScript authoring and typed clients, backed by a single PocketBase-based backend you can run and operate yourself.
$ npm install --save-dev pbvex
$ npm install @pbvex/client
$ npx pbvex init
$ npm run pbvex:dev
// app.ts — generated references keep calls typed
import { Client } from '@pbvex/client';
import { api } from './pbvex/_generated/api.js';
const client = new Client('http://127.0.0.1:8090');
const messages = await client.query(api.messages.list, { channel: 'general' });
await client.mutation(api.messages.send, { channel: 'general', body: 'Hello' });
$ npm install @pbvex/client
$ npx pbvex init
$ npm run pbvex:dev
// app.ts — generated references keep calls typed
import { Client } from '@pbvex/client';
import { api } from './pbvex/_generated/api.js';
const client = new Client('http://127.0.0.1:8090');
const messages = await client.query(api.messages.list, { channel: 'general' });
await client.mutation(api.messages.send, { channel: 'general', body: 'Hello' });
Choose a path
Build, connect, or run PBVex
Agent-ready workflow
Give your coding agent the PBVex contract.
Install the umbrella skill for end-to-end work, or select focused skills for backend, functions, clients, frameworks, components, and operations.
npx skills add nathabonfim59/pbvex --skill pbvexDeploy one process
The backend is one executable.
It embeds PocketBase, its admin UI, the PBVex runtime, database bridge, realtime subscriptions, scheduler, storage, and authentication. At runtime it needs no Node.js, pnpm, repository checkout, or sidecar.
cd backend
go build -o pbvex ./cmd/pbvex
./pbvex serve --http 127.0.0.1:8090Continue with confidence
From first function to production operation
Browse all guides · Deploy an application · Go to production