Neon Serverless Postgres

par Neon

Guides et bonnes pratiques pour travailler avec Neon Serverless Postgres.

npx skills add https://github.com/neondatabase/agent-skills --skill neon-postgres

FIRST: Use the parent neon skill for a Neon overview, getting started with Neon, Neon development best practices, and more.

If the neon skill is not installed, fetch it from https://neon.com/docs/ai/skills/neon/SKILL.md or install it with:

npx skills add neondatabase/agent-skills --skill neon

Lakebase Postgres

Lakebase Postgres is the database at the core of Neon. It runs on the lakebase architecture — OLTP built directly on cloud object storage — which decouples storage from compute to offer autoscaling, branching, instant restore, and scale-to-zero. It's fully compatible with Postgres and works with any language, framework, or ORM that supports Postgres.

It is the same database whether you reach it through Neon or through Databricks; this skill covers the Neon access path.

Setup Flow

1. Select the organization and project

Use the CLI (default) or MCP server to list organizations and projects. Let the user select an existing project or create a new one. Check the .neon file for an existing linked project or branch.

2. Get the connection string

Use the CLI (default), neon env pull, or the MCP server to get the connection string. Store it in .env as DATABASE_URL. Read the file first before modifying it, to avoid overwriting existing values.

When to use pooled vs direct connections

Use caseConnection type
Web applications, serverless functionsPooled (-pooler)
Schema migrationsDirect
pg_dump / pg_restoreDirect
Logical replicationDirect
Long-running analytics with temp tablesDirect
Admin tasks needing SET or session stateDirect
LISTEN / NOTIFYDirect

3. Pick the connection method and driver

Always pair Neon with an ORM such as Drizzle for easy schema management and migrations. Refer to the connection methods guide to pick the correct driver based on how the runtime treats your code: https://neon.com/docs/connect/choose-connection.md.

Recommendations:

  • Drizzle as ORM (see https://neon.com/docs/guides/drizzle.md)
  • On Vercel, use node-postgres (npm install pg) with Vercel Fluid compute and import { attachDatabasePool } from "@vercel/functions";
  • On Cloudflare, use node-postgres with Cloudflare Hyperdrive
  • On Neon Functions, use node-postgres, as the functions are long-running and reuse the pool across requests.
  • Use the @neondatabase/serverless driver for serverless and edge environments (for example, when using Netlify) — HTTP transport for one-shot queries, WebSocket for transaction support. Link: https://neon.com/docs/serverless/serverless-driver.md

4. Set up the schema

Manage schemas and migrations as code. Avoid running ad hoc schema migrations against your database, since they're hard to manage.

If you're using an ORM, follow your ORM's best practices to manage schemas and migrations. For example, if using Drizzle, only use Drizzle for schema and migration management unless instructed otherwise.

Branching

Use this when the user is planning isolated environments, schema migration testing, preview deployments, or branch lifecycle automation.

Key points:

  • Branches are instant, copy-on-write clones (no full data copy).
  • Each branch has its own compute endpoint.
  • Use the neon CLI or MCP server to create, inspect, and compare branches.

Link: https://neon.com/docs/introduction/branching.md

For detailed branch creation workflows (normal vs schema-only branches, reset-from-parent, CLI/MCP selection), use the neon-postgres-branches skill. If it isn't installed, fetch it from https://neon.com/docs/ai/skills/neon-postgres-branches/SKILL.md or install it with:

npx skills add neondatabase/agent-skills --skill neon-postgres-branches

Autoscaling

Use this when the user needs compute to scale automatically with workload and wants guidance on CU sizing and runtime behavior.

Link: https://neon.com/docs/introduction/autoscaling.md

Scale to Zero

Use this when optimizing idle costs and discussing suspend/resume behavior, including cold-start trade-offs.

Key points:

  • Idle computes suspend automatically after a default of 5 minutes; the timeout is configurable, and suspension can only be disabled on the Launch and Scale plans.
  • First query after suspend typically has a cold-start penalty (around hundreds of ms)
  • Storage remains active while compute is suspended.

Link: https://neon.com/docs/introduction/scale-to-zero.md

Instant Restore

Use this when the user needs point-in-time recovery or wants to restore data state without traditional backup restore workflows.

Key points:

  • History windows for instant restore depend on plan limits.
  • Users can create branches from historical points-in-time.
  • Time Travel queries can be used for historical inspection workflows.

Link: https://neon.com/docs/introduction/branch-restore.md

Read Replicas

Use this for read-heavy workloads where the user needs dedicated read-only compute without duplicating storage.

Key points:

  • Replicas are read-only compute endpoints sharing the same storage.
  • Creation is fast and scaling is independent from primary compute.
  • Typical use cases: analytics, reporting, and read-heavy APIs.

Link: https://neon.com/docs/introduction/read-replicas.md

Connection Pooling

Use this when the user is in serverless or high-concurrency environments and needs safe, scalable Postgres connection management.

Key points:

  • Neon pooling uses PgBouncer.
  • Add -pooler to endpoint hostnames to use pooled connections.
  • Pooling is especially important in serverless runtimes with bursty concurrency.

Link: https://neon.com/docs/connect/connection-pooling.md

IP Allow Lists

Use this when the user needs to restrict database access by trusted networks, IPs, or CIDR ranges.

Link: https://neon.com/docs/introduction/ip-allow.md

Logical Replication

Use this when integrating CDC pipelines, external Postgres sync, or replication-based data movement.

Key points:

  • Neon supports native logical replication workflows.
  • Useful for replicating to/from external Postgres systems.

Link: https://neon.com/docs/guides/logical-replication-guide.md

Skills connexes

hf-cloud-sagemaker-iam-preflight
huggingface
Assurez-vous qu'un rôle d'exécution SageMaker utilisable existe avant de déployer ou d'entraîner. Utilisez cette compétence chaque fois que vous êtes sur le point de créer un point de terminaison, un modèle, un entraînement SageMaker…
official
aspnet-minimal-api-openapi
github
Points de terminaison d'API minimalistes ASP.NET avec documentation automatique OpenAPI/Swagger et typage fort. Organisez les points de terminaison à l'aide de MapGroup(), de filtres de point de terminaison et de structures de dossiers basées sur les fonctionnalités pour l'évolutivité. Définissez des DTO de requête/réponse explicites avec des attributs de validation ; utilisez des types d'enregistrement et TypedResults pour la sécurité des types. Exploitez la prise en charge intégrée d'OpenAPI dans .NET 9 avec des résumés d'opérations, des descriptions, des operationIds et une documentation au niveau des propriétés via [Description()]. Appliquez le document et le schéma...
official
greeter
google-gemini
Une compétence d'accueil amicale
official
release
remotion-dev
Publier une nouvelle version de Remotion
official
guidelines
microsoft
Collection de règles de migration et de motifs de transformation entre frameworks (ex. : Struts→Spring MVC, JSP→Thymeleaf, EJB→Spring Boot). Déclencheurs : « vérifier…
official
apify-actorization
apify
Convertissez des projets existants en Apify Actors - programmes cloud serverless. Actorisez JavaScript/TypeScript (SDK avec Actor.init/exit), Python (contexte asynchrone…
official
sector-overview
anthropic
Créer des rapports complets sur le paysage industriel et sectoriel couvrant la dynamique du marché, le positionnement concurrentiel, les acteurs clés et les tendances thématiques. Utiliser pour les clients…
official
weekly-report
anthropic
Structure et sources de données pour le rapport d'inventaire hebdomadaire. Chargez ceci lorsque la tâche est "rapport hebdomadaire", "rapport du lundi" ou "résumer l'état de l'inventaire".
official