[{"data":1,"prerenderedAt":1110},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fsite-kit\u002Fexisting-astro-sites":3,"docs-navigation":964,"docs-surround-\u002Fdocs\u002Fsite-kit\u002Fexisting-astro-sites":1107},{"id":4,"title":5,"body":6,"description":956,"extension":957,"icon":958,"meta":959,"navigation":958,"path":960,"seo":961,"stem":962,"__hash__":963},"docs\u002Fdocs\u002F4.site-kit\u002F10.existing-astro-sites.md","Existing Astro sites",{"type":7,"value":8,"toc":947},"minimark",[9,13,17,48,51,56,430,441,445,456,571,602,643,661,665,668,682,692,696,706,749,770,781,785,811,818,822,915,919,935,943],[10,11,5],"h1",{"id":12},"existing-astro-sites",[14,15,16],"p",{},"An Astro site that keeps its own pages, layout and components can take the kit's core alone. The core changes none of the site's pages. It adds:",[18,19,20,24,32,35,38],"ul",{},[21,22,23],"li",{},"a check that the site builds to static files, which is what Hostsmith serves;",[21,25,26,27,31],{},"a description of the site's content, ",[28,29,30],"code",{},".hostsmith\u002Fschema.json",", for CMS editors and checks;",[21,33,34],{},"a Decap CMS config generated from it, which Decap CMS and Sveltia CMS can edit the site with;",[21,36,37],{},"page copy: the text a page writes in its markup, moved into files a CMS can edit;",[21,39,40,43,44,47],{},[28,41,42],{},"check-fields",", which reports how much of each page's text a CMS can edit, and ",[28,45,46],{},"check-urls"," for the old site's URLs.",[14,49,50],{},"It adds no routes, layout, components, styles or middleware, and sets none of the site's build options. The site keeps its own head, SEO tags and sitemap.",[52,53,55],"h2",{"id":54},"add-the-core","Add the core",[57,58,59,91,179,381],"ol",{},[21,60,61,62],{},"Install the package:",[63,64,69],"pre",{"className":65,"code":66,"language":67,"meta":68,"style":68},"language-bash shiki shiki-themes github-dark","npm install --save-exact @hostsmith\u002Fsite-kit-astro\n","bash","",[28,70,71],{"__ignoreMap":68},[72,73,76,80,84,88],"span",{"class":74,"line":75},"line",1,[72,77,79],{"class":78},"svObZ","npm",[72,81,83],{"class":82},"sU2Wk"," install",[72,85,87],{"class":86},"sDLfK"," --save-exact",[72,89,90],{"class":82}," @hostsmith\u002Fsite-kit-astro\n",[21,92,93,94,97,98],{},"Add the core to ",[28,95,96],{},"astro.config.mjs",":",[63,99,103],{"className":100,"code":101,"language":102,"meta":68,"style":68},"language-js shiki shiki-themes github-dark","import siteKitCore from \"@hostsmith\u002Fsite-kit-astro\u002Fcore\";\nimport { defineConfig } from \"astro\u002Fconfig\";\n\nexport default defineConfig({\n  integrations: [siteKitCore()],\n});\n","js",[28,104,105,124,139,146,161,173],{"__ignoreMap":68},[72,106,107,111,115,118,121],{"class":74,"line":75},[72,108,110],{"class":109},"snl16","import",[72,112,114],{"class":113},"s95oV"," siteKitCore ",[72,116,117],{"class":109},"from",[72,119,120],{"class":82}," \"@hostsmith\u002Fsite-kit-astro\u002Fcore\"",[72,122,123],{"class":113},";\n",[72,125,127,129,132,134,137],{"class":74,"line":126},2,[72,128,110],{"class":109},[72,130,131],{"class":113}," { defineConfig } ",[72,133,117],{"class":109},[72,135,136],{"class":82}," \"astro\u002Fconfig\"",[72,138,123],{"class":113},[72,140,142],{"class":74,"line":141},3,[72,143,145],{"emptyLinePlaceholder":144},true,"\n",[72,147,149,152,155,158],{"class":74,"line":148},4,[72,150,151],{"class":109},"export",[72,153,154],{"class":109}," default",[72,156,157],{"class":78}," defineConfig",[72,159,160],{"class":113},"({\n",[72,162,164,167,170],{"class":74,"line":163},5,[72,165,166],{"class":113},"  integrations: [",[72,168,169],{"class":78},"siteKitCore",[72,171,172],{"class":113},"()],\n",[72,174,176],{"class":74,"line":175},6,[72,177,178],{"class":113},"});\n",[21,180,181,182,185,186,97,189],{},"Add ",[28,183,184],{},"hostsmith.json"," at the site's root, with the GitHub repository a CMS saves to in ",[28,187,188],{},"cms.repo",[63,190,194],{"className":191,"code":192,"language":193,"meta":68,"style":68},"language-json shiki shiki-themes github-dark","{\n  \"kit\": { \"framework\": \"astro\" },\n  \"site\": { \"id\": \"\" },\n  \"build\": { \"command\": \"npm run build\", \"output\": \"dist\", \"node\": \"24\" },\n  \"content\": {\n    \"schema\": { \"source\": \"zod\", \"path\": \".hostsmith\u002Fschema.json\" },\n    \"root\": \"src\u002Fcontent\"\n  },\n  \"media\": { \"dir\": \"public\u002Fassets\", \"publicPath\": \"\u002Fassets\" },\n  \"cms\": { \"repo\": \"OWNER\u002FREPOSITORY\" }\n}\n","json",[28,195,196,201,221,238,276,284,311,322,328,356,375],{"__ignoreMap":68},[72,197,198],{"class":74,"line":75},[72,199,200],{"class":113},"{\n",[72,202,203,206,209,212,215,218],{"class":74,"line":126},[72,204,205],{"class":86},"  \"kit\"",[72,207,208],{"class":113},": { ",[72,210,211],{"class":86},"\"framework\"",[72,213,214],{"class":113},": ",[72,216,217],{"class":82},"\"astro\"",[72,219,220],{"class":113}," },\n",[72,222,223,226,228,231,233,236],{"class":74,"line":141},[72,224,225],{"class":86},"  \"site\"",[72,227,208],{"class":113},[72,229,230],{"class":86},"\"id\"",[72,232,214],{"class":113},[72,234,235],{"class":82},"\"\"",[72,237,220],{"class":113},[72,239,240,243,245,248,250,253,256,259,261,264,266,269,271,274],{"class":74,"line":148},[72,241,242],{"class":86},"  \"build\"",[72,244,208],{"class":113},[72,246,247],{"class":86},"\"command\"",[72,249,214],{"class":113},[72,251,252],{"class":82},"\"npm run build\"",[72,254,255],{"class":113},", ",[72,257,258],{"class":86},"\"output\"",[72,260,214],{"class":113},[72,262,263],{"class":82},"\"dist\"",[72,265,255],{"class":113},[72,267,268],{"class":86},"\"node\"",[72,270,214],{"class":113},[72,272,273],{"class":82},"\"24\"",[72,275,220],{"class":113},[72,277,278,281],{"class":74,"line":163},[72,279,280],{"class":86},"  \"content\"",[72,282,283],{"class":113},": {\n",[72,285,286,289,291,294,296,299,301,304,306,309],{"class":74,"line":175},[72,287,288],{"class":86},"    \"schema\"",[72,290,208],{"class":113},[72,292,293],{"class":86},"\"source\"",[72,295,214],{"class":113},[72,297,298],{"class":82},"\"zod\"",[72,300,255],{"class":113},[72,302,303],{"class":86},"\"path\"",[72,305,214],{"class":113},[72,307,308],{"class":82},"\".hostsmith\u002Fschema.json\"",[72,310,220],{"class":113},[72,312,314,317,319],{"class":74,"line":313},7,[72,315,316],{"class":86},"    \"root\"",[72,318,214],{"class":113},[72,320,321],{"class":82},"\"src\u002Fcontent\"\n",[72,323,325],{"class":74,"line":324},8,[72,326,327],{"class":113},"  },\n",[72,329,331,334,336,339,341,344,346,349,351,354],{"class":74,"line":330},9,[72,332,333],{"class":86},"  \"media\"",[72,335,208],{"class":113},[72,337,338],{"class":86},"\"dir\"",[72,340,214],{"class":113},[72,342,343],{"class":82},"\"public\u002Fassets\"",[72,345,255],{"class":113},[72,347,348],{"class":86},"\"publicPath\"",[72,350,214],{"class":113},[72,352,353],{"class":82},"\"\u002Fassets\"",[72,355,220],{"class":113},[72,357,359,362,364,367,369,372],{"class":74,"line":358},10,[72,360,361],{"class":86},"  \"cms\"",[72,363,208],{"class":113},[72,365,366],{"class":86},"\"repo\"",[72,368,214],{"class":113},[72,370,371],{"class":82},"\"OWNER\u002FREPOSITORY\"",[72,373,374],{"class":113}," }\n",[72,376,378],{"class":74,"line":377},11,[72,379,380],{"class":113},"}\n",[21,382,383,384,419,422,423,425,426,429],{},"Write the description of the site's content and its CMS config, then build:",[63,385,387],{"className":65,"code":386,"language":67,"meta":68,"style":68},"npx site-kit schema\nnpx site-kit decap-config\nnpm run build\n",[28,388,389,400,409],{"__ignoreMap":68},[72,390,391,394,397],{"class":74,"line":75},[72,392,393],{"class":78},"npx",[72,395,396],{"class":82}," site-kit",[72,398,399],{"class":82}," schema\n",[72,401,402,404,406],{"class":74,"line":126},[72,403,393],{"class":78},[72,405,396],{"class":82},[72,407,408],{"class":82}," decap-config\n",[72,410,411,413,416],{"class":74,"line":141},[72,412,79],{"class":78},[72,414,415],{"class":82}," run",[72,417,418],{"class":82}," build\n",[420,421],"br",{},"Commit ",[28,424,30],{}," and ",[28,427,428],{},"public\u002Fadmin\u002Fconfig.yml",". Run both commands again after a change to a collection's schema: the build fails while either file is out of date.",[14,431,432,433,436,437,440],{},"The site must build to static files. A build with ",[28,434,435],{},"output: \"server\"",", or with a page or endpoint that sets ",[28,438,439],{},"export const prerender = false",", fails and names it.",[52,442,444],{"id":443},"page-copy","Page copy",[14,446,447,448,451,452,455],{},"Text that a page writes in its markup, such as its hero's title, moves into a ",[28,449,450],{},"copy"," collection, so a CMS can edit it: one YAML file per page in ",[28,453,454],{},"src\u002Fcontent\u002Fcopy\u002F",", each with its own schema.",[63,457,461],{"className":458,"code":459,"language":460,"meta":68,"style":68},"language-ts shiki shiki-themes github-dark","\u002F\u002F src\u002Fcontent.config.ts\nimport { pageCopy } from \"@hostsmith\u002Fsite-kit-astro\u002Fcopy\";\nimport { z } from \"astro\u002Fzod\";\n\nexport const copy = pageCopy({\n  home: z.strictObject({ hero: z.strictObject({ title: z.string().min(1) }) }),\n});\nexport const collections = { copy: copy.collection };\n","ts",[28,462,463,469,483,497,501,519,553,557],{"__ignoreMap":68},[72,464,465],{"class":74,"line":75},[72,466,468],{"class":467},"sAwPA","\u002F\u002F src\u002Fcontent.config.ts\n",[72,470,471,473,476,478,481],{"class":74,"line":126},[72,472,110],{"class":109},[72,474,475],{"class":113}," { pageCopy } ",[72,477,117],{"class":109},[72,479,480],{"class":82}," \"@hostsmith\u002Fsite-kit-astro\u002Fcopy\"",[72,482,123],{"class":113},[72,484,485,487,490,492,495],{"class":74,"line":141},[72,486,110],{"class":109},[72,488,489],{"class":113}," { z } ",[72,491,117],{"class":109},[72,493,494],{"class":82}," \"astro\u002Fzod\"",[72,496,123],{"class":113},[72,498,499],{"class":74,"line":148},[72,500,145],{"emptyLinePlaceholder":144},[72,502,503,505,508,511,514,517],{"class":74,"line":163},[72,504,151],{"class":109},[72,506,507],{"class":109}," const",[72,509,510],{"class":86}," copy",[72,512,513],{"class":109}," =",[72,515,516],{"class":78}," pageCopy",[72,518,160],{"class":113},[72,520,521,524,527,530,532,535,538,541,544,547,550],{"class":74,"line":175},[72,522,523],{"class":113},"  home: z.",[72,525,526],{"class":78},"strictObject",[72,528,529],{"class":113},"({ hero: z.",[72,531,526],{"class":78},[72,533,534],{"class":113},"({ title: z.",[72,536,537],{"class":78},"string",[72,539,540],{"class":113},"().",[72,542,543],{"class":78},"min",[72,545,546],{"class":113},"(",[72,548,549],{"class":86},"1",[72,551,552],{"class":113},") }) }),\n",[72,554,555],{"class":74,"line":313},[72,556,178],{"class":113},[72,558,559,561,563,566,568],{"class":74,"line":324},[72,560,151],{"class":109},[72,562,507],{"class":109},[72,564,565],{"class":86}," collections",[72,567,513],{"class":109},[72,569,570],{"class":113}," { copy: copy.collection };\n",[63,572,576],{"className":573,"code":574,"language":575,"meta":68,"style":68},"language-yaml shiki shiki-themes github-dark","# src\u002Fcontent\u002Fcopy\u002Fhome.yml\nhero:\n  title: Fresh bread every morning\n","yaml",[28,577,578,583,592],{"__ignoreMap":68},[72,579,580],{"class":74,"line":75},[72,581,582],{"class":467},"# src\u002Fcontent\u002Fcopy\u002Fhome.yml\n",[72,584,585,589],{"class":74,"line":126},[72,586,588],{"class":587},"s4JwU","hero",[72,590,591],{"class":113},":\n",[72,593,594,597,599],{"class":74,"line":141},[72,595,596],{"class":587},"  title",[72,598,214],{"class":113},[72,600,601],{"class":82},"Fresh bread every morning\n",[63,603,607],{"className":604,"code":605,"language":606,"meta":68,"style":68},"language-astro shiki shiki-themes github-dark","---\n\u002F\u002F src\u002Fpages\u002Findex.astro\nimport { copy } from \"..\u002Fcontent.config.ts\";\nconst home = await copy.get(\"home\");\nconst f = copy.fields(\"home\");\n---\n\u003Ch1 {...f(\"hero.title\")}>{home.hero.title}\u003C\u002Fh1>\n","astro",[28,608,609,614,619,624,629,634,638],{"__ignoreMap":68},[72,610,611],{"class":74,"line":75},[72,612,613],{},"---\n",[72,615,616],{"class":74,"line":126},[72,617,618],{},"\u002F\u002F src\u002Fpages\u002Findex.astro\n",[72,620,621],{"class":74,"line":141},[72,622,623],{},"import { copy } from \"..\u002Fcontent.config.ts\";\n",[72,625,626],{"class":74,"line":148},[72,627,628],{},"const home = await copy.get(\"home\");\n",[72,630,631],{"class":74,"line":163},[72,632,633],{},"const f = copy.fields(\"home\");\n",[72,635,636],{"class":74,"line":175},[72,637,613],{},[72,639,640],{"class":74,"line":313},[72,641,642],{},"\u003Ch1 {...f(\"hero.title\")}>{home.hero.title}\u003C\u002Fh1>\n",[14,644,645,648,649,652,653,656,657,660],{},[28,646,647],{},"copy.fields"," gives each element its field attribute, ",[28,650,651],{},"data-field",", which tells a CMS and the checks which field the element shows. Bind the element that shows the value, not a container around it. The site's other collections bind their elements with ",[28,654,655],{},"fieldsFor(\"news\", entry.id)"," from ",[28,658,659],{},"@hostsmith\u002Fsite-kit-astro\u002Ffield",".",[52,662,664],{"id":663},"how-much-a-cms-can-edit","How much a CMS can edit",[14,666,667],{},"After a build:",[63,669,671],{"className":65,"code":670,"language":67,"meta":68,"style":68},"npx site-kit check-fields\n",[28,672,673],{"__ignoreMap":68},[72,674,675,677,679],{"class":74,"line":75},[72,676,393],{"class":78},[72,678,396],{"class":82},[72,680,681],{"class":82}," check-fields\n",[14,683,684,685,688,689,660],{},"It reports, page by page, how much of the visible text is inside an element with a field attribute. Add ",[28,686,687],{},"--min 90"," to fail below 90%, such as in CI. Mark text a CMS doesn't edit, such as a legal line in the footer, with ",[28,690,691],{},"data-field-ignore",[52,693,695],{"id":694},"locales","Locales",[14,697,698,699,701,702,705],{},"A core site in several languages lists them in ",[28,700,184],{},", and keeps its own routing, language switcher and ",[28,703,704],{},"hreflang"," links:",[63,707,709],{"className":191,"code":708,"language":193,"meta":68,"style":68},"\"content\": { \"locales\": { \"default\": \"en\", \"codes\": [\"en\", \"de\"] } }\n",[28,710,711],{"__ignoreMap":68},[72,712,713,716,718,721,723,726,728,731,733,736,739,741,743,746],{"class":74,"line":75},[72,714,715],{"class":82},"\"content\"",[72,717,208],{"class":113},[72,719,720],{"class":86},"\"locales\"",[72,722,208],{"class":113},[72,724,725],{"class":86},"\"default\"",[72,727,214],{"class":113},[72,729,730],{"class":82},"\"en\"",[72,732,255],{"class":113},[72,734,735],{"class":86},"\"codes\"",[72,737,738],{"class":113},": [",[72,740,730],{"class":82},[72,742,255],{"class":113},[72,744,745],{"class":82},"\"de\"",[72,747,748],{"class":113},"] } }\n",[14,750,751,752,425,755,758,759,762,763,765,766,769],{},"Each collection keeps its files in a layout a CMS can write: a folder per locale, such as ",[28,753,754],{},"news\u002Fen\u002Fa.md",[28,756,757],{},"news\u002Fde\u002Fa.md",", or the code before the extension, such as ",[28,760,761],{},"news\u002Fa.en.md",". The default locale needs its own folder or code too. With locales, each ",[28,764,450],{}," file holds every locale's copy under its code. When the site also sets Astro's ",[28,767,768],{},"i18n",", both must name the same locales.",[14,771,772,773,780],{},"The README has the ",[774,775,779],"a",{"href":776,"rel":777},"https:\u002F\u002Fgithub.com\u002Fhostsmith\u002Fsite-kit-astro\u002Fblob\u002Fmain\u002FREADME.md#locales-1",[778],"nofollow","layouts and the options"," in full.",[52,782,784],{"id":783},"the-cms-config","The CMS config",[14,786,787,788,790,791,793,794,797,798,801,802,805,806,660],{},"The generated config, ",[28,789,428],{},", saves to the repository in ",[28,792,188],{},", on its ",[28,795,796],{},"main"," branch. Every field gets the widget of its type, and a field can set its own, its label and its hint with Zod's ",[28,799,800],{},".meta()",". A field with no widget, such as a union of types, fails ",[28,803,804],{},"decap-config",", naming it. The README lists ",[774,807,810],{"href":808,"rel":809},"https:\u002F\u002Fgithub.com\u002Fhostsmith\u002Fsite-kit-astro\u002Fblob\u002Fmain\u002FREADME.md#decap-cms",[778],"every widget",[14,812,813,814,817],{},"The build output never holds ",[28,815,816],{},"admin\u002F",", so the config stays in the repository and isn't deployed with the site.",[52,819,821],{"id":820},"commands","Commands",[823,824,825,838],"table",{},[826,827,828],"thead",{},[829,830,831,835],"tr",{},[832,833,834],"th",{},"Command",[832,836,837],{},"In a core site",[839,840,841,859,874,888,902],"tbody",{},[829,842,843,849],{},[844,845,846],"td",{},[28,847,848],{},"npx site-kit schema",[844,850,851,852,854,855,858],{},"writes ",[28,853,30],{},"; ",[28,856,857],{},"--check"," only checks it",[829,860,861,866],{},[844,862,863],{},[28,864,865],{},"npx site-kit decap-config",[844,867,868,869,871,872,858],{},"generates ",[28,870,428],{}," from it; ",[28,873,857],{},[829,875,876,881],{},[844,877,878],{},[28,879,880],{},"npx site-kit check-fields",[844,882,883,884,887],{},"reports the text coverage after a build; ",[28,885,886],{},"--min \u003Cpercent>"," makes it a gate",[829,889,890,895],{},[844,891,892],{},[28,893,894],{},"npx site-kit check-urls",[844,896,897,898],{},"checks the old site's URLs, as in ",[774,899,901],{"href":900},"\u002Fdocs\u002Fsite-kit\u002Fold-urls","Keep old URLs",[829,903,904,912],{},[844,905,906,255,909],{},[28,907,908],{},"npx site-kit section-id",[28,910,911],{},"npx site-kit check-styles",[844,913,914],{},"fail: they are for kit sites",[52,916,918],{"id":917},"deploy-it","Deploy it",[14,920,921,922,925,926,929,930,934],{},"A core site deploys with the kit's workflow: copy ",[28,923,924],{},".github\u002Fworkflows\u002Fhostsmith.yml"," from the ",[28,927,928],{},"basics"," example, at the release the site uses, and remove its two style-check steps, \"Check styles\" and \"Check built styles\", which are for kit sites. Then set it up as ",[774,931,933],{"href":932},"\u002Fdocs\u002Fsite-kit\u002Fdeploy","Deploy with Hostsmith"," says.",[14,936,937,938,780],{},"The README has ",[774,939,942],{"href":940,"rel":941},"https:\u002F\u002Fgithub.com\u002Fhostsmith\u002Fsite-kit-astro\u002Fblob\u002Fmain\u002FREADME.md#core-for-existing-astro-sites",[778],"the core",[944,945,946],"style",{},"html pre.shiki code .svObZ, html code.shiki .svObZ{--shiki-default:#B392F0}html pre.shiki code .sU2Wk, html code.shiki .sU2Wk{--shiki-default:#9ECBFF}html pre.shiki code .sDLfK, html code.shiki .sDLfK{--shiki-default:#79B8FF}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 pre.shiki code .snl16, html code.shiki .snl16{--shiki-default:#F97583}html pre.shiki code .s95oV, html code.shiki .s95oV{--shiki-default:#E1E4E8}html pre.shiki code .sAwPA, html code.shiki .sAwPA{--shiki-default:#6A737D}html pre.shiki code .s4JwU, html code.shiki .s4JwU{--shiki-default:#85E89D}",{"title":68,"searchDepth":126,"depth":126,"links":948},[949,950,951,952,953,954,955],{"id":54,"depth":126,"text":55},{"id":443,"depth":126,"text":444},{"id":663,"depth":126,"text":664},{"id":694,"depth":126,"text":695},{"id":783,"depth":126,"text":784},{"id":820,"depth":126,"text":821},{"id":917,"depth":126,"text":918},"Add the site kit's core to an Astro site that keeps its own pages - page copy, field bindings, locales, a generated Decap CMS config, and the checks.","md",null,{},"\u002Fdocs\u002Fsite-kit\u002Fexisting-astro-sites",{"title":5,"description":956},"docs\u002F4.site-kit\u002F10.existing-astro-sites","UprsxPsyyQ4O1wtg1kXVZ8rj5romnwkp7pkVZAM7tNY",[965],{"title":966,"path":967,"stem":968,"children":969,"page":1106},"Docs","\u002Fdocs","docs",[970,997,1009,1044,1088],{"title":971,"path":972,"stem":973,"children":974,"page":-1,"icon":976},"Getting Started","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started\u002Findex",[975,977,981,985,989,993],{"title":971,"path":972,"stem":973,"icon":976},"solar:rocket-bold",{"title":978,"path":979,"stem":980},"Introduction","\u002Fdocs\u002Fgetting-started\u002Fintroduction","docs\u002F1.getting-started\u002F1.introduction",{"title":982,"path":983,"stem":984},"Quick Start","\u002Fdocs\u002Fgetting-started\u002Fquick-start","docs\u002F1.getting-started\u002F2.quick-start",{"title":986,"path":987,"stem":988},"Sites","\u002Fdocs\u002Fgetting-started\u002Fsites","docs\u002F1.getting-started\u002F3.sites",{"title":990,"path":991,"stem":992},"Custom Domains","\u002Fdocs\u002Fgetting-started\u002Fcustom-domains","docs\u002F1.getting-started\u002F4.custom-domains",{"title":994,"path":995,"stem":996},"Support","\u002Fdocs\u002Fgetting-started\u002Fsupport","docs\u002F1.getting-started\u002F5.support",{"title":998,"path":999,"stem":1000,"children":1001,"page":-1,"icon":1003},"Integrations","\u002Fdocs\u002Fintegrations","docs\u002F2.integrations\u002Findex",[1002,1004],{"title":998,"path":999,"stem":1000,"icon":1003},"ph:usb-bold",{"title":1005,"path":1006,"stem":1007,"icon":1008},"n8n","\u002Fdocs\u002Fintegrations\u002Fn8n","docs\u002F2.integrations\u002F1.n8n","simple-icons:n8n",{"title":1010,"path":1011,"stem":1012,"children":1013,"page":-1,"icon":1015},"MCP","\u002Fdocs\u002Fmcp","docs\u002F3.mcp\u002Findex",[1014,1016,1020,1024,1028,1032,1036,1040],{"title":1010,"path":1011,"stem":1012,"icon":1015},"solar:plug-circle-bold",{"title":1017,"path":1018,"stem":1019},"Quick start","\u002Fdocs\u002Fmcp\u002Fquick-start","docs\u002F3.mcp\u002F1.quick-start",{"title":1021,"path":1022,"stem":1023},"Clients","\u002Fdocs\u002Fmcp\u002Fclients","docs\u002F3.mcp\u002F2.clients",{"title":1025,"path":1026,"stem":1027},"Authentication","\u002Fdocs\u002Fmcp\u002Fauthentication","docs\u002F3.mcp\u002F3.authentication",{"title":1029,"path":1030,"stem":1031},"Tools","\u002Fdocs\u002Fmcp\u002Ftools","docs\u002F3.mcp\u002F4.tools",{"title":1033,"path":1034,"stem":1035},"Recipes","\u002Fdocs\u002Fmcp\u002Frecipes","docs\u002F3.mcp\u002F5.recipes",{"title":1037,"path":1038,"stem":1039},"Limits and errors","\u002Fdocs\u002Fmcp\u002Flimits-and-errors","docs\u002F3.mcp\u002F6.limits-and-errors",{"title":1041,"path":1042,"stem":1043},"FAQ","\u002Fdocs\u002Fmcp\u002Ffaq","docs\u002F3.mcp\u002F7.faq",{"title":1045,"path":1046,"stem":1047,"children":1048,"page":-1,"icon":1050},"Site kit","\u002Fdocs\u002Fsite-kit","docs\u002F4.site-kit\u002Findex",[1049,1051,1055,1059,1063,1067,1071,1073,1075,1079,1083,1084],{"title":1045,"path":1046,"stem":1047,"icon":1050},"solar:layers-bold",{"title":1052,"path":1053,"stem":1054},"Overview","\u002Fdocs\u002Fsite-kit\u002Foverview","docs\u002F4.site-kit\u002F01.overview",{"title":1056,"path":1057,"stem":1058},"Start a site","\u002Fdocs\u002Fsite-kit\u002Fstart-a-site","docs\u002F4.site-kit\u002F02.start-a-site",{"title":1060,"path":1061,"stem":1062},"Content","\u002Fdocs\u002Fsite-kit\u002Fcontent","docs\u002F4.site-kit\u002F03.content",{"title":1064,"path":1065,"stem":1066},"Design","\u002Fdocs\u002Fsite-kit\u002Fdesign","docs\u002F4.site-kit\u002F04.design",{"title":1068,"path":1069,"stem":1070},"Languages","\u002Fdocs\u002Fsite-kit\u002Flanguages","docs\u002F4.site-kit\u002F05.languages",{"title":933,"path":932,"stem":1072},"docs\u002F4.site-kit\u002F06.deploy",{"title":901,"path":900,"stem":1074},"docs\u002F4.site-kit\u002F07.old-urls",{"title":1076,"path":1077,"stem":1078},"Work with an AI agent","\u002Fdocs\u002Fsite-kit\u002Fai-agents","docs\u002F4.site-kit\u002F08.ai-agents",{"title":1080,"path":1081,"stem":1082},"Kit updates","\u002Fdocs\u002Fsite-kit\u002Fupdates","docs\u002F4.site-kit\u002F09.updates",{"title":5,"path":960,"stem":962},{"title":1085,"path":1086,"stem":1087},"External CMS","\u002Fdocs\u002Fsite-kit\u002Fexternal-cms","docs\u002F4.site-kit\u002F11.external-cms",{"title":1089,"path":1090,"stem":1091,"children":1092,"page":-1,"icon":1094},"Developers","\u002Fdocs\u002Fdevelopers","docs\u002F5.developers\u002Findex",[1093,1095,1098,1102],{"title":1089,"path":1090,"stem":1091,"icon":1094},"solar:code-bold",{"title":1025,"path":1096,"stem":1097},"\u002Fdocs\u002Fdevelopers\u002Fauthentication","docs\u002F5.developers\u002F1.authentication",{"title":1099,"path":1100,"stem":1101},"API Explorer","\u002Fdocs\u002Fdevelopers\u002Fapi-explorer","docs\u002F5.developers\u002F2.api-explorer",{"title":1103,"path":1104,"stem":1105},"Node.js SDK","\u002Fdocs\u002Fdevelopers\u002Fsdk","docs\u002F5.developers\u002F3.sdk",false,[1108,1109],{"title":1080,"path":1081,"stem":1082,"children":-1},{"title":1085,"path":1086,"stem":1087,"children":-1},1792842402120]