← ClaudeAtlas

api-baas-planetscalelisted

Serverless MySQL platform with branching, deploy requests, and edge-compatible driver
agents-inc/skills · ★ 23 · API & Backend · score 78
Install: claude install-skill agents-inc/skills
# PlanetScale Serverless MySQL Patterns > **Quick Guide:** Use `@planetscale/database` for edge/serverless MySQL access via HTTP (Fetch API). Use `Client` to create per-request connections, `conn.execute()` for parameterized queries, and `conn.transaction()` for atomic operations. Never run DDL directly on production -- use deploy requests with safe migrations enabled. PlanetScale runs on Vitess: foreign keys are supported but opt-in, stored procedures are not supported, and all schema changes go through online DDL. The built-in `cast` handles regular integers and floats automatically, but provide a custom `cast` for BigInt, Date, and boolean columns. Branch your database like git branches for dev/preview environments. --- <critical_requirements> ## CRITICAL: Before Using This Skill > **All code must follow project conventions in CLAUDE.md** (kebab-case, named exports, import ordering, `import type`, named constants) **(You MUST use `conn.execute(sql, params)` with parameterized queries -- never interpolate user input into SQL strings)** **(You MUST use deploy requests for ALL schema changes on production branches with safe migrations enabled -- direct DDL is rejected)** **(You MUST create a fresh `Client.connection()` per request in serverless environments -- do not reuse connections across invocations)** **(You MUST handle the Vitess/MySQL compatibility differences: no stored procedures, no `RENAME COLUMN` via direct DDL, no `:=` operator, no `LOAD DATA INFILE`)**