Meta + SEO
Metadata Extractor
captured·index.html<head>
parsing
<title>yank — turn any URL into editable code</title>
<meta name="description" content="Framer to Next.js in 60 seconds. Zero refactor.">
<meta property="og:title" content="yank.design">
<meta property="og:image" content="/og.png">
<meta property="og:type" content="website">
<meta property="og:url" content="https://yank.design">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:creator" content="@yank">
<link rel="canonical" href="https://yank.design">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32.png">
<link rel="apple-touch-icon" sizes="180x180" href="/icon-180.png">
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "WebSite", "name": "yank" ... } </script>
12 head tags2.1 KB
categorizing tags
7 buckets
title0
description0
OpenGraph0
[og:title, og:image, og:type, og:url]
Twitter0
[twitter:card, twitter:creator]
Canonical0
Icons0
[favicon-32, apple-touch-icon]
JSON-LD0
[WebSite schema]
Total12 tags
parse → classify → emit
RECOVERED·app/page.tsx
✓ typed
import type { Metadata } from 'next';
export const metadata: Metadata = {
title: 'yank turn any URL into editable code',
description: 'Framer to Next.js in 60 seconds. Zero refactor.',
metadataBase: new URL('https://yank.design'),
openGraph: {
title: 'yank.design',
type: 'website',
url: 'https://yank.design',
images: [{ url: '/og.png', width: 1200, height: 630 }],
},
twitter: {
card: 'summary_large_image',
creator: '@yank',
},
alternates: {
canonical: 'https://yank.design',
},
icons: {
icon: [{ url: '/favicon-32.png', sizes: '32x32' }],
apple: [{ url: '/icon-180.png', sizes: '180x180' }],
},
};
export default function Page() {
return /* ... */;
}
12 tagsmetadata · 0 head pollution · perfect Lighthouse SEO

Meta + SEO

OpenGraph, Twitter cards, JSON-LD, canonicals, multi-size icons — yank parses every <head> tag and emits a typed export const metadata: Metadata per route. Lighthouse SEO score: perfect.