New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@prisma/adapter-planetscale

Package Overview
Dependencies
Maintainers
4
Versions
1995
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@prisma/adapter-planetscale

Prisma's driver adapter for "@planetscale/database"

  • 6.3.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
10K
decreased by-2.11%
Maintainers
4
Weekly downloads
 
Created
Source

Prisma driver adapter for PlanetScale serverless driver

Prisma driver adapter for PlanetScale Serverless Driver. Refer to the announcement blog post and our docs for more details.

Note:: Support for PlanetScale's serverless driver is available from Prisma versions 5.4.2 and later.

PlanetScale's serverless driver provides a way of communicating with your PlanetScale database over HTTP which can improve connection reliability and performance

Getting started

To get started, enable the driverAdapters Preview feature in your Prisma schema:

// schema.prisma
generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["driverAdapters"]
}

datasource db {
  provider     = "mysql"
  url          = env("DATABASE_URL")
  relationMode = "prisma"
}

Note: Ensure you update the host value in your connection string to aws.connect.psdb.cloud. You can learn more about this here.

DATABASE_URL="mysql://user:password@aws.connect.psdb.cloud/database_name?sslaccept=strict"

Generate Prisma Client:

npx prisma generate

Install the Prisma adapter for PlanetScale, PlanetScale serverless driver and undici packages:

npm install @prisma/adapter-planetscale
npm install @planetscale/database
npm install undici

Note: When using a Node.js version below 18, you must provide a custom fetch function implementation. We recommend the undici package on which Node's built-in fetch is based. Node.js versions 18 and later include a built-in global fetch function, so you don't have to install an extra package.

Update your Prisma Client instance to use the PlanetsScale serverless driver:

// Import needed packages
import { Client } from '@planetscale/database'
import { PrismaPlanetScale } from '@prisma/adapter-planetscale'
import { PrismaClient } from '@prisma/client'
import { fetch as undiciFetch } from 'undici'

// Setup
const connectionString = `${process.env.DATABASE_URL}`

// Init prisma client
const client = new Client({ url: connectionString, fetch: undiciFetch })
const adapter = new PrismaPlanetScale(client)
const prisma = new PrismaClient({ adapter })

// Use Prisma Client as normal

You can now use Prisma Client as you normally would with full type-safety. Your Prisma Client instance now uses PlanetScale's serverless driver to connect to your database.

Feedback

We encourage you to create an issue if you find something missing or run into a bug.

If you have any feedback, leave a comment in this GitHub discussion.

FAQs

Package last updated on 28 Jan 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc