<!doctype html>
<html lang="en">

<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />

  <!-- ── FONTS ──────────────────────────────────── -->
  <link rel="preconnect" href="https://fonts.googleapis.com" />
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet" />

  <!-- ── PRIMARY META ───────────────────────────── -->
  <title>CraftedModel - Data, delivered with CRAFT.</title>
  <meta name="description"
    content="Generate production-ready Power BI M code, DAX measures, and dimension tables from a single config form. Built on the CRAFT methodology by RTJ Solutions." />
  <meta name="author" content="RTJ Solutions" />
  <meta name="theme-color" content="#0D1B2A" />

  <!-- ── FAVICON ────────────────────────────────── -->
  <!-- 
    Once you have your diamond favicon files, 
    place them in /public/ and these links activate.
    Until then the browser uses its default.
  -->
  <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" />
  <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png" />
  <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" />

  <!-- ── OPEN GRAPH (Facebook, LinkedIn) ────────── -->
  <meta property="og:type" content="website" />
  <meta property="og:url" content="https://craftedmodel.com" />
  <meta property="og:title" content="CraftedModel - Data, delivered with CRAFT." />
  <meta property="og:description"
    content="Generate production-ready Power BI M code, DAX measures, and dimension tables from a single config form. Built on the CRAFT methodology by RTJ Solutions." />
  <meta property="og:image" content="https://craftedmodel.com/og-image.png" />
  <meta property="og:image:width" content="1200" />
  <meta property="og:image:height" content="630" />
  <meta property="og:site_name" content="CraftedModel" />

  <!-- ── TWITTER / X ────────────────────────────── -->
  <meta name="twitter:card" content="summary_large_image" />
  <meta name="twitter:site" content="@CraftedModel" />
  <meta name="twitter:creator" content="@CraftedModel" />
  <meta name="twitter:title" content="CraftedModel - Data, delivered with CRAFT." />
  <meta name="twitter:description"
    content="Generate production-ready Power BI M code, DAX measures, and dimension tables from a single config form." />
  <meta name="twitter:image" content="https://craftedmodel.com/og-image.png" />

  <!-- ── SEO ────────────────────────────────────── -->
  <meta name="robots" content="index, follow" />
  <link rel="canonical" href="https://craftedmodel.com" />

  <script type="module" crossorigin src="/assets/index-BqcUvNNY.js"></script>
  <link rel="modulepreload" crossorigin href="/assets/rolldown-runtime-CMxvf4Kt.js">
  <link rel="modulepreload" crossorigin href="/assets/vendor-Ccbbpoyd.js">
  <link rel="modulepreload" crossorigin href="/assets/vendor-auth-DM8EuQ5h.js">
  <link rel="modulepreload" crossorigin href="/assets/vendor-monaco-D3F419mV.js">
  <link rel="modulepreload" crossorigin href="/assets/vendor-radix-D8yy7s6z.js">
  <link rel="modulepreload" crossorigin href="/assets/vendor-supabase-q--dWsW9.js">
  <link rel="modulepreload" crossorigin href="/assets/vendor-react-HyMGUSzB.js">
  <link rel="stylesheet" crossorigin href="/assets/vendor-monaco-rEZ1JVpJ.css">
  <link rel="stylesheet" crossorigin href="/assets/index-BT6TEfnX.css">
</head>

<body>
  <div id="root"></div>
  <script type="text/javascript" async src="https://subscribe-forms.beehiiv.com/attribution.js"></script>
<!-- Cloudflare Pages Analytics --><script defer src='https://static.cloudflareinsights.com/beacon.min.js' data-cf-beacon='{"token": "59e78bea0daf4be08b86ca80b6a2fa5c"}'></script><!-- Cloudflare Pages Analytics --></body>

</html>
