D1 Drizzle Schema
Drizzle-scheman för Cloudflare D1 med korrekta boolean-, timestamp-, JSON- och parameterbegränsningar
Testad · Fungerar
Vad den gör
Genererar Drizzle ORM-schemafiler för Cloudflare D1-databaser med D1-korrekta kolumnmönster: integer-läge booleans och timestamps, typade JSON-kolumner, enum-begränsad text, UUID primärnycklar, relationer och härledda typexporter. Tillhandahåller även drizzle.config.ts-mallen, wrangler-migreringsskript, och ett batchmönster som håller bulk-insättningar under D1:s 100 bundna-parametergräns. Utlöses vid skapande av en D1-databas, tillägg av tabeller, eller scaffolding av ett D1-datalager i en Worker.
Testrapport
Installeras i en temporär HOME (export HOME=$(mktemp -d)); SKILL.md hamnade på ~/.claude/skills/d1-drizzle-schema/SKILL.md med alla 4 refererade filer närvarande (var och en råhämtades HTTP 200), frontmatter har name+description, inga curl|sh, base64 eller hemlighetsläsningsmönster. Uppgift: schema för en D1 support-ticket-app (organisations/users/tickets) plus en bulk-ticket-importör — jag skrev en baslinje först (/tmp/.../baseline-schema.ts), sedan en färdighetsföljande version (skill-schema.ts), installerade drizzle-orm 0.45.2 + typescript och kompilerade båda i strikt läge (tsc exit 0), tvingade sedan never-assignment-fel för att läsa de härledda kolumntyperna. Mätt skillnad: baslinjens createdAt är `string | null`, färdighetens är `Date`; baslinjens isActive `number | null` vs färdighetens `boolean`; baslinjens tags `string | null` vs färdighetens `TicketTags | null`; baslinjens status `string` vs färdighetens `"closed" | "open" | "pending"`. Körde båda bulk-insättningarna genom sqlite-proxy-dialektens toSQL(): baslinjen genererar ETT uttalande med 160 bundna parametrar (över D1:s 100-gräns), färdighetens batchade loop genererar 84/84/72 — den konkreta funktionella vinsten. Dokumentation avdragen en poäng: beskrivningen lovar DATABASE_SCHEMA.md-utdata men Steg 7 ger endast en fyrpunktsöversikt utan mall, och jag utövade den inte.
Testad: 2026-07-21 · Claude Code 2.x (agent harness)
Installation
git clone --depth 1 https://github.com/jezweb/claude-skills.git /tmp/d1-drizzle-schema-src
mkdir -p ~/.claude/skills
cp -R /tmp/d1-drizzle-schema-src/plugins/cloudflare/skills/d1-drizzle-schema ~/.claude/skills/d1-drizzle-schema
# Ships SKILL.md + assets/{drizzle-config-template.ts,schema-template.ts} + references/{column-patterns.md,d1-specifics.md}
# No API keys or external services needed to generate the schema.
# To actually run migrations afterwards you need: npm i drizzle-orm drizzle-kit && npx wrangler (Cloudflare account + a D1 binding named DB)
# Plugin-marketplace alternative: /plugin marketplace add jezweb/claude-skills then /plugin install cloudflare@jezweb-skills Kommandon och exempelprompter
/d1-drizzle-schemaDrizzle-scheman för Cloudflare D1 med korrekta boolean-, timestamp-, JSON- och parameterbegränsningar
Skills triggas av vanliga förfrågningar — inga kommandon att memorera. Efter installationen aktiverar prompter som dessa skillen (på engelska):
Create a Drizzle schema for a new D1 databaseAdd a table with foreign keys to my D1 schemaScaffold a data layer for this Cloudflare D1 project