[{"data":1,"prerenderedAt":757},["ShallowReactive",2],{"navigation_docs":3,"-reference-ai":142,"-reference-ai-surround":752},[4,46,72,117,138],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":45},"Introduction","ph:star-duotone","\u002Fintroduction","1.introduction",[10,13,17,21,25,29,33,37,41],{"title":5,"path":11,"stem":12},"\u002Fintroduction\u002Fintroduction","1.introduction\u002F1.introduction",{"title":14,"path":15,"stem":16},"Installation","\u002Fintroduction\u002Finstallation","1.introduction\u002F2.installation",{"title":18,"path":19,"stem":20},"Getting Started","\u002Fintroduction\u002Fgetting-started","1.introduction\u002F3.getting-started",{"title":22,"path":23,"stem":24},"Deployment","\u002Fintroduction\u002Fdeployment","1.introduction\u002F4.deployment",{"title":26,"path":27,"stem":28},"Configuration","\u002Fintroduction\u002Fconfiguration","1.introduction\u002F5.configuration",{"title":30,"path":31,"stem":32},"Project Structure","\u002Fintroduction\u002Fproject-structure","1.introduction\u002F6.project-structure",{"title":34,"path":35,"stem":36},"Migration","\u002Fintroduction\u002Fmigration","1.introduction\u002F7.migration",{"title":38,"path":39,"stem":40},"Comparison","\u002Fintroduction\u002Fcomparison","1.introduction\u002F8.comparison",{"title":42,"path":43,"stem":44},"CLI Commands","\u002Fintroduction\u002Fcli","1.introduction\u002F9.cli",false,{"title":47,"icon":48,"path":49,"stem":50,"children":51,"page":45},"Content","heroicons-outline:bookmark-alt","\u002Fcontent","2.Content",[52,56,60,64,68],{"title":53,"path":54,"stem":55},"Markdown","\u002Fcontent\u002Fmarkdown","2.Content\u002F1.markdown",{"title":57,"path":58,"stem":59},"Shortcodes","\u002Fcontent\u002Fshortcodes","2.Content\u002F2.shortcodes",{"title":61,"path":62,"stem":63},"Writing Pages","\u002Fcontent\u002Fwriting-pages","2.Content\u002F4.writing-pages",{"title":65,"path":66,"stem":67},"Frontmatter","\u002Fcontent\u002Ffrontmatter","2.Content\u002F5.frontmatter",{"title":69,"path":70,"stem":71},"Comments","\u002Fcontent\u002Fcomments","2.Content\u002F6.comments",{"title":73,"icon":48,"path":74,"stem":75,"children":76,"page":45},"Reference","\u002Freference","3.reference",[77,81,85,89,93,97,101,105,109,113],{"title":78,"path":79,"stem":80},"Search","\u002Freference\u002Fsearch","3.reference\u002F1.search",{"title":82,"path":83,"stem":84},"SEO","\u002Freference\u002Fseo","3.reference\u002F2.seo",{"title":86,"path":87,"stem":88},"Robots.txt","\u002Freference\u002Frobots","3.reference\u002F3.robots",{"title":90,"path":91,"stem":92},"Sitemap","\u002Freference\u002Fsitemap","3.reference\u002F3.sitemap",{"title":94,"path":95,"stem":96},"Newsletter","\u002Freference\u002Fnewsletter","3.reference\u002F4.newsletter",{"title":98,"path":99,"stem":100},"Analytics","\u002Freference\u002Fanalytics","3.reference\u002F5.analytics",{"title":102,"path":103,"stem":104},"AI crawlers","\u002Freference\u002Fai","3.reference\u002F6.ai",{"title":106,"path":107,"stem":108},"Theming","\u002Freference\u002Ftheming","3.reference\u002F7.theming",{"title":110,"path":111,"stem":112},"Redirections","\u002Freference\u002Fredirections","3.reference\u002F8.redirections",{"title":114,"path":115,"stem":116},"Social Sharing","\u002Freference\u002Fsocialsharing","3.reference\u002F9.socialsharing",{"title":118,"icon":48,"path":119,"stem":120,"children":121,"page":45},"Recipes","\u002Frecipes","4.recipes",[122,126,130,134],{"title":123,"path":124,"stem":125},"Change the theme","\u002Frecipes\u002Fchange-theme","4.recipes\u002F1.change-theme",{"title":127,"path":128,"stem":129},"Create a new theme from scratch","\u002Frecipes\u002Ftheme-recipe","4.recipes\u002F2.theme-recipe",{"title":131,"path":132,"stem":133},"Share your theme","\u002Frecipes\u002Fsharing-theme","4.recipes\u002F3.sharing-theme",{"title":135,"path":136,"stem":137},"Working with AI","\u002Frecipes\u002Fworking-ai","4.recipes\u002F4.working-ai",{"title":139,"path":140,"stem":141},"Templates","\u002Ftemplates","templates",{"id":143,"title":102,"body":144,"description":745,"extension":746,"links":747,"meta":748,"navigation":749,"path":103,"seo":750,"stem":104,"__hash__":751},"docs\u002F3.reference\u002F6.ai.md",{"type":145,"value":146,"toc":738},"minimark",[147,151,177,180,191,295,300,311,368,434,456,462,593,600,604,623,680,696,706,711,721,724,728,734],[148,149,150],"p",{},"AI and your blog are really two separate questions, and Bloggrify keeps them separate:",[152,153,154,167],"ol",{},[155,156,157,161,162,166],"li",{},[158,159,160],"strong",{},"Do you want AI crawlers to use your content at all?"," That is a ",[163,164,165],"code",{},"robots.txt"," question.",[155,168,169,172,173,176],{},[158,170,171],{},"Do you want to make your content easy for AI tools to read?"," That is what ",[163,174,175],{},"llms.txt"," is for.",[148,178,179],{},"They are independent, and answering \"no\" to the first makes the second pointless.",[148,181,182,183,186,187,190],{},"Both live under the ",[163,184,185],{},"seo.ai"," key of your ",[163,188,189],{},"app.config.ts",":",[192,193,198],"pre",{"className":194,"code":195,"filename":189,"language":196,"meta":197,"style":197},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineAppConfig({\n  seo: {\n    ai: {\n      llms: false,\n      allowCrawlers: true,\n    },\n  },\n})\n","typescript","",[163,199,200,224,236,246,261,274,280,286],{"__ignoreMap":197},[201,202,205,209,212,216,220],"span",{"class":203,"line":204},"line",1,[201,206,208],{"class":207},"s7zQu","export",[201,210,211],{"class":207}," default",[201,213,215],{"class":214},"s2Zo4"," defineAppConfig",[201,217,219],{"class":218},"sTEyZ","(",[201,221,223],{"class":222},"sMK4o","{\n",[201,225,227,231,233],{"class":203,"line":226},2,[201,228,230],{"class":229},"swJcz","  seo",[201,232,190],{"class":222},[201,234,235],{"class":222}," {\n",[201,237,239,242,244],{"class":203,"line":238},3,[201,240,241],{"class":229},"    ai",[201,243,190],{"class":222},[201,245,235],{"class":222},[201,247,249,252,254,258],{"class":203,"line":248},4,[201,250,251],{"class":229},"      llms",[201,253,190],{"class":222},[201,255,257],{"class":256},"sfNiH"," false",[201,259,260],{"class":222},",\n",[201,262,264,267,269,272],{"class":203,"line":263},5,[201,265,266],{"class":229},"      allowCrawlers",[201,268,190],{"class":222},[201,270,271],{"class":256}," true",[201,273,260],{"class":222},[201,275,277],{"class":203,"line":276},6,[201,278,279],{"class":222},"    },\n",[201,281,283],{"class":203,"line":282},7,[201,284,285],{"class":222},"  },\n",[201,287,289,292],{"class":203,"line":288},8,[201,290,291],{"class":222},"}",[201,293,294],{"class":218},")\n",[296,297,299],"h2",{"id":298},"blocking-ai-crawlers","Blocking AI crawlers",[148,301,302,303,306,307,310],{},"Set ",[163,304,305],{},"allowCrawlers"," to ",[163,308,309],{},"false"," to ask AI crawlers to leave your content alone:",[192,312,314],{"className":194,"code":313,"filename":189,"language":196,"meta":197,"style":197},"export default defineAppConfig({\n  seo: {\n    ai: {\n      allowCrawlers: false,\n    },\n  },\n})\n",[163,315,316,328,336,344,354,358,362],{"__ignoreMap":197},[201,317,318,320,322,324,326],{"class":203,"line":204},[201,319,208],{"class":207},[201,321,211],{"class":207},[201,323,215],{"class":214},[201,325,219],{"class":218},[201,327,223],{"class":222},[201,329,330,332,334],{"class":203,"line":226},[201,331,230],{"class":229},[201,333,190],{"class":222},[201,335,235],{"class":222},[201,337,338,340,342],{"class":203,"line":238},[201,339,241],{"class":229},[201,341,190],{"class":222},[201,343,235],{"class":222},[201,345,346,348,350,352],{"class":203,"line":248},[201,347,266],{"class":229},[201,349,190],{"class":222},[201,351,257],{"class":256},[201,353,260],{"class":222},[201,355,356],{"class":203,"line":263},[201,357,279],{"class":222},[201,359,360],{"class":203,"line":276},[201,361,285],{"class":222},[201,363,364,366],{"class":203,"line":282},[201,365,291],{"class":222},[201,367,294],{"class":218},[148,369,370,371,374,375,377,378,381,382,385,386,389,390,393,394,397,398,401,402,381,405,408,409,412,413,412,416,412,419,412,422,425,426,433],{},"This adds a ",[163,372,373],{},"Disallow: \u002F"," group to your ",[163,376,165],{}," covering the AI crawlers of the major vendors:\n",[163,379,380],{},"GPTBot"," and ",[163,383,384],{},"OAI-SearchBot"," (OpenAI), ",[163,387,388],{},"ClaudeBot"," (Anthropic), ",[163,391,392],{},"Google-Extended"," and\n",[163,395,396],{},"Google-NotebookLM"," (Google), ",[163,399,400],{},"meta-externalagent"," (Meta), ",[163,403,404],{},"Amazonbot",[163,406,407],{},"bedrockbot"," (Amazon),\n",[163,410,411],{},"PerplexityBot",", ",[163,414,415],{},"MistralAI-User",[163,417,418],{},"DeepSeekBot",[163,420,421],{},"Bytespider",[163,423,424],{},"CCBot"," (Common Crawl, which feeds\nmany training sets), and around thirty others. The names follow the\n",[427,428,432],"a",{"href":429,"rel":430},"https:\u002F\u002Fgithub.com\u002Fai-robots-txt\u002Fai.robots.txt",[431],"nofollow","ai.robots.txt"," reference list.",[148,435,436,437,439,440,443,444,447,448,451,452,455],{},"Your blog stays indexed in Google and Bing: search crawlers are deliberately left alone.\n",[163,438,392],{}," controls Gemini training and is distinct from ",[163,441,442],{},"Googlebot",", so you refuse the former\nwhile keeping the latter. For the same reason ",[163,445,446],{},"Applebot"," (Siri, Spotlight) and ",[163,449,450],{},"facebookexternalhit","\n(Open Graph link previews) are not blocked, since blocking them would break features you probably\nwant. Only ",[163,453,454],{},"Applebot-Extended",", Apple's AI-training agent, is.",[148,457,458,459,190],{},"Bloggrify ships a curated list, not every scraper in existence. If you want to go further, add your\nown group in your ",[163,460,461],{},"nuxt.config.ts",[192,463,465],{"className":194,"code":464,"filename":461,"language":196,"meta":197,"style":197},"export default defineNuxtConfig({\n  extends: ['@bloggrify\u002Fcore'],\n  robots: {\n    groups: [\n      {\n        userAgent: ['SomeOtherBot'],\n        disallow: ['\u002F'],\n      },\n    ],\n  },\n})\n",[163,466,467,480,504,513,523,528,548,568,573,581,586],{"__ignoreMap":197},[201,468,469,471,473,476,478],{"class":203,"line":204},[201,470,208],{"class":207},[201,472,211],{"class":207},[201,474,475],{"class":214}," defineNuxtConfig",[201,477,219],{"class":218},[201,479,223],{"class":222},[201,481,482,485,487,490,493,497,499,502],{"class":203,"line":226},[201,483,484],{"class":229},"  extends",[201,486,190],{"class":222},[201,488,489],{"class":218}," [",[201,491,492],{"class":222},"'",[201,494,496],{"class":495},"sfazB","@bloggrify\u002Fcore",[201,498,492],{"class":222},[201,500,501],{"class":218},"]",[201,503,260],{"class":222},[201,505,506,509,511],{"class":203,"line":238},[201,507,508],{"class":229},"  robots",[201,510,190],{"class":222},[201,512,235],{"class":222},[201,514,515,518,520],{"class":203,"line":248},[201,516,517],{"class":229},"    groups",[201,519,190],{"class":222},[201,521,522],{"class":218}," [\n",[201,524,525],{"class":203,"line":263},[201,526,527],{"class":222},"      {\n",[201,529,530,533,535,537,539,542,544,546],{"class":203,"line":276},[201,531,532],{"class":229},"        userAgent",[201,534,190],{"class":222},[201,536,489],{"class":218},[201,538,492],{"class":222},[201,540,541],{"class":495},"SomeOtherBot",[201,543,492],{"class":222},[201,545,501],{"class":218},[201,547,260],{"class":222},[201,549,550,553,555,557,559,562,564,566],{"class":203,"line":282},[201,551,552],{"class":229},"        disallow",[201,554,190],{"class":222},[201,556,489],{"class":218},[201,558,492],{"class":222},[201,560,561],{"class":495},"\u002F",[201,563,492],{"class":222},[201,565,501],{"class":218},[201,567,260],{"class":222},[201,569,570],{"class":203,"line":288},[201,571,572],{"class":222},"      },\n",[201,574,576,579],{"class":203,"line":575},9,[201,577,578],{"class":218},"    ]",[201,580,260],{"class":222},[201,582,584],{"class":203,"line":583},10,[201,585,285],{"class":222},[201,587,589,591],{"class":203,"line":588},11,[201,590,291],{"class":222},[201,592,294],{"class":218},[594,595,596,597,599],"warning",{},"This is a polite request, not a protection. ",[163,598,165],{}," is voluntary: well-behaved crawlers honour\nit, others have been caught ignoring it. Anything published on a static, public blog can be copied.\nIf you need real enforcement, block at the network level instead, for example with Cloudflare's\n\"Block AI Scrapers\" toggle. That happens at your host, outside of Bloggrify.",[296,601,603],{"id":602},"publishing-llmstxt","Publishing llms.txt",[148,605,302,606,306,609,612,613,616,617,622],{},[163,607,608],{},"llms",[163,610,611],{},"true"," to publish a ",[163,614,615],{},"\u002Fllms.txt"," route: a markdown index of your posts, with a title,\na description and a link for each one. See ",[427,618,621],{"href":619,"rel":620},"https:\u002F\u002Fllmstxt.org",[431],"llmstxt.org"," for the format.",[192,624,626],{"className":194,"code":625,"filename":189,"language":196,"meta":197,"style":197},"export default defineAppConfig({\n  seo: {\n    ai: {\n      llms: true,\n    },\n  },\n})\n",[163,627,628,640,648,656,666,670,674],{"__ignoreMap":197},[201,629,630,632,634,636,638],{"class":203,"line":204},[201,631,208],{"class":207},[201,633,211],{"class":207},[201,635,215],{"class":214},[201,637,219],{"class":218},[201,639,223],{"class":222},[201,641,642,644,646],{"class":203,"line":226},[201,643,230],{"class":229},[201,645,190],{"class":222},[201,647,235],{"class":222},[201,649,650,652,654],{"class":203,"line":238},[201,651,241],{"class":229},[201,653,190],{"class":222},[201,655,235],{"class":222},[201,657,658,660,662,664],{"class":203,"line":248},[201,659,251],{"class":229},[201,661,190],{"class":222},[201,663,271],{"class":256},[201,665,260],{"class":222},[201,667,668],{"class":203,"line":263},[201,669,279],{"class":222},[201,671,672],{"class":203,"line":276},[201,673,285],{"class":222},[201,675,676,678],{"class":203,"line":282},[201,677,291],{"class":222},[201,679,294],{"class":218},[148,681,682,683,381,686,689,690,692,693,695],{},"The file is generated at build time, alongside ",[163,684,685],{},"sitemap.xml",[163,687,688],{},"rss.xml",". Drafts and hidden posts\nare excluded. When ",[163,691,608],{}," is ",[163,694,309],{},", which is the default, the route is not generated at all.",[697,698,699,701,702,705],"note",{},[163,700,175],{}," is an invitation, not a restriction. It does not tell crawlers what they may do, it only\nmakes your content easier to consume. If you want AI tools to stay away, ",[163,703,704],{},"allowCrawlers: false"," is\nthe option you are looking for, and enabling both at once is contradictory. Bloggrify prints a\nwarning at build time if you do.",[707,708,710],"h3",{"id":709},"is-it-worth-enabling","Is it worth enabling?",[148,712,713,714,716,717,720],{},"Be aware that the value is speculative today. No major AI provider has confirmed that its crawlers\nread ",[163,715,175],{},", and Google has publicly compared it to the old ",[163,718,719],{},"keywords"," meta tag. The case that\ndoes work is a human pasting your URL into a chat: the tool fetches the page, and clean markdown\nbeats HTML full of navigation and scripts.",[148,722,723],{},"For a documentation site, that is a real win. For a blog, where each post is already a clean page,\nthe gain is smaller. It costs one small file, so enable it if you like, but do not expect traffic\nfrom it.",[296,725,727],{"id":726},"indexing","Indexing",[148,729,730,731,733],{},"Whether search engines index your blog at all is a separate setting, documented in\n",[427,732,86],{"href":87},".",[735,736,737],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}",{"title":197,"searchDepth":226,"depth":226,"links":739},[740,741,744],{"id":298,"depth":226,"text":299},{"id":602,"depth":226,"text":603,"children":742},[743],{"id":709,"depth":238,"text":710},{"id":726,"depth":226,"text":727},"Decide whether AI tools can read your blog, and whether they should find it easy.","md",null,{},true,{"title":102,"description":745},"5s-7QfijKohLSAd0CUT5IKzNTgrNozHKZKYvdde3tbw",[753,755],{"title":98,"path":99,"stem":100,"description":754,"children":-1},"Learn how to add analytics to your blog.",{"title":106,"path":107,"stem":108,"description":756,"children":-1},"Learn how to change the look and feel of your blog.",1784322053775]