{
  "version": "0.33.0",
  "generated": "scripts/sync-catalog.ts",
  "components": [
    {
      "tag": "roxy-natal-chart",
      "pascal": "RoxyNatalChart",
      "slug": "natal-chart",
      "domain": "Western",
      "renders": "Natal chart wheel with planet glyphs and aspect lines",
      "endpointLabel": "POST /astrology/natal-chart",
      "endpoints": [
        {
          "operationId": "generateNatalChart",
          "method": "POST",
          "path": "/astrology/natal-chart"
        }
      ],
      "parts": [
        "aspect-grid",
        "aspects",
        "attribution",
        "card",
        "chart",
        "details",
        "edit-bar",
        "element-modality",
        "empty",
        "error",
        "form",
        "header",
        "legend",
        "loading",
        "panel",
        "pattern",
        "patterns",
        "reading",
        "readings",
        "section",
        "tab",
        "table",
        "tablist"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-natal-chart data-endpoint=\"astrology/natal-chart\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-natal-chart>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"natal-chart\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/natal-chart-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/natal-chart-dark.webp"
      }
    },
    {
      "tag": "roxy-synastry-chart",
      "pascal": "RoxySynastryChart",
      "slug": "synastry-chart",
      "domain": "Western",
      "renders": "Dual-wheel synastry with inter-aspects table",
      "endpointLabel": "POST /astrology/synastry",
      "endpoints": [
        {
          "operationId": "calculateSynastry",
          "method": "POST",
          "path": "/astrology/synastry"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "chart",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "inter-aspects",
        "legend",
        "loading",
        "reading",
        "section",
        "strengths-challenges",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-synastry-chart data-endpoint=\"astrology/synastry\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-synastry-chart>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"synastry-chart\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/synastry-chart-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/synastry-chart-dark.webp"
      }
    },
    {
      "tag": "roxy-western-planets-table",
      "pascal": "RoxyWesternPlanetsTable",
      "slug": "western-planets-table",
      "domain": "Western",
      "renders": "Sign, degree, house, motion columns plus ASC, MC, PoF, Vertex",
      "endpointLabel": "POST /astrology/natal-chart",
      "endpoints": [
        {
          "operationId": "generateNatalChart",
          "method": "POST",
          "path": "/astrology/natal-chart"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-western-planets-table data-endpoint=\"astrology/natal-chart\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-western-planets-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"western-planets-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/western-planets-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/western-planets-table-dark.webp"
      }
    },
    {
      "tag": "roxy-transits-table",
      "pascal": "RoxyTransitsTable",
      "slug": "transits-table",
      "domain": "Western",
      "renders": "Transit planet positions plus optional aspects to a natal chart",
      "endpointLabel": "POST /astrology/transits",
      "endpoints": [
        {
          "operationId": "calculateTransits",
          "method": "POST",
          "path": "/astrology/transits"
        }
      ],
      "parts": [
        "aspects",
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "panel",
        "reading",
        "section",
        "tab",
        "table",
        "tablist"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-transits-table data-endpoint=\"astrology/transits\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-transits-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"transits-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/transits-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/transits-table-dark.webp"
      }
    },
    {
      "tag": "roxy-transit-wheel",
      "pascal": "RoxyTransitWheel",
      "slug": "transit-wheel",
      "domain": "Western",
      "renders": "Natal chart on the inner ring, transiting bodies on the outer ring, aspect lines between them",
      "endpointLabel": "POST /astrology/transit-aspects",
      "endpoints": [
        {
          "operationId": "calculateTransitAspects",
          "method": "POST",
          "path": "/astrology/transit-aspects"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "chart",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "legend",
        "loading",
        "reading",
        "readings",
        "section",
        "strongest",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-transit-wheel data-endpoint=\"astrology/transit-aspects\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-transit-wheel>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"transit-wheel\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/transit-wheel-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/transit-wheel-dark.webp"
      }
    },
    {
      "tag": "roxy-aspects-table",
      "pascal": "RoxyAspectsTable",
      "slug": "aspects-table",
      "domain": "Western",
      "renders": "Aspect rows coloured by nature with orb and strength, plus detected chart patterns",
      "endpointLabel": "POST /astrology/aspects, /astrology/transit-aspects, /astrology/aspect-patterns",
      "endpoints": [
        {
          "operationId": "calculateAspects",
          "method": "POST",
          "path": "/astrology/aspects"
        },
        {
          "operationId": "calculateTransitAspects",
          "method": "POST",
          "path": "/astrology/transit-aspects"
        },
        {
          "operationId": "detectAspectPatterns",
          "method": "POST",
          "path": "/astrology/aspect-patterns"
        }
      ],
      "parts": [
        "aspects",
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "pattern",
        "patterns",
        "reading",
        "section",
        "strongest"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-aspects-table data-endpoint=\"astrology/aspects\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-aspects-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"aspects-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/aspects-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/aspects-table-dark.webp"
      }
    },
    {
      "tag": "roxy-moon-phase",
      "pascal": "RoxyMoonPhase",
      "slug": "moon-phase",
      "domain": "Western",
      "renders": "Moon phase card and calendar",
      "endpointLabel": "GET /astrology/moon-phase/{current,upcoming,calendar/...}",
      "endpoints": [
        {
          "operationId": "getCurrentMoonPhase",
          "method": "GET",
          "path": "/astrology/moon-phase/current",
          "attrs": {
            "mode": "current"
          }
        },
        {
          "operationId": "getUpcomingMoonPhases",
          "method": "GET",
          "path": "/astrology/moon-phase/upcoming",
          "attrs": {
            "mode": "upcoming"
          }
        },
        {
          "operationId": "getMoonCalendar",
          "method": "GET",
          "path": "/astrology/moon-phase/calendar/{year}/{month}",
          "attrs": {
            "mode": "calendar"
          }
        }
      ],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-moon-phase mode=\"current\" data-endpoint=\"astrology/moon-phase/current\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-moon-phase>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"moon-phase\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/moon-phase-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/moon-phase-dark.webp"
      }
    },
    {
      "tag": "roxy-horoscope-card",
      "pascal": "RoxyHoroscopeCard",
      "slug": "horoscope-card",
      "domain": "Western",
      "renders": "Daily, weekly, or monthly horoscope card",
      "endpointLabel": "GET /astrology/horoscope/{sign}/{daily,weekly,monthly}",
      "endpoints": [
        {
          "operationId": "getDailyHoroscope",
          "method": "GET",
          "path": "/astrology/horoscope/{sign}/daily",
          "attrs": {
            "period": "daily"
          }
        },
        {
          "operationId": "getWeeklyHoroscope",
          "method": "GET",
          "path": "/astrology/horoscope/{sign}/weekly",
          "attrs": {
            "period": "weekly"
          }
        },
        {
          "operationId": "getMonthlyHoroscope",
          "method": "GET",
          "path": "/astrology/horoscope/{sign}/monthly",
          "attrs": {
            "period": "monthly"
          }
        }
      ],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "key-dates",
        "loading",
        "outlook",
        "section",
        "sky",
        "week-by-week"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-horoscope-card period=\"daily\" data-endpoint=\"astrology/horoscope/{sign}/daily\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-horoscope-card>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"horoscope-card\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/horoscope-card-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/horoscope-card-dark.webp"
      }
    },
    {
      "tag": "roxy-astrocartography-map",
      "pascal": "RoxyAstrocartographyMap",
      "slug": "astrocartography-map",
      "domain": "Western",
      "renders": "World map of planetary MC, IC, Ascendant, and Descendant lines with per-line interpretations",
      "endpointLabel": "POST /astrology/astrocartography",
      "endpoints": [
        {
          "operationId": "generateAstrocartography",
          "method": "POST",
          "path": "/astrology/astrocartography"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "chart",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "legend",
        "loading",
        "reading",
        "readings",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-astrocartography-map data-endpoint=\"astrology/astrocartography\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-astrocartography-map>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"astrocartography-map\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/astrocartography-map-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/astrocartography-map-dark.webp"
      }
    },
    {
      "tag": "roxy-local-space-compass",
      "pascal": "RoxyLocalSpaceCompass",
      "slug": "local-space-compass",
      "domain": "Western",
      "renders": "Compass dial of planetary azimuth lines from the birthplace, dimmed below the horizon",
      "endpointLabel": "POST /astrology/local-space",
      "endpoints": [
        {
          "operationId": "generateLocalSpace",
          "method": "POST",
          "path": "/astrology/local-space"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "chart",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-local-space-compass data-endpoint=\"astrology/local-space\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-local-space-compass>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"local-space-compass\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/local-space-compass-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/local-space-compass-dark.webp"
      }
    },
    {
      "tag": "roxy-relocation-wheel",
      "pascal": "RoxyRelocationWheel",
      "slug": "relocation-wheel",
      "domain": "Western",
      "renders": "Relocated chart wheel plus the move geometry, angular planets, and planets that change house",
      "endpointLabel": "POST /astrology/relocation-chart",
      "endpoints": [
        {
          "operationId": "generateRelocationChart",
          "method": "POST",
          "path": "/astrology/relocation-chart"
        }
      ],
      "parts": [
        "angular-planets",
        "aspect-grid",
        "aspects",
        "attribution",
        "card",
        "changes",
        "chart",
        "details",
        "edit-bar",
        "element-modality",
        "empty",
        "error",
        "form",
        "header",
        "house-changes",
        "legend",
        "loading",
        "panel",
        "pattern",
        "patterns",
        "reading",
        "readings",
        "section",
        "stack",
        "tab",
        "table",
        "tablist"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-relocation-wheel data-endpoint=\"astrology/relocation-chart\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-relocation-wheel>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"relocation-wheel\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/relocation-wheel-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/relocation-wheel-dark.webp"
      }
    },
    {
      "tag": "roxy-positions-table",
      "pascal": "RoxyPositionsTable",
      "slug": "positions-table",
      "domain": "Western",
      "renders": "Body, sign, degree, and per-shape columns (house, motion, formula, or natal arc) plus each reading",
      "endpointLabel": "POST /astrology/asteroids, /astrology/lilith, /astrology/progressions, /astrology/solar-arc, /astrology/arabic-lots",
      "endpoints": [
        {
          "operationId": "generateAsteroids",
          "method": "POST",
          "path": "/astrology/asteroids"
        },
        {
          "operationId": "generateLilith",
          "method": "POST",
          "path": "/astrology/lilith"
        },
        {
          "operationId": "generateProgressions",
          "method": "POST",
          "path": "/astrology/progressions"
        },
        {
          "operationId": "generateSolarArc",
          "method": "POST",
          "path": "/astrology/solar-arc"
        },
        {
          "operationId": "calculateArabicLots",
          "method": "POST",
          "path": "/astrology/arabic-lots"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "reading",
        "readings",
        "section",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-positions-table data-endpoint=\"astrology/asteroids\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-positions-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"positions-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/positions-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/positions-table-dark.webp"
      }
    },
    {
      "tag": "roxy-ephemeris-table",
      "pascal": "RoxyEphemerisTable",
      "slug": "ephemeris-table",
      "domain": "Cross",
      "renders": "Per-body sign changes and retrograde windows for the month, over the full daily position grid",
      "endpointLabel": "POST /astrology/planets/monthly, /vedic-astrology/planetary-positions/monthly",
      "endpoints": [
        {
          "operationId": "getMonthlyTropicalEphemeris",
          "method": "POST",
          "path": "/astrology/planets/monthly"
        },
        {
          "operationId": "getMonthlyEphemeris",
          "method": "POST",
          "path": "/vedic-astrology/planetary-positions/monthly"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "changes",
        "daily",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "legend",
        "loading",
        "section",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-ephemeris-table data-endpoint=\"astrology/planets/monthly\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-ephemeris-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"ephemeris-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/ephemeris-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/ephemeris-table-dark.webp"
      }
    },
    {
      "tag": "roxy-fixed-stars",
      "pascal": "RoxyFixedStars",
      "slug": "fixed-stars",
      "domain": "Western",
      "renders": "Star to natal point conjunctions with readings, plus a catalog of position, magnitude, nature, and keywords",
      "endpointLabel": "POST /astrology/fixed-stars",
      "endpoints": [
        {
          "operationId": "generateFixedStars",
          "method": "POST",
          "path": "/astrology/fixed-stars"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "conjunctions",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "reading",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-fixed-stars data-endpoint=\"astrology/fixed-stars\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-fixed-stars>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"fixed-stars\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/fixed-stars-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/fixed-stars-dark.webp"
      }
    },
    {
      "tag": "roxy-profection-card",
      "pascal": "RoxyProfectionCard",
      "slug": "profection-card",
      "domain": "Western",
      "renders": "Profected house and sign for the year, the lord of the year, its natal placement, and the reading",
      "endpointLabel": "POST /astrology/profections",
      "endpoints": [
        {
          "operationId": "generateProfections",
          "method": "POST",
          "path": "/astrology/profections"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-profection-card data-endpoint=\"astrology/profections\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-profection-card>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"profection-card\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/profection-card-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/profection-card-dark.webp"
      }
    },
    {
      "tag": "roxy-compatibility-card",
      "pascal": "RoxyCompatibilityCard",
      "slug": "compatibility-card",
      "domain": "Cross",
      "renders": "Score card with category breakdown",
      "endpointLabel": "POST /astrology/compatibility-score, /numerology/compatibility, /biorhythm/compatibility",
      "endpoints": [
        {
          "operationId": "calculateCompatibility",
          "method": "POST",
          "path": "/astrology/compatibility-score",
          "attrs": {
            "mode": "astrology"
          }
        },
        {
          "operationId": "calculateNumCompatibility",
          "method": "POST",
          "path": "/numerology/compatibility",
          "attrs": {
            "mode": "numerology"
          }
        },
        {
          "operationId": "calculateBioCompatibility",
          "method": "POST",
          "path": "/biorhythm/compatibility",
          "attrs": {
            "mode": "biorhythm"
          }
        }
      ],
      "parts": [
        "aspect-breakdown",
        "attribution",
        "breakdown",
        "card",
        "details",
        "edit-bar",
        "element-balance",
        "empty",
        "error",
        "form",
        "header",
        "key-aspects",
        "loading",
        "reading",
        "readings",
        "section",
        "strengths-challenges"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-compatibility-card mode=\"astrology\" data-endpoint=\"astrology/compatibility-score\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-compatibility-card>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"compatibility-card\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/compatibility-card-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/compatibility-card-dark.webp"
      }
    },
    {
      "tag": "roxy-vedic-kundli",
      "pascal": "RoxyVedicKundli",
      "slug": "vedic-kundli",
      "domain": "Vedic",
      "renders": "South, North, or East Indian kundli with degree detail and optional Chandra Lagna view",
      "endpointLabel": "POST /vedic-astrology/birth-chart",
      "endpoints": [
        {
          "operationId": "generateBirthChart",
          "method": "POST",
          "path": "/vedic-astrology/birth-chart"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "chart",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "panel",
        "tab",
        "tablist"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-vedic-kundli data-endpoint=\"vedic-astrology/birth-chart\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-vedic-kundli>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"vedic-kundli\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/vedic-kundli-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/vedic-kundli-dark.webp"
      }
    },
    {
      "tag": "roxy-divisional-chart",
      "pascal": "RoxyDivisionalChart",
      "slug": "divisional-chart",
      "domain": "Vedic",
      "renders": "Generic divisional varga wheel from D2 Hora to D60 Shashtiamsa",
      "endpointLabel": "POST /vedic-astrology/{divisional-chart,navamsa}",
      "endpoints": [
        {
          "operationId": "generateDivisionalChart",
          "method": "POST",
          "path": "/vedic-astrology/divisional-chart"
        },
        {
          "operationId": "generateNavamsa",
          "method": "POST",
          "path": "/vedic-astrology/navamsa"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "chart",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "panel",
        "tab",
        "tablist"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-divisional-chart data-endpoint=\"vedic-astrology/divisional-chart\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-divisional-chart>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"divisional-chart\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/divisional-chart-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/divisional-chart-dark.webp"
      }
    },
    {
      "tag": "roxy-kp-chart",
      "pascal": "RoxyKpChart",
      "slug": "kp-chart",
      "domain": "Vedic (KP)",
      "renders": "Ascendant, cusps, planets and nodes with KP stellar hierarchy and house meanings",
      "endpointLabel": "POST /vedic-astrology/kp/chart",
      "endpoints": [
        {
          "operationId": "generateKpChart",
          "method": "POST",
          "path": "/vedic-astrology/kp/chart"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "legend",
        "loading",
        "panel",
        "tab",
        "table",
        "tablist"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-kp-chart data-endpoint=\"vedic-astrology/kp/chart\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-kp-chart>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"kp-chart\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/kp-chart-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/kp-chart-dark.webp"
      }
    },
    {
      "tag": "roxy-vedic-planets-table",
      "pascal": "RoxyVedicPlanetsTable",
      "slug": "vedic-planets-table",
      "domain": "Vedic",
      "renders": "Degree, nakshatra, pada, lord, bhava, Baladi, Jagradadi and Deeptadi columns",
      "endpointLabel": "POST /vedic-astrology/birth-chart",
      "endpoints": [
        {
          "operationId": "generateBirthChart",
          "method": "POST",
          "path": "/vedic-astrology/birth-chart"
        }
      ],
      "parts": [
        "attribution",
        "bhava-significations",
        "card",
        "combustion",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "planetary-war",
        "readings",
        "section",
        "table",
        "yogas"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-vedic-planets-table data-endpoint=\"vedic-astrology/birth-chart\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-vedic-planets-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"vedic-planets-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/vedic-planets-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/vedic-planets-table-dark.webp"
      }
    },
    {
      "tag": "roxy-kp-planets-table",
      "pascal": "RoxyKpPlanetsTable",
      "slug": "kp-planets-table",
      "domain": "Vedic (KP)",
      "renders": "Sub-lord and sub-sub-lord columns",
      "endpointLabel": "POST /vedic-astrology/kp/planets",
      "endpoints": [
        {
          "operationId": "getKpPlanets",
          "method": "POST",
          "path": "/vedic-astrology/kp/planets"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-kp-planets-table data-endpoint=\"vedic-astrology/kp/planets\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-kp-planets-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"kp-planets-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/kp-planets-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/kp-planets-table-dark.webp"
      }
    },
    {
      "tag": "roxy-kp-ruling-planets",
      "pascal": "RoxyKpRulingPlanets",
      "slug": "kp-ruling-planets",
      "domain": "Vedic (KP)",
      "renders": "Day lord, Moon/Lagna hierarchies, ruling planets, significators with house meanings",
      "endpointLabel": "POST /vedic-astrology/kp/ruling-planets",
      "endpoints": [
        {
          "operationId": "getKpRulingPlanets",
          "method": "POST",
          "path": "/vedic-astrology/kp/ruling-planets"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-kp-ruling-planets data-endpoint=\"vedic-astrology/kp/ruling-planets\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-kp-ruling-planets>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"kp-ruling-planets\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/kp-ruling-planets-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/kp-ruling-planets-dark.webp"
      }
    },
    {
      "tag": "roxy-ashtakavarga-grid",
      "pascal": "RoxyAshtakavargaGrid",
      "slug": "ashtakavarga-grid",
      "domain": "Vedic",
      "renders": "Sarva, Bhinna, and Shodhya Pinda views in a tabbed heatmap",
      "endpointLabel": "POST /vedic-astrology/ashtakavarga",
      "endpoints": [
        {
          "operationId": "calculateAshtakavarga",
          "method": "POST",
          "path": "/vedic-astrology/ashtakavarga"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "legend",
        "loading",
        "panel",
        "tab",
        "table",
        "tablist"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-ashtakavarga-grid data-endpoint=\"vedic-astrology/ashtakavarga\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-ashtakavarga-grid>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"ashtakavarga-grid\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/ashtakavarga-grid-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/ashtakavarga-grid-dark.webp"
      }
    },
    {
      "tag": "roxy-shadbala-table",
      "pascal": "RoxyShadbalaTable",
      "slug": "shadbala-table",
      "domain": "Vedic",
      "renders": "Six-fold planetary strength bar plus rupas and adequacy badge",
      "endpointLabel": "POST /vedic-astrology/shadbala",
      "endpoints": [
        {
          "operationId": "calculateShadbala",
          "method": "POST",
          "path": "/vedic-astrology/shadbala"
        }
      ],
      "parts": [
        "attribution",
        "bars",
        "card",
        "chart",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "legend",
        "loading"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-shadbala-table data-endpoint=\"vedic-astrology/shadbala\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-shadbala-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"shadbala-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/shadbala-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/shadbala-table-dark.webp"
      }
    },
    {
      "tag": "roxy-dasha-timeline",
      "pascal": "RoxyDashaTimeline",
      "slug": "dasha-timeline",
      "domain": "Vedic",
      "renders": "Vimshottari mahadasha, antardasha, pratyantardasha, sookshma and prana, drill-down at every level",
      "endpointLabel": "POST /vedic-astrology/dasha/{current,major,sub/...}",
      "endpoints": [
        {
          "operationId": "getMajorDashas",
          "method": "POST",
          "path": "/vedic-astrology/dasha/major",
          "attrs": {
            "period": "major"
          }
        },
        {
          "operationId": "getCurrentDasha",
          "method": "POST",
          "path": "/vedic-astrology/dasha/current",
          "attrs": {
            "period": "current"
          }
        },
        {
          "operationId": "getSubDashas",
          "method": "POST",
          "path": "/vedic-astrology/dasha/sub/{mahadasha}",
          "attrs": {
            "period": "sub"
          }
        },
        {
          "operationId": "getPratyantardashas",
          "method": "POST",
          "path": "/vedic-astrology/dasha/sub/{mahadasha}/{antardasha}",
          "attrs": {
            "period": "antara"
          }
        },
        {
          "operationId": "getSookshmaDashas",
          "method": "POST",
          "path": "/vedic-astrology/dasha/sub/{mahadasha}/{antardasha}/{pratyantardasha}",
          "attrs": {
            "period": "sookshma"
          }
        },
        {
          "operationId": "getPranaDashas",
          "method": "POST",
          "path": "/vedic-astrology/dasha/sub/{mahadasha}/{antardasha}/{pratyantardasha}/{sookshma}",
          "attrs": {
            "period": "prana"
          }
        }
      ],
      "parts": [
        "attribution",
        "card",
        "chart",
        "current",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "frame",
        "header",
        "loading",
        "panel",
        "reading",
        "readings",
        "section",
        "tab",
        "tablist",
        "timeline"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-dasha-timeline period=\"major\" data-endpoint=\"vedic-astrology/dasha/major\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-dasha-timeline>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"dasha-timeline\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/dasha-timeline-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/dasha-timeline-dark.webp"
      }
    },
    {
      "tag": "roxy-guna-milan",
      "pascal": "RoxyGunaMilan",
      "slug": "guna-milan",
      "domain": "Vedic",
      "renders": "36-point Ashtakoota with eight sub-scores",
      "endpointLabel": "POST /vedic-astrology/compatibility",
      "endpoints": [
        {
          "operationId": "calculateGunMilan",
          "method": "POST",
          "path": "/vedic-astrology/compatibility"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "chart",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-guna-milan data-endpoint=\"vedic-astrology/compatibility\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-guna-milan>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"guna-milan\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/guna-milan-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/guna-milan-dark.webp"
      }
    },
    {
      "tag": "roxy-panchang-table",
      "pascal": "RoxyPanchangTable",
      "slug": "panchang-table",
      "domain": "Vedic",
      "renders": "15+ muhurtas in detailed mode",
      "endpointLabel": "POST /vedic-astrology/panchang/{basic,detailed}",
      "endpoints": [
        {
          "operationId": "getDetailedPanchang",
          "method": "POST",
          "path": "/vedic-astrology/panchang/detailed",
          "attrs": {
            "detail": "detailed"
          }
        },
        {
          "operationId": "getBasicPanchang",
          "method": "POST",
          "path": "/vedic-astrology/panchang/basic",
          "attrs": {
            "detail": "basic"
          }
        }
      ],
      "parts": [
        "attribution",
        "auspicious",
        "balams",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "inauspicious",
        "loading",
        "section",
        "table",
        "transitions"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-panchang-table detail=\"detailed\" data-endpoint=\"vedic-astrology/panchang/detailed\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-panchang-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"panchang-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/panchang-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/panchang-table-dark.webp"
      }
    },
    {
      "tag": "roxy-vedic-aspects",
      "pascal": "RoxyVedicAspects",
      "slug": "vedic-aspects",
      "domain": "Vedic",
      "renders": "Graha drishti rows with aspect type, strength, and orb, plus mutual aspects",
      "endpointLabel": "POST /vedic-astrology/aspects",
      "endpoints": [
        {
          "operationId": "calculateDrishti",
          "method": "POST",
          "path": "/vedic-astrology/aspects"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "mutual-aspects",
        "positions",
        "section",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-vedic-aspects data-endpoint=\"vedic-astrology/aspects\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-vedic-aspects>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"vedic-aspects\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/vedic-aspects-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/vedic-aspects-dark.webp"
      }
    },
    {
      "tag": "roxy-hora-table",
      "pascal": "RoxyHoraTable",
      "slug": "hora-table",
      "domain": "Vedic",
      "renders": "Day and night planetary hours with ruling planet and window",
      "endpointLabel": "POST /vedic-astrology/panchang/hora",
      "endpoints": [
        {
          "operationId": "getHora",
          "method": "POST",
          "path": "/vedic-astrology/panchang/hora"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-hora-table data-endpoint=\"vedic-astrology/panchang/hora\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-hora-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"hora-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/hora-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/hora-table-dark.webp"
      }
    },
    {
      "tag": "roxy-choghadiya-grid",
      "pascal": "RoxyChoghadiyaGrid",
      "slug": "choghadiya-grid",
      "domain": "Vedic",
      "renders": "Day and night Choghadiya muhurta tiles colored by effect",
      "endpointLabel": "POST /vedic-astrology/panchang/choghadiya",
      "endpoints": [
        {
          "operationId": "getChoghadiya",
          "method": "POST",
          "path": "/vedic-astrology/panchang/choghadiya"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-choghadiya-grid data-endpoint=\"vedic-astrology/panchang/choghadiya\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-choghadiya-grid>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"choghadiya-grid\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/choghadiya-grid-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/choghadiya-grid-dark.webp"
      }
    },
    {
      "tag": "roxy-heliacal-table",
      "pascal": "RoxyHeliacalTable",
      "slug": "heliacal-table",
      "domain": "Vedic",
      "renders": "Udaya and asta windows for the six visible grahas, the calculation behind Guru Asta and Shukra Asta",
      "endpointLabel": "POST /vedic-astrology/heliacal",
      "endpoints": [
        {
          "operationId": "getHeliacalVisibility",
          "method": "POST",
          "path": "/vedic-astrology/heliacal"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "table",
        "window"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-heliacal-table data-endpoint=\"vedic-astrology/heliacal\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-heliacal-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"heliacal-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/heliacal-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/heliacal-table-dark.webp"
      }
    },
    {
      "tag": "roxy-vedic-daily",
      "pascal": "RoxyVedicDaily",
      "slug": "vedic-daily",
      "domain": "Vedic",
      "renders": "Composed Vedic daily reading with the classical rule behind every graha state, the Tara and Chandrabala windows in full, and all three sidereal frames named",
      "endpointLabel": "POST /vedic-astrology/daily",
      "endpoints": [
        {
          "operationId": "getVedicDailyReading",
          "method": "POST",
          "path": "/vedic-astrology/daily"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "dasha",
        "details",
        "edit-bar",
        "empty",
        "error",
        "finance",
        "form",
        "frame",
        "grahas",
        "header",
        "legend",
        "loading",
        "panchanga",
        "section",
        "table",
        "windows"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-vedic-daily data-endpoint=\"vedic-astrology/daily\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-vedic-daily>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"vedic-daily\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/vedic-daily-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/vedic-daily-dark.webp"
      }
    },
    {
      "tag": "roxy-gochara-table",
      "pascal": "RoxyGocharaTable",
      "slug": "gochara-table",
      "domain": "Vedic",
      "renders": "Vedic gochara with aspects to the natal chart and the Gochara Kaksha reading drawn as a position within the sign",
      "endpointLabel": "POST /vedic-astrology/transit",
      "endpoints": [
        {
          "operationId": "calculateTransit",
          "method": "POST",
          "path": "/vedic-astrology/transit"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "chart",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "key-transits",
        "loading",
        "section",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-gochara-table data-endpoint=\"vedic-astrology/transit\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-gochara-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"gochara-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/gochara-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/gochara-table-dark.webp"
      }
    },
    {
      "tag": "roxy-bhava-bala-table",
      "pascal": "RoxyBhavaBalaTable",
      "slug": "bhava-bala-table",
      "domain": "Vedic",
      "renders": "House strength in rupas and virupas, ranked, with Bhavadhipati, Dig and Drishti Bala shown as proportions of the total",
      "endpointLabel": "POST /vedic-astrology/bhava-bala",
      "endpoints": [
        {
          "operationId": "calculateBhavaBala",
          "method": "POST",
          "path": "/vedic-astrology/bhava-bala"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "legend",
        "loading",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-bhava-bala-table data-endpoint=\"vedic-astrology/bhava-bala\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-bhava-bala-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"bhava-bala-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/bhava-bala-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/bhava-bala-table-dark.webp"
      }
    },
    {
      "tag": "roxy-bhav-chalit-table",
      "pascal": "RoxyBhavChalitTable",
      "slug": "bhav-chalit-table",
      "domain": "Vedic",
      "renders": "The Chalit chart against the Rashi chart, leading with how many grahas move and which, plus the unequal bhava spans",
      "endpointLabel": "POST /vedic-astrology/bhav-chalit",
      "endpoints": [
        {
          "operationId": "calculateBhavChalit",
          "method": "POST",
          "path": "/vedic-astrology/bhav-chalit"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "moved",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-bhav-chalit-table data-endpoint=\"vedic-astrology/bhav-chalit\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-bhav-chalit-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"bhav-chalit-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/bhav-chalit-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/bhav-chalit-table-dark.webp"
      }
    },
    {
      "tag": "roxy-upagraha-table",
      "pascal": "RoxyUpagrahaTable",
      "slug": "upagraha-table",
      "domain": "Vedic",
      "renders": "Time-based and Sun-based upagrahas with rashi, degree, longitude and nakshatra",
      "endpointLabel": "POST /vedic-astrology/upagraha",
      "endpoints": [
        {
          "operationId": "getUpagrahaPositions",
          "method": "POST",
          "path": "/vedic-astrology/upagraha"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "section",
        "sun-based",
        "table",
        "time-based"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-upagraha-table data-endpoint=\"vedic-astrology/upagraha\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-upagraha-table>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"upagraha-table\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/upagraha-table-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/upagraha-table-dark.webp"
      }
    },
    {
      "tag": "roxy-chara-karakas",
      "pascal": "RoxyCharaKarakas",
      "slug": "chara-karakas",
      "domain": "Vedic",
      "renders": "Karaka offices in rank order with graha, degree, scheme, and what each is read for",
      "endpointLabel": "POST /vedic-astrology/chara-karakas",
      "endpoints": [
        {
          "operationId": "calculateCharaKarakas",
          "method": "POST",
          "path": "/vedic-astrology/chara-karakas"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-chara-karakas data-endpoint=\"vedic-astrology/chara-karakas\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-chara-karakas>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"chara-karakas\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/chara-karakas-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/chara-karakas-dark.webp"
      }
    },
    {
      "tag": "roxy-arudha-padas",
      "pascal": "RoxyArudhaPadas",
      "slug": "arudha-padas",
      "domain": "Vedic",
      "renders": "Twelve padas with bhava, lord, pada rashi, house from Lagna, and the classical exception marked",
      "endpointLabel": "POST /vedic-astrology/arudha",
      "endpoints": [
        {
          "operationId": "calculateArudhaPadas",
          "method": "POST",
          "path": "/vedic-astrology/arudha"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "legend",
        "loading",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-arudha-padas data-endpoint=\"vedic-astrology/arudha\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-arudha-padas>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"arudha-padas\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/arudha-padas-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/arudha-padas-dark.webp"
      }
    },
    {
      "tag": "roxy-yoga-list",
      "pascal": "RoxyYogaList",
      "slug": "yoga-list",
      "domain": "Vedic",
      "renders": "Filterable yoga cards from the 300 plus yoga catalog, grouped by verdict in detect mode",
      "endpointLabel": "GET /vedic-astrology/yoga, POST /vedic-astrology/yoga/detect",
      "endpoints": [
        {
          "operationId": "listYogas",
          "method": "GET",
          "path": "/vedic-astrology/yoga"
        },
        {
          "operationId": "detectYogas",
          "method": "POST",
          "path": "/vedic-astrology/yoga/detect"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "reading",
        "section",
        "verdict",
        "verdicts",
        "yogas"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-yoga-list data-endpoint=\"vedic-astrology/yoga\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-yoga-list>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"yoga-list\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/yoga-list-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/yoga-list-dark.webp"
      }
    },
    {
      "tag": "roxy-nakshatra-card",
      "pascal": "RoxyNakshatraCard",
      "slug": "nakshatra-card",
      "domain": "Vedic",
      "renders": "Lord, deity, symbol, characteristics, remedies",
      "endpointLabel": "GET /vedic-astrology/nakshatras/{id}",
      "endpoints": [
        {
          "operationId": "getNakshatra",
          "method": "GET",
          "path": "/vedic-astrology/nakshatras/{id}"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "characteristics",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "remedies",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-nakshatra-card data-endpoint=\"vedic-astrology/nakshatras/{id}\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-nakshatra-card>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"nakshatra-card\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/nakshatra-card-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/nakshatra-card-dark.webp"
      }
    },
    {
      "tag": "roxy-dosha-card",
      "pascal": "RoxyDoshaCard",
      "slug": "dosha-card",
      "domain": "Vedic",
      "renders": "Presence, severity, remedies, scoped effects",
      "endpointLabel": "POST /vedic-astrology/dosha/{manglik,kalsarpa,sadhesati}",
      "endpoints": [
        {
          "operationId": "checkManglikDosha",
          "method": "POST",
          "path": "/vedic-astrology/dosha/manglik",
          "attrs": {
            "type": "manglik"
          }
        },
        {
          "operationId": "checkKalsarpaDosha",
          "method": "POST",
          "path": "/vedic-astrology/dosha/kalsarpa",
          "attrs": {
            "type": "kalsarpa"
          }
        },
        {
          "operationId": "checkSadhesati",
          "method": "POST",
          "path": "/vedic-astrology/dosha/sadhesati",
          "attrs": {
            "type": "sadhesati"
          }
        }
      ],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "effects",
        "empty",
        "error",
        "exceptions",
        "form",
        "header",
        "loading",
        "remedies",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-dosha-card type=\"manglik\" data-endpoint=\"vedic-astrology/dosha/manglik\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-dosha-card>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"dosha-card\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/dosha-card-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/dosha-card-dark.webp"
      }
    },
    {
      "tag": "roxy-numerology-card",
      "pascal": "RoxyNumerologyCard",
      "slug": "numerology-card",
      "domain": "Numerology",
      "renders": "Life path, expression, soul urge, personality, personal year, full chart",
      "endpointLabel": "POST /numerology/{life-path,expression,soul-urge,personality,birth-day,maturity,daily,personal-day,personal-month,personal-year,chart}",
      "endpoints": [
        {
          "operationId": "calculateLifePath",
          "method": "POST",
          "path": "/numerology/life-path",
          "attrs": {
            "type": "life-path"
          }
        },
        {
          "operationId": "calculateExpression",
          "method": "POST",
          "path": "/numerology/expression",
          "attrs": {
            "type": "expression"
          }
        },
        {
          "operationId": "calculateSoulUrge",
          "method": "POST",
          "path": "/numerology/soul-urge",
          "attrs": {
            "type": "soul-urge"
          }
        },
        {
          "operationId": "calculatePersonality",
          "method": "POST",
          "path": "/numerology/personality",
          "attrs": {
            "type": "personality"
          }
        },
        {
          "operationId": "calculateBirthDay",
          "method": "POST",
          "path": "/numerology/birth-day",
          "attrs": {
            "type": "birth-day"
          }
        },
        {
          "operationId": "calculateMaturity",
          "method": "POST",
          "path": "/numerology/maturity",
          "attrs": {
            "type": "maturity"
          }
        },
        {
          "operationId": "getDailyNumber",
          "method": "POST",
          "path": "/numerology/daily",
          "attrs": {
            "type": "daily"
          }
        },
        {
          "operationId": "calculatePersonalDay",
          "method": "POST",
          "path": "/numerology/personal-day",
          "attrs": {
            "type": "personal-day"
          }
        },
        {
          "operationId": "calculatePersonalMonth",
          "method": "POST",
          "path": "/numerology/personal-month",
          "attrs": {
            "type": "personal-month"
          }
        },
        {
          "operationId": "calculatePersonalYear",
          "method": "POST",
          "path": "/numerology/personal-year",
          "attrs": {
            "type": "personal-year"
          }
        },
        {
          "operationId": "generateNumerologyChart",
          "method": "POST",
          "path": "/numerology/chart",
          "attrs": {
            "type": "chart"
          }
        }
      ],
      "parts": [
        "attribution",
        "birth-day-profile",
        "calculation",
        "card",
        "cores",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "karmic-debt",
        "karmic-lessons",
        "loading",
        "lucky-associations",
        "maturity",
        "name-letters",
        "name-numbers",
        "obstacle-periods",
        "personal-year",
        "pinnacles",
        "reading",
        "readings",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-numerology-card type=\"life-path\" data-endpoint=\"numerology/life-path\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-numerology-card>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"numerology-card\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/numerology-card-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/numerology-card-dark.webp"
      }
    },
    {
      "tag": "roxy-tarot-card",
      "pascal": "RoxyTarotCard",
      "slug": "tarot-card",
      "domain": "Tarot",
      "renders": "Single card with upright and reversed flip",
      "endpointLabel": "GET /tarot/cards/{id}, POST /tarot/daily",
      "endpoints": [
        {
          "operationId": "getDailyCard",
          "method": "POST",
          "path": "/tarot/daily"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "chart",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "panel",
        "reading",
        "readings",
        "section",
        "tab",
        "tablist"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-tarot-card data-endpoint=\"tarot/daily\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-tarot-card>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"tarot-card\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/tarot-card-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/tarot-card-dark.webp"
      }
    },
    {
      "tag": "roxy-tarot-catalog",
      "pascal": "RoxyTarotCatalog",
      "slug": "tarot-catalog",
      "domain": "Tarot",
      "renders": "Deck gallery tiles with card art, name, and arcana and suit",
      "endpointLabel": "GET /tarot/cards",
      "endpoints": [
        {
          "operationId": "listCards",
          "method": "GET",
          "path": "/tarot/cards"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "cards",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-tarot-catalog data-endpoint=\"tarot/cards\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-tarot-catalog>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"tarot-catalog\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/tarot-catalog-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/tarot-catalog-dark.webp"
      }
    },
    {
      "tag": "roxy-tarot-spread",
      "pascal": "RoxyTarotSpread",
      "slug": "tarot-spread",
      "domain": "Tarot",
      "renders": "Spreads with positions and reading",
      "endpointLabel": "POST /tarot/spreads/{three-card,celtic-cross,love}, /tarot/yes-no, /tarot/draw",
      "endpoints": [
        {
          "operationId": "castThreeCard",
          "method": "POST",
          "path": "/tarot/spreads/three-card",
          "attrs": {
            "spread": "three-card"
          }
        },
        {
          "operationId": "castCelticCross",
          "method": "POST",
          "path": "/tarot/spreads/celtic-cross",
          "attrs": {
            "spread": "celtic-cross"
          }
        },
        {
          "operationId": "castLoveSpread",
          "method": "POST",
          "path": "/tarot/spreads/love",
          "attrs": {
            "spread": "love"
          }
        },
        {
          "operationId": "castCareerSpread",
          "method": "POST",
          "path": "/tarot/spreads/career",
          "attrs": {
            "spread": "career"
          }
        },
        {
          "operationId": "castCustomSpread",
          "method": "POST",
          "path": "/tarot/spreads/custom",
          "attrs": {
            "spread": "custom"
          }
        },
        {
          "operationId": "castYesNo",
          "method": "POST",
          "path": "/tarot/yes-no",
          "attrs": {
            "spread": "yes-no"
          }
        },
        {
          "operationId": "drawCards",
          "method": "POST",
          "path": "/tarot/draw",
          "attrs": {
            "spread": "draw"
          }
        }
      ],
      "parts": [
        "attribution",
        "card",
        "cards",
        "chart",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "positions",
        "section",
        "verdict"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-tarot-spread spread=\"three-card\" data-endpoint=\"tarot/spreads/three-card\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-tarot-spread>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"tarot-spread\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/tarot-spread-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/tarot-spread-dark.webp"
      }
    },
    {
      "tag": "roxy-bodygraph",
      "pascal": "RoxyBodygraph",
      "slug": "bodygraph",
      "domain": "Human Design",
      "renders": "Nine-center chart with defined and open centers, active channels, and gates, plus the type, strategy, authority, profile, and definition readings, the channels by circuit, the centers, and every activation with its gate and line meaning",
      "endpointLabel": "POST /human-design/bodygraph",
      "endpoints": [
        {
          "operationId": "generateBodygraph",
          "method": "POST",
          "path": "/human-design/bodygraph"
        }
      ],
      "parts": [
        "activations",
        "attribution",
        "card",
        "centers",
        "channels",
        "chart",
        "details",
        "edit-bar",
        "empty",
        "error",
        "fact",
        "facts",
        "form",
        "header",
        "keynotes",
        "layout",
        "legend",
        "loading",
        "panel",
        "reading",
        "readings",
        "section",
        "tab",
        "tablist",
        "themes"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-bodygraph data-endpoint=\"human-design/bodygraph\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-bodygraph>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"bodygraph\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/bodygraph-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/bodygraph-dark.webp"
      }
    },
    {
      "tag": "roxy-hd-type-card",
      "pascal": "RoxyHdTypeCard",
      "slug": "hd-type-card",
      "domain": "Human Design",
      "renders": "Type, strategy, authority, and profile tiles with the aura, signature, and not-self themes, plus the reading behind each label and the profile line keynotes",
      "endpointLabel": "POST /human-design/type, /human-design/profile",
      "endpoints": [
        {
          "operationId": "calculateType",
          "method": "POST",
          "path": "/human-design/type"
        },
        {
          "operationId": "calculateProfile",
          "method": "POST",
          "path": "/human-design/profile"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "fact",
        "facts",
        "form",
        "header",
        "keynotes",
        "lines",
        "loading",
        "reading",
        "readings",
        "section",
        "themes"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-hd-type-card data-endpoint=\"human-design/type\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-hd-type-card>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"hd-type-card\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/hd-type-card-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/hd-type-card-dark.webp"
      }
    },
    {
      "tag": "roxy-hd-connection",
      "pascal": "RoxyHdConnection",
      "slug": "hd-connection",
      "domain": "Human Design",
      "renders": "Electromagnetic, compromise, and dominance channels between two charts",
      "endpointLabel": "POST /human-design/connection",
      "endpoints": [
        {
          "operationId": "calculateConnection",
          "method": "POST",
          "path": "/human-design/connection"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "centers",
        "channels",
        "chart",
        "edit-bar",
        "empty",
        "error",
        "fact",
        "facts",
        "form",
        "header",
        "legend",
        "loading",
        "reading",
        "readings",
        "section",
        "table"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-hd-connection data-endpoint=\"human-design/connection\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-hd-connection>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"hd-connection\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/hd-connection-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/hd-connection-dark.webp"
      }
    },
    {
      "tag": "roxy-hd-penta",
      "pascal": "RoxyHdPenta",
      "slug": "hd-penta",
      "domain": "Human Design",
      "renders": "Group penta channels split into upper and lower triangles",
      "endpointLabel": "POST /human-design/penta",
      "endpoints": [
        {
          "operationId": "calculatePenta",
          "method": "POST",
          "path": "/human-design/penta"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "channels",
        "chart",
        "edit-bar",
        "empty",
        "error",
        "fact",
        "facts",
        "form",
        "gates",
        "header",
        "legend",
        "loading",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-hd-penta data-endpoint=\"human-design/penta\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-hd-penta>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"hd-penta\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/hd-penta-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/hd-penta-dark.webp"
      }
    },
    {
      "tag": "roxy-hd-variables",
      "pascal": "RoxyHdVariables",
      "slug": "hd-variables",
      "domain": "Human Design",
      "renders": "The four transformation arrows with direction, color, tone, and base, plus a reading per arrow grouped by layer and the cognition",
      "endpointLabel": "POST /human-design/variables",
      "endpoints": [
        {
          "operationId": "calculateVariables",
          "method": "POST",
          "path": "/human-design/variables"
        }
      ],
      "parts": [
        "arrows",
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "reading",
        "readings",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-hd-variables data-endpoint=\"human-design/variables\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-hd-variables>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"hd-variables\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/hd-variables-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/hd-variables-dark.webp"
      }
    },
    {
      "tag": "roxy-forecast-timeline",
      "pascal": "RoxyForecastTimeline",
      "slug": "forecast-timeline",
      "domain": "Forecast",
      "renders": "Date-grouped events across Western, Vedic, and biorhythm domains, weighted by significance",
      "endpointLabel": "POST /forecast/{timeline,significant-dates,transits}",
      "endpoints": [
        {
          "operationId": "generateTimeline",
          "method": "POST",
          "path": "/forecast/timeline"
        },
        {
          "operationId": "findSignificantDates",
          "method": "POST",
          "path": "/forecast/significant-dates"
        },
        {
          "operationId": "forecastTransits",
          "method": "POST",
          "path": "/forecast/transits"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "events",
        "form",
        "header",
        "legend",
        "loading",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-forecast-timeline data-endpoint=\"forecast/timeline\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-forecast-timeline>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"forecast-timeline\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/forecast-timeline-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/forecast-timeline-dark.webp"
      }
    },
    {
      "tag": "roxy-forecast-digest",
      "pascal": "RoxyForecastDigest",
      "slug": "forecast-digest",
      "domain": "Forecast",
      "renders": "Per-window event counts, domain breakdown, and the highest-significance events",
      "endpointLabel": "POST /forecast/digest",
      "endpoints": [
        {
          "operationId": "generateDigest",
          "method": "POST",
          "path": "/forecast/digest"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "legend",
        "loading",
        "section",
        "window"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-forecast-digest data-endpoint=\"forecast/digest\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-forecast-digest>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"forecast-digest\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/forecast-digest-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/forecast-digest-dark.webp"
      }
    },
    {
      "tag": "roxy-biorhythm-chart",
      "pascal": "RoxyBiorhythmChart",
      "slug": "biorhythm-chart",
      "domain": "Biorhythm",
      "renders": "Daily bars, forecast cycle lines, critical days",
      "endpointLabel": "POST /biorhythm/{daily,forecast,critical-days}",
      "endpoints": [
        {
          "operationId": "getDailyBiorhythm",
          "method": "POST",
          "path": "/biorhythm/daily",
          "attrs": {
            "mode": "daily"
          }
        },
        {
          "operationId": "getForecast",
          "method": "POST",
          "path": "/biorhythm/forecast",
          "attrs": {
            "mode": "forecast"
          }
        },
        {
          "operationId": "getCriticalDays",
          "method": "POST",
          "path": "/biorhythm/critical-days",
          "attrs": {
            "mode": "critical-days"
          }
        }
      ],
      "parts": [
        "attribution",
        "bars",
        "card",
        "chart",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "legend",
        "loading",
        "reading",
        "readings",
        "section",
        "spotlight"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-biorhythm-chart mode=\"daily\" data-endpoint=\"biorhythm/daily\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-biorhythm-chart>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"biorhythm-chart\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/biorhythm-chart-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/biorhythm-chart-dark.webp"
      }
    },
    {
      "tag": "roxy-hexagram",
      "pascal": "RoxyHexagram",
      "slug": "hexagram",
      "domain": "I Ching",
      "renders": "Hexagram figure with trigrams, judgment, image, and a reading per line (statement plus meaning); a cast highlights the moving lines and the resulting hexagram",
      "endpointLabel": "GET /iching/hexagrams/{number}, /iching/cast, POST /iching/daily, /iching/daily/cast",
      "endpoints": [
        {
          "operationId": "getRandomHexagram",
          "method": "GET",
          "path": "/iching/hexagrams/random"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "changing-lines",
        "chart",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "reading",
        "readings",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-hexagram data-endpoint=\"iching/hexagrams/random\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-hexagram>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"hexagram\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/hexagram-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/hexagram-dark.webp"
      }
    },
    {
      "tag": "roxy-crystal-card",
      "pascal": "RoxyCrystalCard",
      "slug": "crystal-card",
      "domain": "Crystals",
      "renders": "Photo, meaning sections, chakra, zodiac, element, hardness, keywords, and pairings",
      "endpointLabel": "GET /crystals/{id}",
      "endpoints": [
        {
          "operationId": "getCrystal",
          "method": "GET",
          "path": "/crystals/{id}"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "chart",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "keywords",
        "loading",
        "meaning",
        "pairs-with",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-crystal-card data-endpoint=\"crystals/{id}\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-crystal-card>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"crystal-card\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/crystal-card-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/crystal-card-dark.webp"
      }
    },
    {
      "tag": "roxy-crystal-grid",
      "pascal": "RoxyCrystalGrid",
      "slug": "crystal-grid",
      "domain": "Crystals",
      "renders": "Crystal gallery tiles with photo, name, and colour swatches",
      "endpointLabel": "GET /crystals, /crystals/chakra/{chakra}, /crystals/element/{element}, /crystals/zodiac/{sign}, /crystals/birthstone/{month}, /crystals/search",
      "endpoints": [
        {
          "operationId": "getCrystalsByChakra",
          "method": "GET",
          "path": "/crystals/chakra/{chakra}"
        },
        {
          "operationId": "getCrystalsByElement",
          "method": "GET",
          "path": "/crystals/element/{element}"
        },
        {
          "operationId": "getCrystalsByZodiac",
          "method": "GET",
          "path": "/crystals/zodiac/{sign}"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "crystals",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-crystal-grid data-endpoint=\"crystals/chakra/{chakra}\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-crystal-grid>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"crystal-grid\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/crystal-grid-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/crystal-grid-dark.webp"
      }
    },
    {
      "tag": "roxy-dream-card",
      "pascal": "RoxyDreamCard",
      "slug": "dream-card",
      "domain": "Dreams",
      "renders": "Symbol name, interpretation body, and letter chip",
      "endpointLabel": "GET /dreams/symbols/{id}",
      "endpoints": [
        {
          "operationId": "getDreamSymbol",
          "method": "GET",
          "path": "/dreams/symbols/{id}"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-dream-card data-endpoint=\"dreams/symbols/{id}\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-dream-card>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"dream-card\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/dream-card-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/dream-card-dark.webp"
      }
    },
    {
      "tag": "roxy-dream-search",
      "pascal": "RoxyDreamSearch",
      "slug": "dream-search",
      "domain": "Dreams",
      "renders": "Matched dream symbols as selectable tiles with a letter chip",
      "endpointLabel": "GET /dreams/symbols",
      "endpoints": [
        {
          "operationId": "searchDreamSymbols",
          "method": "GET",
          "path": "/dreams/symbols"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "section",
        "symbols"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-dream-search data-endpoint=\"dreams/symbols\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-dream-search>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"dream-search\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/dream-search-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/dream-search-dark.webp"
      }
    },
    {
      "tag": "roxy-angel-number-card",
      "pascal": "RoxyAngelNumberCard",
      "slug": "angel-number-card",
      "domain": "Angel Numbers",
      "renders": "Number meaning with spiritual, love, career, money, twin flame, biblical, and shadow sections",
      "endpointLabel": "GET /angel-numbers/numbers/{number}",
      "endpoints": [
        {
          "operationId": "getAngelNumber",
          "method": "GET",
          "path": "/angel-numbers/numbers/{number}"
        }
      ],
      "parts": [
        "action-steps",
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "reading",
        "readings",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-angel-number-card data-endpoint=\"angel-numbers/numbers/{number}\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-angel-number-card>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"angel-number-card\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/angel-number-card-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/angel-number-card-dark.webp"
      }
    },
    {
      "tag": "roxy-angel-number-lookup",
      "pascal": "RoxyAngelNumberLookup",
      "slug": "angel-number-lookup",
      "domain": "Angel Numbers",
      "renders": "Pattern analysis plus known meaning and digit-root fallback",
      "endpointLabel": "GET /angel-numbers/lookup",
      "endpoints": [
        {
          "operationId": "analyzeNumberSequence",
          "method": "GET",
          "path": "/angel-numbers/lookup"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "context",
        "details",
        "digit-root",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "known-meaning",
        "loading",
        "reading",
        "readings",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-angel-number-lookup data-endpoint=\"angel-numbers/lookup\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-angel-number-lookup>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"angel-number-lookup\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/angel-number-lookup-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/angel-number-lookup-dark.webp"
      }
    },
    {
      "tag": "roxy-reference-card",
      "pascal": "RoxyReferenceCard",
      "slug": "reference-card",
      "domain": "Reference",
      "renders": "Symbol, name, description, keyword chips, and an attribute grid for any glossary lookup",
      "endpointLabel": "GET /astrology/{signs,planet-meanings}/{id}, /vedic-astrology/rashis/{id}, /iching/trigrams/{id}, /human-design/{gates,centers}/{id}, /numerology/{meanings,compound-number}/{number}",
      "endpoints": [
        {
          "operationId": "getZodiacSign",
          "method": "GET",
          "path": "/astrology/signs/{id}"
        },
        {
          "operationId": "getPlanetMeaning",
          "method": "GET",
          "path": "/astrology/planet-meanings/{id}"
        },
        {
          "operationId": "getRashi",
          "method": "GET",
          "path": "/vedic-astrology/rashis/{id}"
        },
        {
          "operationId": "getTrigram",
          "method": "GET",
          "path": "/iching/trigrams/{id}"
        },
        {
          "operationId": "getGate",
          "method": "GET",
          "path": "/human-design/gates/{number}"
        },
        {
          "operationId": "getCenter",
          "method": "GET",
          "path": "/human-design/centers/{id}"
        },
        {
          "operationId": "getNumberMeaning",
          "method": "GET",
          "path": "/numerology/meanings/{number}"
        },
        {
          "operationId": "getCompoundNumber",
          "method": "GET",
          "path": "/numerology/compound-number/{number}"
        },
        {
          "operationId": "getAvastha",
          "method": "GET",
          "path": "/vedic-astrology/avasthas/{id}"
        }
      ],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "section"
      ],
      "snippets": {
        "script": "<!-- Optional: warm practitioner theme (drop this line for the default look) -->\n<!-- <link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/styles/themes/practitioner.css\"> -->\n<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/roxy-ui.js\" defer></script>\n<roxy-reference-card data-endpoint=\"astrology/signs/{id}\" method=\"GET\" publishable-key=\"pk_live_YOUR_KEY\"></roxy-reference-card>",
        "oneTag": "<script src=\"https://cdn.jsdelivr.net/npm/@roxyapi/ui@latest/dist/cdn/widgets.js\" defer></script>\n<div data-roxy-widget=\"reference-card\" data-publishable-key=\"pk_live_YOUR_KEY\"></div>"
      },
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/reference-card-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/reference-card-dark.webp"
      }
    },
    {
      "tag": "roxy-endpoint-form",
      "pascal": "RoxyEndpointForm",
      "slug": "endpoint-form",
      "domain": "Helper",
      "renders": "Schema-driven form, emits roxy-submit",
      "endpointLabel": "Any endpoint, from the spec",
      "endpoints": [],
      "parts": [
        "advanced",
        "attribution",
        "edit-bar",
        "empty",
        "error",
        "field",
        "form",
        "group",
        "loading",
        "submit",
        "title",
        "validation-error"
      ],
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/endpoint-form-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/endpoint-form-dark.webp"
      }
    },
    {
      "tag": "roxy-location-search",
      "pascal": "RoxyLocationSearch",
      "slug": "location-search",
      "domain": "Helper",
      "renders": "Debounced city search input, emits roxy-location-select",
      "endpointLabel": "GET /location/search",
      "endpoints": [],
      "parts": [
        "attribution",
        "edit-bar",
        "empty",
        "error",
        "form",
        "input",
        "loading",
        "option",
        "results"
      ],
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/location-search-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/location-search-dark.webp"
      }
    },
    {
      "tag": "roxy-data",
      "pascal": "RoxyData",
      "slug": "data",
      "domain": "Helper",
      "renders": "Generic fallback renderer for unknown shapes",
      "endpointLabel": "Any response shape",
      "endpoints": [],
      "parts": [
        "attribution",
        "card",
        "details",
        "edit-bar",
        "empty",
        "error",
        "form",
        "header",
        "loading",
        "table"
      ],
      "preview": {
        "light": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/data-light.webp",
        "dark": "https://cdn.jsdelivr.net/gh/RoxyAPI/ui@v0.33.0/assets/previews/data-dark.webp"
      }
    }
  ]
}
