Neon JavaScript/TypeScript packages
The monorepo for Neon's open-source JavaScript/TypeScript SDKs, libraries, CLIs, and framework plugins. Each folder under packages/ is an independently versioned, separately published package; they share tooling (pnpm workspaces, Biome, tsdown, Vitest, Changesets) but ship on their own cadence.
If you're looking for a single package's docs, see its own README.md under packages/<name>/.
Packages
Provisioning & project setup
| Package | Description |
|---|---|
neon-init |
Set up your project with Neon's MCP server for AI-powered database operations. |
neon-new |
A CLI tool and SDK for creating claimable Neon databases instantly. |
vite-plugin-neon-new |
A Vite plugin that automatically provisions databases during development. |
Config-as-Code (neon.ts)
| Package | Description |
|---|---|
@neon/config |
Config-as-Code for Neon: defineConfig types + the pure diff engine and Neon API adapter behind a neon.ts policy. |
@neon/config-runtime |
Runtime for neon.ts policies — inspect / plan / apply (push/pull) plus function bundling and deploy. |
@neon/env |
Resolve and inject a branch's Neon env (fetchEnv / parseEnv, neon-env run) from a neon.ts policy. |
API & integrations
| Package | Description |
|---|---|
@neon/sdk |
The official TypeScript SDK for the Neon API — a modern, Fetch-based client generated from Neon's OpenAPI spec (successor to @neondatabase/api-client). |
@neon/functions |
Runtime helpers for Neon Functions (e.g. a waitUntil primitive for deferring work past a response). |
@neon/ai-sdk-provider |
Community Vercel AI SDK provider for the Neon AI Gateway. |
A few renamed packages are still published as deprecated aliases (get-db / neondb → neon-new; vite-plugin-db / @neondatabase/vite-plugin-postgres → vite-plugin-neon-new); they re-export the new package and print a deprecation warning.
Repository layout
packages/ # the published SDKs, libraries, CLIs, and plugins (one per folder)
examples/ # runnable examples that consume the packages via the workspace
This is a pnpm workspace. Internal dependencies are linked with workspace:*, so changes to one package are immediately visible to its dependents without republishing.
Development
Contributing to this repo requires Node.js >= 22 and pnpm — pnpm itself needs Node 22.13+, and regenerating the @neon/sdk types needs Node 22.18+. The published packages support Node.js >= 20.19 at runtime (see each package's README and CONTRIBUTING.md). From the repo root:
pnpm install # install all workspaces
pnpm build # build every package (tsc + tsdown)
pnpm test:ci # run the test suites (Vitest)
pnpm lint:ci # lint + format check (Biome)
Scope a command to a single package with a filter, e.g.:
pnpm --filter @neon/env build
pnpm --filter @neon/env test:ci
Releasing
Versioning is driven by Changesets. Add a changeset describing your change (pnpm changeset), and a maintainer applies the version bumps + changelogs (pnpm changeset version) on a release PR. Publishing to npm runs from a separate workflow once that PR lands on main.
License
Every package in this repository is licensed under Apache-2.0.