{
  "gem": {
    "slug": "kanel-vg-0876",
    "name": "Kanel",
    "description": "Reads a live PostgreSQL schema and generates TypeScript interfaces, branded ID types and Zod schemas for every table and view.",
    "url": "https://github.com/kristiandupont/kanel",
    "domain": "github.com",
    "author": "Kristian Dupont (@kristiandupont)",
    "license": "MIT",
    "category": "Dev Utilities & Vibe-Coding Tooling",
    "subcategory": "Database tooling",
    "tags": [
      "postgres",
      "codegen",
      "typescript",
      "types"
    ],
    "whyGem": "Database-first typing without an ORM. Branded key types stop cross-table ID mixups.",
    "sourceType": "github",
    "image": "/api/public/library/og/VG-0876-480.webp",
    "pageUrl": "https://vibing.inc/library/kanel-vg-0876"
  }
}