Provider-native adapters for hydrating Shelv shelves into sandbox runtimes and creating snapshots.
- Website: shelv.dev
- Docs: docs.shelv.dev/guides/sandbox-adapters
- npm: npmjs.com/package/@shelv/adapters
- Source: github.com/shelv-dev/shelv-adapters
pnpm add @shelv/adaptersbun add @shelv/adaptersnpm install @shelv/adapters- Official runtime support: Node.js 18+
- ESM package
- Bun is supported as a package manager for installation; Bun runtime compatibility is best-effort in v1
Install only the provider SDKs you use:
pnpm add @vercel/sandbox
pnpm add @daytonaio/sdk
pnpm add e2b
pnpm add @codesandbox/sdk
pnpm add @deno/sandboximport { createShelvClient, createVercelAdapter } from "@shelv/adapters";
const client = createShelvClient({
apiKey: process.env.SHELV_API_KEY!,
});
const adapter = createVercelAdapter();
await adapter.hydrate({
client,
sandbox,
shelfPublicId,
mode: "archive-first",
});
const snapshot = await adapter.snapshot({
sandbox,
name: `shelf-${shelfPublicId}`,
});
console.log(snapshot.snapshotId);createShelvClient(config)resolveShelfSource(input)createVercelAdapter()createDaytonaAdapter()createE2BAdapter()createCodeSandboxAdapter()createDenoAdapter()
createShelvClient defaults to https://api.shelv.dev. Set apiBaseUrl only for staging/self-hosted overrides.
Apache-2.0.