[{"data":1,"prerenderedAt":572},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fsite-kit\u002Fstart-a-site":3,"docs-navigation":432,"docs-surround-\u002Fdocs\u002Fsite-kit\u002Fstart-a-site":569},{"id":4,"title":5,"body":6,"description":424,"extension":425,"icon":426,"meta":427,"navigation":426,"path":428,"seo":429,"stem":430,"__hash__":431},"docs\u002Fdocs\u002F4.site-kit\u002F02.start-a-site.md","Start a site",{"type":7,"value":8,"toc":415},"minimark",[9,13,22,27,49,53,60,101,115,119,160,164,167,215,225,229,350,362,374,382,386,389,393,411],[10,11,5],"h1",{"id":12},"start-a-site",[14,15,16,17,21],"p",{},"A kit site starts as a copy of one of the kit's examples. The copy is the site's own from the first commit: its content, its settings and its design. The kit's code stays in the npm package, and the site takes its updates with ",[18,19,20],"code",{},"npm install",".",[23,24,26],"h2",{"id":25},"before-you-start","Before you start",[28,29,30,41],"ul",{},[31,32,33,40],"li",{},[34,35,39],"a",{"href":36,"rel":37},"https:\u002F\u002Fnodejs.org",[38],"nofollow","Node.js"," 24 or later, with npm.",[31,42,43,48],{},[34,44,47],{"href":45,"rel":46},"https:\u002F\u002Fgit-scm.com",[38],"git"," and a GitHub account.",[23,50,52],{"id":51},"_1-create-the-site","1. Create the site",[14,54,55,56,59],{},"Create the site from the ",[18,57,58],{},"basics"," example of release v0.7.0, the latest when this page was written:",[61,62,67],"pre",{"className":63,"code":64,"language":65,"meta":66,"style":66},"language-bash shiki shiki-themes github-dark","npm create astro@latest my-site -- --template hostsmith\u002Fsite-kit-astro\u002Fexamples\u002Fbasics#v0.7.0 --no-ai\n","bash","",[18,68,69],{"__ignoreMap":66},[70,71,74,78,82,85,88,92,95,98],"span",{"class":72,"line":73},"line",1,[70,75,77],{"class":76},"svObZ","npm",[70,79,81],{"class":80},"sU2Wk"," create",[70,83,84],{"class":80}," astro@latest",[70,86,87],{"class":80}," my-site",[70,89,91],{"class":90},"sDLfK"," --",[70,93,94],{"class":90}," --template",[70,96,97],{"class":80}," hostsmith\u002Fsite-kit-astro\u002Fexamples\u002Fbasics#v0.7.0",[70,99,100],{"class":90}," --no-ai\n",[14,102,103,106,107,110,111,114],{},[18,104,105],{},"my-site"," is the folder it creates. When create-astro asks, install the dependencies and initialize a git repository. ",[18,108,109],{},"--no-ai"," keeps the example's ",[18,112,113],{},"AGENTS.md",", which points AI agents to the kit's rules: without it, create-astro replaces the file with its own.",[23,116,118],{"id":117},"_2-run-it","2. Run it",[61,120,122],{"className":63,"code":121,"language":65,"meta":66,"style":66},"cd my-site\nnpm run dev     # a local preview at http:\u002F\u002Flocalhost:4321, reloaded as files change\nnpm run build   # the static site, written to dist\u002F\n",[18,123,124,132,147],{"__ignoreMap":66},[70,125,126,129],{"class":72,"line":73},[70,127,128],{"class":90},"cd",[70,130,131],{"class":80}," my-site\n",[70,133,135,137,140,143],{"class":72,"line":134},2,[70,136,77],{"class":76},[70,138,139],{"class":80}," run",[70,141,142],{"class":80}," dev",[70,144,146],{"class":145},"sAwPA","     # a local preview at http:\u002F\u002Flocalhost:4321, reloaded as files change\n",[70,148,150,152,154,157],{"class":72,"line":149},3,[70,151,77],{"class":76},[70,153,139],{"class":80},[70,155,156],{"class":80}," build",[70,158,159],{"class":145},"   # the static site, written to dist\u002F\n",[23,161,163],{"id":162},"_3-put-it-on-github","3. Put it on GitHub",[14,165,166],{},"create-astro made the site's first commit. Create an empty repository on GitHub, private or public, then push the site to it:",[61,168,170],{"className":63,"code":169,"language":65,"meta":66,"style":66},"git branch -M main\ngit remote add origin git@github.com:OWNER\u002FREPOSITORY.git\ngit push -u origin main\n",[18,171,172,185,201],{"__ignoreMap":66},[70,173,174,176,179,182],{"class":72,"line":73},[70,175,47],{"class":76},[70,177,178],{"class":80}," branch",[70,180,181],{"class":90}," -M",[70,183,184],{"class":80}," main\n",[70,186,187,189,192,195,198],{"class":72,"line":134},[70,188,47],{"class":76},[70,190,191],{"class":80}," remote",[70,193,194],{"class":80}," add",[70,196,197],{"class":80}," origin",[70,199,200],{"class":80}," git@github.com:OWNER\u002FREPOSITORY.git\n",[70,202,203,205,208,211,213],{"class":72,"line":149},[70,204,47],{"class":76},[70,206,207],{"class":80}," push",[70,209,210],{"class":90}," -u",[70,212,197],{"class":80},[70,214,184],{"class":80},[14,216,217,220,221,21],{},[18,218,219],{},"main"," is the branch that deploys to the production site, once you ",[34,222,224],{"href":223},"\u002Fdocs\u002Fsite-kit\u002Fdeploy","set up deploys",[23,226,228],{"id":227},"_4-make-it-the-clients","4. Make it the client's",[230,231,232,245],"table",{},[233,234,235],"thead",{},[236,237,238,242],"tr",{},[239,240,241],"th",{},"Change",[239,243,244],{},"Where",[246,247,248,267,277,291,305,320,336],"tbody",{},[236,249,250,254],{},[251,252,253],"td",{},"The production URL",[251,255,256,259,260,263,264],{},[18,257,258],{},"url"," in ",[18,261,262],{},"src\u002Fsite.config.ts",", such as ",[18,265,266],{},"https:\u002F\u002Fwww.example.com",[236,268,269,272],{},[251,270,271],{},"Site name, logo, navigation, phone number and other facts",[251,273,274],{},[18,275,276],{},"src\u002Fcontent\u002Fsettings\u002Fsite.en.yml",[236,278,279,282],{},[251,280,281],{},"Pages",[251,283,284,287,288],{},[18,285,286],{},"src\u002Fcontent\u002Fpages\u002F",", one Markdown file per page, such as ",[18,289,290],{},"about.en.md",[236,292,293,296],{},[251,294,295],{},"Blog posts and other collections",[251,297,298,301,302],{},[18,299,300],{},"src\u002Fcontent\u002Fnews\u002F"," and the other folders in ",[18,303,304],{},"src\u002Fcontent\u002F",[236,306,307,310],{},[251,308,309],{},"Photos and other media",[251,311,312,315,316,319],{},[18,313,314],{},"public\u002Fassets\u002F",". The example's photos are under their own licenses, listed in ",[18,317,318],{},"CREDITS.md",": replace them",[236,321,322,325],{},[251,323,324],{},"Colors, fonts and spacing",[251,326,327,328,331,332],{},"the theme's tokens in ",[18,329,330],{},"src\u002Fstyles\u002Ftheme\u002Ftokens\u002F",". See ",[34,333,335],{"href":334},"\u002Fdocs\u002Fsite-kit\u002Fdesign","Design",[236,337,338,341],{},[251,339,340],{},"The old site's URLs, when the site replaces one",[251,342,343,331,346],{},[18,344,345],{},".hostsmith\u002Fold-urls.txt",[34,347,349],{"href":348},"\u002Fdocs\u002Fsite-kit\u002Fold-urls","Keep old URLs",[14,351,352,353,356,357,361],{},"The ",[18,354,355],{},".en"," in each file's name is the site's language. A site in more languages has a file per language, as ",[34,358,360],{"href":359},"\u002Fdocs\u002Fsite-kit\u002Flanguages","Languages"," explains.",[14,363,364,365,368,369,373],{},"Run ",[18,366,367],{},"npm run build"," after each change: the build fails on content that breaks its schema, and names the file and the field. ",[34,370,372],{"href":371},"\u002Fdocs\u002Fsite-kit\u002Fcontent","Content"," explains what each file holds.",[14,375,376,377,21],{},"The kit's README lists ",[34,378,381],{"href":379,"rel":380},"https:\u002F\u002Fgithub.com\u002Fhostsmith\u002Fsite-kit-astro\u002Fblob\u002Fmain\u002FREADME.md#what-a-site-holds",[38],"everything a site holds",[23,383,385],{"id":384},"license","License",[14,387,388],{},"The example's code is under MIT-0, so the site owes no notice for it, and its owner picks the site's license. The photos and fonts keep their own licenses: a site keeps a font's license text beside the font.",[23,390,392],{"id":391},"next","Next",[28,394,395,403],{},[31,396,397,402],{},[398,399,400],"strong",{},[34,401,372],{"href":371}," - pages, sections, collections and settings.",[31,404,405,410],{},[398,406,407],{},[34,408,409],{"href":223},"Deploy with Hostsmith"," - a preview of every branch, then production.",[412,413,414],"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 .sAwPA, html code.shiki .sAwPA{--shiki-default:#6A737D}",{"title":66,"searchDepth":134,"depth":134,"links":416},[417,418,419,420,421,422,423],{"id":25,"depth":134,"text":26},{"id":51,"depth":134,"text":52},{"id":117,"depth":134,"text":118},{"id":162,"depth":134,"text":163},{"id":227,"depth":134,"text":228},{"id":384,"depth":134,"text":385},{"id":391,"depth":134,"text":392},"Create a site from one of the site kit's examples, run it locally and put it in a GitHub repository.","md",null,{},"\u002Fdocs\u002Fsite-kit\u002Fstart-a-site",{"title":5,"description":424},"docs\u002F4.site-kit\u002F02.start-a-site","6ovlRNrsjSV9fyKuRAy5iP8DaJtDCyUlvFFbUs5X_N0",[433],{"title":434,"path":435,"stem":436,"children":437,"page":568},"Docs","\u002Fdocs","docs",[438,465,477,512,550],{"title":439,"path":440,"stem":441,"children":442,"page":-1,"icon":444},"Getting Started","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started\u002Findex",[443,445,449,453,457,461],{"title":439,"path":440,"stem":441,"icon":444},"solar:rocket-bold",{"title":446,"path":447,"stem":448},"Introduction","\u002Fdocs\u002Fgetting-started\u002Fintroduction","docs\u002F1.getting-started\u002F1.introduction",{"title":450,"path":451,"stem":452},"Quick Start","\u002Fdocs\u002Fgetting-started\u002Fquick-start","docs\u002F1.getting-started\u002F2.quick-start",{"title":454,"path":455,"stem":456},"Sites","\u002Fdocs\u002Fgetting-started\u002Fsites","docs\u002F1.getting-started\u002F3.sites",{"title":458,"path":459,"stem":460},"Custom Domains","\u002Fdocs\u002Fgetting-started\u002Fcustom-domains","docs\u002F1.getting-started\u002F4.custom-domains",{"title":462,"path":463,"stem":464},"Support","\u002Fdocs\u002Fgetting-started\u002Fsupport","docs\u002F1.getting-started\u002F5.support",{"title":466,"path":467,"stem":468,"children":469,"page":-1,"icon":471},"Integrations","\u002Fdocs\u002Fintegrations","docs\u002F2.integrations\u002Findex",[470,472],{"title":466,"path":467,"stem":468,"icon":471},"ph:usb-bold",{"title":473,"path":474,"stem":475,"icon":476},"n8n","\u002Fdocs\u002Fintegrations\u002Fn8n","docs\u002F2.integrations\u002F1.n8n","simple-icons:n8n",{"title":478,"path":479,"stem":480,"children":481,"page":-1,"icon":483},"MCP","\u002Fdocs\u002Fmcp","docs\u002F3.mcp\u002Findex",[482,484,488,492,496,500,504,508],{"title":478,"path":479,"stem":480,"icon":483},"solar:plug-circle-bold",{"title":485,"path":486,"stem":487},"Quick start","\u002Fdocs\u002Fmcp\u002Fquick-start","docs\u002F3.mcp\u002F1.quick-start",{"title":489,"path":490,"stem":491},"Clients","\u002Fdocs\u002Fmcp\u002Fclients","docs\u002F3.mcp\u002F2.clients",{"title":493,"path":494,"stem":495},"Authentication","\u002Fdocs\u002Fmcp\u002Fauthentication","docs\u002F3.mcp\u002F3.authentication",{"title":497,"path":498,"stem":499},"Tools","\u002Fdocs\u002Fmcp\u002Ftools","docs\u002F3.mcp\u002F4.tools",{"title":501,"path":502,"stem":503},"Recipes","\u002Fdocs\u002Fmcp\u002Frecipes","docs\u002F3.mcp\u002F5.recipes",{"title":505,"path":506,"stem":507},"Limits and errors","\u002Fdocs\u002Fmcp\u002Flimits-and-errors","docs\u002F3.mcp\u002F6.limits-and-errors",{"title":509,"path":510,"stem":511},"FAQ","\u002Fdocs\u002Fmcp\u002Ffaq","docs\u002F3.mcp\u002F7.faq",{"title":513,"path":514,"stem":515,"children":516,"page":-1,"icon":518},"Site kit","\u002Fdocs\u002Fsite-kit","docs\u002F4.site-kit\u002Findex",[517,519,523,524,526,528,530,532,534,538,542,546],{"title":513,"path":514,"stem":515,"icon":518},"solar:layers-bold",{"title":520,"path":521,"stem":522},"Overview","\u002Fdocs\u002Fsite-kit\u002Foverview","docs\u002F4.site-kit\u002F01.overview",{"title":5,"path":428,"stem":430},{"title":372,"path":371,"stem":525},"docs\u002F4.site-kit\u002F03.content",{"title":335,"path":334,"stem":527},"docs\u002F4.site-kit\u002F04.design",{"title":360,"path":359,"stem":529},"docs\u002F4.site-kit\u002F05.languages",{"title":409,"path":223,"stem":531},"docs\u002F4.site-kit\u002F06.deploy",{"title":349,"path":348,"stem":533},"docs\u002F4.site-kit\u002F07.old-urls",{"title":535,"path":536,"stem":537},"Work with an AI agent","\u002Fdocs\u002Fsite-kit\u002Fai-agents","docs\u002F4.site-kit\u002F08.ai-agents",{"title":539,"path":540,"stem":541},"Kit updates","\u002Fdocs\u002Fsite-kit\u002Fupdates","docs\u002F4.site-kit\u002F09.updates",{"title":543,"path":544,"stem":545},"Existing Astro sites","\u002Fdocs\u002Fsite-kit\u002Fexisting-astro-sites","docs\u002F4.site-kit\u002F10.existing-astro-sites",{"title":547,"path":548,"stem":549},"External CMS","\u002Fdocs\u002Fsite-kit\u002Fexternal-cms","docs\u002F4.site-kit\u002F11.external-cms",{"title":551,"path":552,"stem":553,"children":554,"page":-1,"icon":556},"Developers","\u002Fdocs\u002Fdevelopers","docs\u002F5.developers\u002Findex",[555,557,560,564],{"title":551,"path":552,"stem":553,"icon":556},"solar:code-bold",{"title":493,"path":558,"stem":559},"\u002Fdocs\u002Fdevelopers\u002Fauthentication","docs\u002F5.developers\u002F1.authentication",{"title":561,"path":562,"stem":563},"API Explorer","\u002Fdocs\u002Fdevelopers\u002Fapi-explorer","docs\u002F5.developers\u002F2.api-explorer",{"title":565,"path":566,"stem":567},"Node.js SDK","\u002Fdocs\u002Fdevelopers\u002Fsdk","docs\u002F5.developers\u002F3.sdk",false,[570,571],{"title":520,"path":521,"stem":522,"children":-1},{"title":372,"path":371,"stem":525,"children":-1},1792842401627]