Summary
Add PlanetScale as a database option — a serverless MySQL-compatible platform with a branch-based workflow.
Why
PlanetScale is a popular managed MySQL provider with its own serverless driver (@planetscale/database) that works in edge runtimes.
It pairs naturally with Hono and Cloudflare Workers.
Files to generate
src/db/client.ts — PlanetScale connect() client
.env.example — DATABASE_HOST, DATABASE_USERNAME, DATABASE_PASSWORD
Implementation hints
-
Add packages/modules/src/database/planetscale.ts
→ closest analogue is mysql.ts
-
Key dependency:
-
No migration file needed
(PlanetScale manages schema via branching — note this in a comment inside client.ts)
-
Register in same places as other database modules
Contributor guidance
Refer to CONTRIBUTING.md → "Adding a New Module"
Acceptance criteria
Summary
Add PlanetScale as a database option — a serverless MySQL-compatible platform with a branch-based workflow.
Why
PlanetScale is a popular managed MySQL provider with its own serverless driver (
@planetscale/database) that works in edge runtimes.It pairs naturally with Hono and Cloudflare Workers.
Files to generate
src/db/client.ts— PlanetScaleconnect()client.env.example—DATABASE_HOST,DATABASE_USERNAME,DATABASE_PASSWORDImplementation hints
Add
packages/modules/src/database/planetscale.ts→ closest analogue is
mysql.tsKey dependency:
@planetscale/databaseNo migration file needed
(PlanetScale manages schema via branching — note this in a comment inside
client.ts)Register in same places as other database modules
Contributor guidance
Refer to CONTRIBUTING.md → "Adding a New Module"
Acceptance criteria
foundation createlists PlanetScale as a database optionclient.tstype-checks cleanly