Skip to content

feat(blog): add Prisma Next ltree extension post#8085

Open
slovakian wants to merge 1 commit into
prisma:mainfrom
slovakian:feat/blog-prisma-next-ltree-extension
Open

feat(blog): add Prisma Next ltree extension post#8085
slovakian wants to merge 1 commit into
prisma:mainfrom
slovakian:feat/blog-prisma-next-ltree-extension

Conversation

@slovakian

@slovakian slovakian commented Jul 17, 2026

Copy link
Copy Markdown

Publish community post on prisma-ltree for Prisma Next, plus Jason Procka author avatar and bio.

Summary by CodeRabbit

  • New Content

    • Added a guide explaining how to use typed PostgreSQL hierarchical path queries with Prisma Next.
    • Included examples for querying descendants, ancestors, direct children, and intersecting branches.
    • Documented setup requirements, performance considerations, limitations, and available references.
  • Authors

    • Added Jason Procka’s biography and social links to the blog author directory.

Publish community post on prisma-ltree for Prisma Next, plus Jason Procka author avatar and bio.
@vercel

vercel Bot commented Jul 17, 2026

Copy link
Copy Markdown

@slovakian is attempting to deploy a commit to the Prisma Team on Vercel.

A member of the Team first needs to authorize it.

@coderabbitai

coderabbitai Bot commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Walkthrough

Adds a technical blog post covering Prisma Next integration with PostgreSQL ltree, including setup, schema definition, migrations, and hierarchy queries. It also registers Jason Procka’s author biography and social links.

Changes

Prisma Next ltree blog

Layer / File(s) Summary
Article metadata and author registration
apps/blog/content/blog/prisma-next-ltree-extension/index.mdx, apps/blog/src/lib/author-bios.ts
Adds the article metadata and introductory content, and registers Jason Procka with biography and social links.
Extension setup and schema integration
apps/blog/content/blog/prisma-next-ltree-extension/index.mdx
Documents package installation, Prisma Next control and runtime registration, ltree field definitions, and database initialization.
Hierarchy queries and usage constraints
apps/blog/content/blog/prisma-next-ltree-extension/index.mdx
Documents path insertion, descendant, direct-child, and lca queries, operator guidance, Early Access limitations, and indexing constraints.

Estimated code review effort: 2 (Simple) | ~15 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 clearly summarizes the main change: a new blog post about the Prisma Next ltree extension.
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.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
⚔️ Resolve merge conflicts
  • Resolve merge conflict in branch feat/blog-prisma-next-ltree-extension

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@coderabbitai coderabbitai Bot left a comment

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.

Actionable comments posted: 2

🧹 Nitpick comments (1)
apps/blog/content/blog/prisma-next-ltree-extension/index.mdx (1)

161-161: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value

Consider using a shorter alternative.

The phrase "by accident" can be simplified to "accidentally".

♻️ Proposed fix
-`*{1}` means exactly one label at that position, so `essays.*{1}` matches direct children such as `essays.drafts` and skips deeper paths like `essays.drafts.chapter_1`. A bare `essays.*` looks almost the same and is easy to type by accident, but `*` means zero or more labels, so it also matches `essays` itself and deeper paths like that grandchild. That footgun belongs to `lquery`, and the pack does not hide it.
+`*{1}` means exactly one label at that position, so `essays.*{1}` matches direct children such as `essays.drafts` and skips deeper paths like `essays.drafts.chapter_1`. A bare `essays.*` looks almost the same and is easy to type accidentally, but `*` means zero or more labels, so it also matches `essays` itself and deeper paths like that grandchild. That footgun belongs to `lquery`, and the pack does not hide it.
🤖 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/blog/content/blog/prisma-next-ltree-extension/index.mdx` at line 161, In
the explanatory paragraph, replace the phrase “easy to type by accident” with
the shorter wording “easy to type accidentally,” leaving the surrounding lquery
behavior and examples unchanged.

Source: Linters/SAST tools

🤖 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/blog/content/blog/prisma-next-ltree-extension/index.mdx`:
- Line 45: Remove the low-level “use Node 24+” requirement from the introductory
setup guidance, while retaining the relevant `@prisma-next` version pin and setup
context in the pack overview.
- Line 10: Remove the unsupported heroImageAlt frontmatter property from the
blog post metadata, leaving the remaining frontmatter unchanged.

---

Nitpick comments:
In `@apps/blog/content/blog/prisma-next-ltree-extension/index.mdx`:
- Line 161: In the explanatory paragraph, replace the phrase “easy to type by
accident” with the shorter wording “easy to type accidentally,” leaving the
surrounding lquery behavior and examples unchanged.
🪄 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: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 2351c464-e82b-4780-b779-0918c010d323

📥 Commits

Reviewing files that changed from the base of the PR and between 13984ed and 2c51282.

⛔ Files ignored due to path filters (3)
  • apps/blog/public/authors/jason-procka.png is excluded by !**/*.png
  • apps/blog/public/prisma-next-ltree-extension/imgs/hero.svg is excluded by !**/*.svg
  • apps/blog/public/prisma-next-ltree-extension/imgs/meta.png is excluded by !**/*.png
📒 Files selected for processing (2)
  • apps/blog/content/blog/prisma-next-ltree-extension/index.mdx
  • apps/blog/src/lib/author-bios.ts

metaTitle: "Extending Prisma Next with Typed Postgres ltree"
metaDescription: "Use PostgreSQL ltree in Prisma Next with prisma-ltree: typed path columns plus ancestor and descendant queries."
heroImagePath: "/prisma-next-ltree-extension/imgs/hero.svg"
heroImageAlt: "Typed ltree for Prisma Next: the prisma-ltree extension pack shown as a hierarchical path tree"

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.

🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

Remove unsupported frontmatter property.

The heroImageAlt property is not defined in the frontmatterSchema for blog posts in apps/blog/source.config.ts (as seen in Context snippet 1). Depending on the Zod schema's configuration, this will either be silently ignored during parsing or cause a build-time validation error.

♻️ Proposed fix
-heroImageAlt: "Typed ltree for Prisma Next: the prisma-ltree extension pack shown as a hierarchical path tree"
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
heroImageAlt: "Typed ltree for Prisma Next: the prisma-ltree extension pack shown as a hierarchical path tree"
🤖 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/blog/content/blog/prisma-next-ltree-extension/index.mdx` at line 10,
Remove the unsupported heroImageAlt frontmatter property from the blog post
metadata, leaving the remaining frontmatter unchanged.


## Using `ltree` with Prisma Next

A pack is an extension package that contributes types, migrations, and runtime operators to Prisma Next. `prisma-ltree` plugs in the same way other Postgres extension packages do (`pgvector`, `postgis`). Setup is six steps. The samples below match the pack's `examples/family-tree` app: pin `@prisma-next/*` to `0.14.0` and use Node 24+.

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.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Remove low-level system requirements.

Based on learnings, avoid including low-level compatibility or version-matrix details like "use Node 24+" unless those specifics materially improve correctness or prevent a real reader-facing misunderstanding. Consider removing the Node requirement to keep the guidance clear and actionable, as package managers typically handle engine requirements automatically.

♻️ Proposed fix
-A pack is an extension package that contributes types, migrations, and runtime operators to Prisma Next. `prisma-ltree` plugs in the same way other Postgres extension packages do (`pgvector`, `postgis`). Setup is six steps. The samples below match the pack's `examples/family-tree` app: pin `@prisma-next/*` to `0.14.0` and use Node 24+.
+A pack is an extension package that contributes types, migrations, and runtime operators to Prisma Next. `prisma-ltree` plugs in the same way other Postgres extension packages do (`pgvector`, `postgis`). Setup is six steps. The samples below match the pack's `examples/family-tree` app: pin `@prisma-next/*` to `0.14.0`.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
A pack is an extension package that contributes types, migrations, and runtime operators to Prisma Next. `prisma-ltree` plugs in the same way other Postgres extension packages do (`pgvector`, `postgis`). Setup is six steps. The samples below match the pack's `examples/family-tree` app: pin `@prisma-next/*` to `0.14.0` and use Node 24+.
A pack is an extension package that contributes types, migrations, and runtime operators to Prisma Next. `prisma-ltree` plugs in the same way other Postgres extension packages do (`pgvector`, `postgis`). Setup is six steps. The samples below match the pack's `examples/family-tree` app: pin `@prisma-next/*` to `0.14.0`.
🤖 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/blog/content/blog/prisma-next-ltree-extension/index.mdx` at line 45,
Remove the low-level “use Node 24+” requirement from the introductory setup
guidance, while retaining the relevant `@prisma-next` version pin and setup
context in the pack overview.

Source: Learnings

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