Skip to content

feat(docs): add Prisma Postgres vs Neon comparison and migration guide#7879

Open
aidankmcalister wants to merge 1 commit intomainfrom
feat/docs-prisma-postgres-vs-neon
Open

feat(docs): add Prisma Postgres vs Neon comparison and migration guide#7879
aidankmcalister wants to merge 1 commit intomainfrom
feat/docs-prisma-postgres-vs-neon

Conversation

@aidankmcalister
Copy link
Copy Markdown
Member

@aidankmcalister aidankmcalister commented May 7, 2026

Linear: DR-8353

Summary by CodeRabbit

  • Documentation
    • Restructured migration guide from Neon to Prisma Postgres with clearer numbered steps.
    • Added detailed instructions for database creation, data export using pg_dump, and data import with explicit commands and connection string formats.
    • Updated guide metadata and added reference to Prisma ORM quickstart for serverless configuration best practices.

@vercel
Copy link
Copy Markdown

vercel Bot commented May 7, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
blog Ready Ready Preview, Comment May 7, 2026 6:48pm
docs Ready Ready Preview, Comment May 7, 2026 6:48pm
eclipse Ready Ready Preview, Comment May 7, 2026 6:48pm
site Ready Ready Preview, Comment May 7, 2026 6:48pm

Request Review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 7, 2026

Review Change Stack

Walkthrough

Documentation guide for migrating from Neon to Prisma Postgres restructured into a clearly numbered four-step process with explicit commands for exporting, importing, and updating applications. Page metadata updated for clarity.

Changes

Migration Guide Restructuring

Layer / File(s) Summary
Page Metadata
apps/docs/content/docs/guides/switch-to-prisma-postgres/from-neon.mdx
Front-matter description, metaTitle, and metaDescription refreshed for improved clarity.
Migration Workflow Steps
apps/docs/content/docs/guides/switch-to-prisma-postgres/from-neon.mdx
Migration instructions reorganized into Steps 1–4: creating a Prisma Postgres database; exporting from Neon with explicit non-pooled connection string (sslmode=require) and pg_dump command; importing into Prisma Postgres with pg_restore (--no-owner, --no-acl) and clarification of the benign public schema warning; updating the application with DATABASE_URL and a tip linking to Prisma ORM serverless best practices.
Supporting Content
apps/docs/content/docs/guides/switch-to-prisma-postgres/from-neon.mdx
Trademark information admonition block maintained after the serverless best practices guidance.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: updating documentation for migration from Neon to Prisma Postgres with restructured numbered steps and clearer guidance.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 7, 2026

🍈 Lychee Link Check Report

7 links: ✅ 0 OK | 🚫 0 errors | 🔀 2 redirects | 👻 5 excluded

✅ All links are working!


Full Statistics Table
Status Count
✅ Successful 0
🔀 Redirected 2
👻 Excluded 5
🚫 Errors 0
⛔ Unsupported 0
⏳ Timeouts 0
❓ Unknown 0

@argos-ci
Copy link
Copy Markdown

argos-ci Bot commented May 7, 2026

The latest updates on your projects. Learn more about Argos notifications ↗︎

Build Status Details Updated (UTC)
default (Inspect) ✅ No changes detected - May 7, 2026, 6:59 PM

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
apps/docs/content/docs/guides/switch-to-prisma-postgres/from-neon.mdx (1)

223-225: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Make the DATABASE_URL example unambiguously non-literal.

Line 224 reads like a complete value and is easy to paste unchanged. Prefer an explicit placeholder that tells readers to reuse the exact connection string from Step 1.

Suggested doc tweak
-DATABASE_URL="postgres://USER:PASSWORD@db.prisma.io:5432/?sslmode=require"
+DATABASE_URL="<DIRECT_CONNECTION_STRING_FROM_STEP_1>"
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/docs/content/docs/guides/switch-to-prisma-postgres/from-neon.mdx` around
lines 223 - 225, Update the .env example so the DATABASE_URL value is clearly a
non-literal placeholder rather than a ready-to-paste connection string: replace
the current example value in the `.env` code block (the DATABASE_URL line) with
an explicit placeholder form (e.g. using <USER>, <PASSWORD>, <HOST>, <DBNAME> or
a note to reuse the exact connection string from Step 1) and add a short
clarifying comment in the same snippet telling readers to substitute their real
credentials or reuse the connection string obtained in Step 1.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@apps/docs/content/docs/guides/switch-to-prisma-postgres/from-neon.mdx`:
- Around line 23-25: Update the two table cells that list Neon details: change
the "Postgres version" cell (the table row with "**Postgres version**") from
"16, 17" to "14, 15, 16, 17, 18 (preview)" and change the "Available regions"
cell (the row with "**Available regions**") from "11 regions (8 AWS, 3 Azure)"
to "8 AWS regions" and list the regions: "us-east-1, us-east-2, us-west-2,
eu-central-1, eu-west-2, ap-southeast-1, ap-southeast-2, sa-east-1". Ensure you
only modify those two cells and leave other content (including lines 84–90)
unchanged.

---

Outside diff comments:
In `@apps/docs/content/docs/guides/switch-to-prisma-postgres/from-neon.mdx`:
- Around line 223-225: Update the .env example so the DATABASE_URL value is
clearly a non-literal placeholder rather than a ready-to-paste connection
string: replace the current example value in the `.env` code block (the
DATABASE_URL line) with an explicit placeholder form (e.g. using <USER>,
<PASSWORD>, <HOST>, <DBNAME> or a note to reuse the exact connection string from
Step 1) and add a short clarifying comment in the same snippet telling readers
to substitute their real credentials or reuse the connection string obtained in
Step 1.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 904f0828-4ad2-47fa-b3fe-597a15681e2c

📥 Commits

Reviewing files that changed from the base of the PR and between 701c5f6 and 1469160.

📒 Files selected for processing (1)
  • apps/docs/content/docs/guides/switch-to-prisma-postgres/from-neon.mdx

Comment on lines +23 to +25
| **Postgres version** | 17 | 16, 17 |
| **Available regions** | 6 regions | 11 regions (8 AWS, 3 Azure) |

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

🧩 Analysis chain

🌐 Web query:

`Please verify current official values for Prisma Postgres vs Neon on:

  1. supported Postgres versions,
  2. available regions,
  3. pooled/direct connection limits by plan,
  4. free-tier quotas,
  5. autosuspend defaults and disablement by plan.
    Use only official Prisma and Neon docs/pricing pages.`

💡 Result:

Prisma Postgres vs Neon: Current official values (as of 2026-05-07). 1) Supported Postgres versions: Prisma Postgres: PostgreSQL v17.[1] Neon: Postgres 14, 15, 16, 17, 18 (preview).[2][3] 2) Available regions: Prisma Postgres: us-west-1 (San Francisco), us-east-1 (North Virginia), eu-west-3 (Paris), eu-central-1 (Frankfurt), ap-northeast-1 (Tokyo), ap-southeast-1 (Singapore).[4] Neon: AWS regions: us-east-1 (N. Virginia), us-east-2 (Ohio), us-west-2 (Oregon), eu-central-1 (Frankfurt), eu-west-2 (London), ap-southeast-1 (Singapore), ap-southeast-2 (Sydney), sa-east-1 (São Paulo). Azure regions deprecated as of Apr 2026.[5] 3) Pooled/direct connection limits by plan: Prisma Postgres (concurrent limits; idle pooled closed after 60min; 5 direct reserved for platform): Free/Starter: Pooled 50, Direct 10[6] Pro: Pooled 250, Direct 50[6] Business: Pooled 500, Direct 100[6] (Note: Some pages show lower pooled for Free like 10, but detailed docs confirm 50.[6][7]) Neon: PgBouncer pooled: max_client_conn 10,000; default_pool_size 90% of max_connections (varies by compute size, e.g. 0.25GB:5, 1GB:104, 2GB:20? snippet partial); max_connections varies by compute size (1000 for pooled?). No per-plan limits specified; applies to all plans.[8] 4) Free-tier quotas: Prisma Postgres (Free plan): First 60,000 operations free, then $0.0080 per 1,000 ops. No storage mentioned as free limit (usage-based).[7] Neon (Free plan, per project): 100 CU-hours compute, 0.5 GB storage, 5 GB egress, 100 projects, 10 branches/project. Compute suspends on limits.[9][10] 5) Autosuspend defaults and disablement by plan: Prisma Postgres: No autosuspend/scale-to-zero mentioned in docs.[1] Neon (scale-to-zero after inactivity): Free: After 5 min (not configurable, always on).[9] Launch: After 5 min, can be disabled.[9] Scale: Configurable (1 min to always on).[9]

Citations:


🏁 Script executed:

head -90 apps/docs/content/docs/guides/switch-to-prisma-postgres/from-neon.mdx | tail -70 | cat -n

Repository: prisma/web

Length of output: 5721


🏁 Script executed:

sed -n '80,95p' apps/docs/content/docs/guides/switch-to-prisma-postgres/from-neon.mdx | cat -n

Repository: prisma/web

Length of output: 1841


Update Neon version and region claims to reflect current facts.

Lines 23 and 25 contain outdated information:

  • Line 23 (Postgres versions): Neon supports PostgreSQL 14, 15, 16, 17, and 18 (preview), not just "16, 17". Update the table to reflect this fuller support.
  • Line 25 (Available regions): Neon's Azure regions were deprecated as of April 2026. Update from "11 regions (8 AWS, 3 Azure)" to "8 AWS regions" (us-east-1, us-east-2, us-west-2, eu-central-1, eu-west-2, ap-southeast-1, ap-southeast-2, sa-east-1).

Lines 84–90 are accurate and require no changes.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@apps/docs/content/docs/guides/switch-to-prisma-postgres/from-neon.mdx` around
lines 23 - 25, Update the two table cells that list Neon details: change the
"Postgres version" cell (the table row with "**Postgres version**") from "16,
17" to "14, 15, 16, 17, 18 (preview)" and change the "Available regions" cell
(the row with "**Available regions**") from "11 regions (8 AWS, 3 Azure)" to "8
AWS regions" and list the regions: "us-east-1, us-east-2, us-west-2,
eu-central-1, eu-west-2, ap-southeast-1, ap-southeast-2, sa-east-1". Ensure you
only modify those two cells and leave other content (including lines 84–90)
unchanged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant