[{"data":1,"prerenderedAt":28885},["ShallowReactive",2],{"site-header":3,"site-mobile":286,"site-footer":377,"docs-12-blog-crud":468,"site-docs":1769,"docs-sidebar":1860,"docs-pager":17059},{"id":4,"title":5,"badge":6,"description":6,"extension":7,"heading":6,"intro":6,"meta":8,"pageSize":6,"sortBy":6,"sortOrder":6,"stem":284,"tag":6,"__hash__":285},"pageConfig\u002Fdata\u002Fsite.yml","Site",null,"yml",{"url":9,"ogImage":10,"twitterSite":11,"brand":12,"nav":16,"mobileNav":35,"mobileNavCta":46,"headerCta":55,"hero":57,"socialProof":78,"features":95,"steps":124,"pricing":141,"testimonials":191,"cta":211,"widgets":218,"contact":224,"footer":226,"ui":272},"https:\u002F\u002Fnuxas.pages.dev","\u002Fnuxt-js-themes-vue-nuax.jpg","@nuxas",{"name":13,"badge":14,"tagline":15},"Nuxas","4.6.2","Production-ready Nuxt 4 SaaS template kit",[17,20,23,26,29,32],{"label":18,"to":19},"Home","\u002F",{"label":21,"to":22},"Docs","\u002Fdocs",{"label":24,"to":25},"About","\u002Fabout",{"label":27,"to":28},"Products","\u002Fproducts",{"label":30,"to":31},"Blog","\u002Fblog",{"label":33,"to":34},"Contact","\u002Fcontact",[36,37,38,40,42,44],{"label":18,"to":19},{"label":21,"to":22},{"label":39,"to":25},"About Us",{"label":41,"to":28},"Products & Kits",{"label":43,"to":31},"Engineering Blog",{"label":45,"to":34},"Contact & Support",[47,51],{"label":48,"to":49,"variant":50},"Get NUXAS","https:\u002F\u002Fcreativitaz.gumroad.com\u002Fl\u002Fnuxas","primary",{"label":52,"to":53,"variant":54},"Get NUXAS + CMS","https:\u002F\u002Fcreativitaz.gumroad.com\u002Fl\u002Fnuxas-cms","secondary",{"label":56,"to":49},"Get Nuxas",{"badge":58,"title":59,"titleHighlight":60,"subtitle":61,"primaryCta":62,"secondaryCta":63,"metrics":65,"preview":70},"Nuxt 4 + & Nitro Engine Ready","The Production-Grade SaaS Template Built For","Nuxt Developers","A complete Nuxt 4 source code foundation for SaaS company sites. Strict TypeScript, dark mode, SEO pipeline, accessible components, and product pages that accept Gumroad, Lemon Squeezy, Stripe, or PayPal purchase links.",{"label":56,"to":49},{"label":64,"to":22},"View Live Docs",[66,67,68,69],"100% Strict TypeScript","Lighthouse 90+ Performance","Edge-Deployable","WCAG AA Accessible",{"file":71,"tabs":72,"image":10,"alt":75,"width":76,"height":77},"nuxt-js-themes-vue-nuxas.jpg",[73,74],"Nuxt 4","TypeScript","Nuxas Nuxt 4 SaaS company template preview",1600,900,{"tag":79,"title":80,"desc":81,"cards":82},"Trusted By Developers","Built with Nuxt Idiomatic Principles","Over 1,200+ indie hackers, agency teams, and enterprise engineers use NuxtSass Starter to launch their company websites.",[83,86,89,92],{"title":84,"text":85},"14ms","Average serverless TTFB response on Cloudflare Workers edge nodes.",{"title":87,"text":88},"45+","Battle-tested composables for forms, navigation, and theming.",{"title":90,"text":91},"0ms","Hydration mismatch errors with strict SSR verification patterns.",{"title":93,"text":94},"100%","TypeScript type-safety from content schema to Vue templates.",{"tag":96,"title":97,"desc":98,"items":99},"Engineered for Velocity","Everything You Need To Launch in One Kit","We skipped the unnecessary dependencies and bloated abstraction layers. Every module is clean, documented, and ready to adapt.",[100,104,108,112,116,120],{"icon":101,"title":102,"desc":103},"zap","Nitro Engine Architecture","Leverage Nitro's file-based API routing, automatic TypeScript types, cold-start optimization, and unified storage drivers.",{"icon":105,"title":106,"desc":107},"credit-card","Purchase Link Ready","Product pages accept any purchase URL — Gumroad, Lemon Squeezy, Stripe, or PayPal. No backend checkout logic required.",{"icon":109,"title":110,"desc":111},"shield","SEO & Social OpenGraph","Automated sitemaps, dynamic OG image generation with Nuxt OgImage, canonical metadata, and Schema.org rich snippets out of the box.",{"icon":113,"title":114,"desc":115},"globe","Content Collections","Blog, products, and static pages are managed as Markdown and YAML. Optional Decap CMS edition for no-code editing.",{"icon":117,"title":118,"desc":119},"package","Modular Component Kit","Over 30 accessible UI primitives built with Tailwind CSS. Modals, datatables, command palettes, slide-overs, and form fields.",{"icon":121,"title":122,"desc":123},"activity","Dark Mode & Theming","Zero flash of unstyled theme (FOUT), CSS token architecture, system preference sync, and customizable brand palettes.",{"tag":125,"title":126,"desc":127,"items":128},"3 Simple Steps","From Purchase To Production Deployment","Launch your company site without getting stuck in weeks of tedious setup ceremonies.",[129,133,137],{"number":130,"title":131,"desc":132},"01","Purchase & Download","Buy Nuxas on Gumroad, download the ZIP file, and extract it to your project folder. No Git clone required.",{"number":134,"title":135,"desc":136},"02","Install & Configure","Run npm install, fill in your environment keys in the structured .env file, and update site.yml with your brand details.",{"number":138,"title":139,"desc":140},"03","Deploy in 1-Click","Push the project to your GitHub repository, then connect it to Vercel, Cloudflare Pages, Netlify, or AWS Amplify. Zero configuration files required.",{"tag":142,"title":143,"desc":144,"popularLabel":145,"tiers":146},"Transparent Pricing","Invest Once. Ship Unlimited Projects.","Lifetime updates, complete source code access, and no recurring seat fees.","Most Popular",[147,163,175],{"title":148,"badge":149,"price":150,"priceLabel":151,"excerpt":152,"popular":153,"features":154,"ctaLabel":161,"ctaType":162,"ctaUrl":49},"Nuxas Code Only","Code Only Edition",59,"one-time","Launch your SaaS company site in days with a clean, production-grade Nuxt 4 foundation.",false,[155,156,157,158,159,160],"Full Nuxt 4 + Nitro source repository","100% strict TypeScript across client and server","Dark and light theme with zero flash of unstyled content","Purchase URL ready for Gumroad, Lemon Squeezy, Stripe, or PayPal","WCAG AA accessible components","Lifetime updates, no recurring fees","Buy Nuxas Code Only","gumroad",{"title":164,"badge":145,"price":165,"priceLabel":151,"excerpt":166,"popular":167,"features":168,"ctaLabel":174,"ctaType":162,"ctaUrl":53},"Nuxas + Decap CMS",84,"Ship faster and hand off to clients with a no-code dashboard built in.",true,[169,170,171,172,173,160],"Everything in Nuxas Code Only","Decap CMS pre-configured and integrated","Git-based content workflow without a database","Client-ready admin dashboard","Ideal for agency handoffs","Buy Nuxas + Decap CMS",{"title":176,"badge":177,"price":178,"priceLabel":179,"excerpt":180,"popular":153,"features":181,"ctaLabel":188,"ctaType":189,"ctaUrl":190},"Custom Web App","Enterprise Custom",650,"starting from","Premium custom engineering for businesses that need more than a template.",[182,183,184,185,186,187],"Custom full-stack development","Elite SEO architecture at the code level","Decap, Tina, or custom admin panel","Modern dashboard integration","Global scalability and full ownership","30-day post-launch support","Hire on Fiverr","fiverr","https:\u002F\u002Fwww.fiverr.com\u002Fcreativitas\u002Fcreate-your-custom-website-and-app",{"tag":192,"title":193,"desc":194,"items":195},"Developer Reviews","Loved by Builders Across the Globe","Here is what developers say about skipping initial setup friction with NuxtSass Starter.",[196,201,206],{"quote":197,"initials":198,"name":199,"role":200},"We deployed our company site in 4 days instead of 5 weeks. The content collections and theming are genuinely first-class.","MS","Marcus Sterling","Founder, ShipVibe.io",{"quote":202,"initials":203,"name":204,"role":205},"The dark mode implementation has zero flicker, and the SEO pipeline works out of the box. Truly production ready.","EK","Elena Kostas","Staff Frontend Engineer, Kora Cloud",{"quote":207,"initials":208,"name":209,"role":210},"Most boilerplates force you into their rigid abstraction. NuxtSass Starter feels like idiomatic Nuxt code written by an expert colleague.","DL","David Lindqvist","Indie Hacker & Tech Lead",{"title":212,"desc":213,"primaryCta":214,"secondaryCta":216},"Ready To Launch Your Nuxt SaaS Site?","Download NuxtSass Starter today, save hundreds of engineering hours, and start generating customer revenue faster.",{"label":215,"to":49},"Get Nuxas Starter",{"label":217,"to":53},"Get Nuxas PRO",{"ctaBand":219},{"title":220,"desc":221,"primaryCta":222,"secondaryCta":223},"Skip Setup. Ship Your Next SaaS Site.","Join hundreds of forward-thinking founders who build on top of a rock-solid Nuxt 4 foundation.",{"label":215,"to":49},{"label":217,"to":53},{"formspreeId":225},"YOUR_FORMSPREE_ID",{"description":227,"columns":228,"socials":258,"copyright":271},"The premium open-standard template kit for Nuxt.js & Vue developers who demand code quality, accessibility, and high conversion.",[229,237,247],{"title":27,"links":230},[231,233,235],{"label":148,"to":232},"\u002Fproducts\u002Fnuxas-code",{"label":164,"to":234},"\u002Fproducts\u002Fnuxas-cms",{"label":176,"to":236},"\u002Fproducts\u002Fcustom-web-app",{"title":238,"links":239},"Resources",[240,241,243,245],{"label":43,"to":31},{"label":242,"to":31},"Nuxt Performance Guide",{"label":244,"to":25},"Architecture Philosophy",{"label":246,"to":34},"Support & Community",{"title":248,"links":249},"Company",[250,252,254,256],{"label":251,"to":25},"About Nuxas",{"label":253,"to":34},"Contact Us",{"label":255,"to":28},"Our Services",{"label":257,"to":34},"Enterprise Inquiries",[259,263,267],{"label":260,"href":261,"icon":262},"GitHub","https:\u002F\u002Fgithub.com\u002Fmesinkasir","github",{"label":264,"href":265,"icon":266},"Twitter \u002F X","https:\u002F\u002Ftwitter.com","twitter",{"label":268,"href":269,"icon":270},"Discord","https:\u002F\u002Fdiscord.com","discord","© 2026 NuxtSass Starter. Built for the global Vue and Nuxt ecosystem. All rights reserved.",{"readMore":273,"viewDetails":274,"viewKit":275,"buyNow":276,"previous":277,"next":278,"showing":279,"of":280,"items":281,"prevArticle":282,"nextArticle":283},"Read Article","View Details","View Kit","Buy Now","Previous","Next","Showing","of","items","Previous Article","Next Article","data\u002Fsite","okpQCnLbVMXGzCHznijc1jAfBV7IGUYwAmuaxgoFWRI",{"id":4,"title":5,"badge":6,"description":6,"extension":7,"heading":6,"intro":6,"meta":287,"pageSize":6,"sortBy":6,"sortOrder":6,"stem":284,"tag":6,"__hash__":285},{"url":9,"ogImage":10,"twitterSite":11,"brand":288,"nav":289,"mobileNav":296,"mobileNavCta":303,"headerCta":306,"hero":307,"socialProof":313,"features":319,"steps":327,"pricing":332,"testimonials":340,"cta":345,"widgets":348,"contact":352,"footer":353,"ui":376},{"name":13,"badge":14,"tagline":15},[290,291,292,293,294,295],{"label":18,"to":19},{"label":21,"to":22},{"label":24,"to":25},{"label":27,"to":28},{"label":30,"to":31},{"label":33,"to":34},[297,298,299,300,301,302],{"label":18,"to":19},{"label":21,"to":22},{"label":39,"to":25},{"label":41,"to":28},{"label":43,"to":31},{"label":45,"to":34},[304,305],{"label":48,"to":49,"variant":50},{"label":52,"to":53,"variant":54},{"label":56,"to":49},{"badge":58,"title":59,"titleHighlight":60,"subtitle":61,"primaryCta":308,"secondaryCta":309,"metrics":310,"preview":311},{"label":56,"to":49},{"label":64,"to":22},[66,67,68,69],{"file":71,"tabs":312,"image":10,"alt":75,"width":76,"height":77},[73,74],{"tag":79,"title":80,"desc":81,"cards":314},[315,316,317,318],{"title":84,"text":85},{"title":87,"text":88},{"title":90,"text":91},{"title":93,"text":94},{"tag":96,"title":97,"desc":98,"items":320},[321,322,323,324,325,326],{"icon":101,"title":102,"desc":103},{"icon":105,"title":106,"desc":107},{"icon":109,"title":110,"desc":111},{"icon":113,"title":114,"desc":115},{"icon":117,"title":118,"desc":119},{"icon":121,"title":122,"desc":123},{"tag":125,"title":126,"desc":127,"items":328},[329,330,331],{"number":130,"title":131,"desc":132},{"number":134,"title":135,"desc":136},{"number":138,"title":139,"desc":140},{"tag":142,"title":143,"desc":144,"popularLabel":145,"tiers":333},[334,336,338],{"title":148,"badge":149,"price":150,"priceLabel":151,"excerpt":152,"popular":153,"features":335,"ctaLabel":161,"ctaType":162,"ctaUrl":49},[155,156,157,158,159,160],{"title":164,"badge":145,"price":165,"priceLabel":151,"excerpt":166,"popular":167,"features":337,"ctaLabel":174,"ctaType":162,"ctaUrl":53},[169,170,171,172,173,160],{"title":176,"badge":177,"price":178,"priceLabel":179,"excerpt":180,"popular":153,"features":339,"ctaLabel":188,"ctaType":189,"ctaUrl":190},[182,183,184,185,186,187],{"tag":192,"title":193,"desc":194,"items":341},[342,343,344],{"quote":197,"initials":198,"name":199,"role":200},{"quote":202,"initials":203,"name":204,"role":205},{"quote":207,"initials":208,"name":209,"role":210},{"title":212,"desc":213,"primaryCta":346,"secondaryCta":347},{"label":215,"to":49},{"label":217,"to":53},{"ctaBand":349},{"title":220,"desc":221,"primaryCta":350,"secondaryCta":351},{"label":215,"to":49},{"label":217,"to":53},{"formspreeId":225},{"description":227,"columns":354,"socials":372,"copyright":271},[355,360,366],{"title":27,"links":356},[357,358,359],{"label":148,"to":232},{"label":164,"to":234},{"label":176,"to":236},{"title":238,"links":361},[362,363,364,365],{"label":43,"to":31},{"label":242,"to":31},{"label":244,"to":25},{"label":246,"to":34},{"title":248,"links":367},[368,369,370,371],{"label":251,"to":25},{"label":253,"to":34},{"label":255,"to":28},{"label":257,"to":34},[373,374,375],{"label":260,"href":261,"icon":262},{"label":264,"href":265,"icon":266},{"label":268,"href":269,"icon":270},{"readMore":273,"viewDetails":274,"viewKit":275,"buyNow":276,"previous":277,"next":278,"showing":279,"of":280,"items":281,"prevArticle":282,"nextArticle":283},{"id":4,"title":5,"badge":6,"description":6,"extension":7,"heading":6,"intro":6,"meta":378,"pageSize":6,"sortBy":6,"sortOrder":6,"stem":284,"tag":6,"__hash__":285},{"url":9,"ogImage":10,"twitterSite":11,"brand":379,"nav":380,"mobileNav":387,"mobileNavCta":394,"headerCta":397,"hero":398,"socialProof":404,"features":410,"steps":418,"pricing":423,"testimonials":431,"cta":436,"widgets":439,"contact":443,"footer":444,"ui":467},{"name":13,"badge":14,"tagline":15},[381,382,383,384,385,386],{"label":18,"to":19},{"label":21,"to":22},{"label":24,"to":25},{"label":27,"to":28},{"label":30,"to":31},{"label":33,"to":34},[388,389,390,391,392,393],{"label":18,"to":19},{"label":21,"to":22},{"label":39,"to":25},{"label":41,"to":28},{"label":43,"to":31},{"label":45,"to":34},[395,396],{"label":48,"to":49,"variant":50},{"label":52,"to":53,"variant":54},{"label":56,"to":49},{"badge":58,"title":59,"titleHighlight":60,"subtitle":61,"primaryCta":399,"secondaryCta":400,"metrics":401,"preview":402},{"label":56,"to":49},{"label":64,"to":22},[66,67,68,69],{"file":71,"tabs":403,"image":10,"alt":75,"width":76,"height":77},[73,74],{"tag":79,"title":80,"desc":81,"cards":405},[406,407,408,409],{"title":84,"text":85},{"title":87,"text":88},{"title":90,"text":91},{"title":93,"text":94},{"tag":96,"title":97,"desc":98,"items":411},[412,413,414,415,416,417],{"icon":101,"title":102,"desc":103},{"icon":105,"title":106,"desc":107},{"icon":109,"title":110,"desc":111},{"icon":113,"title":114,"desc":115},{"icon":117,"title":118,"desc":119},{"icon":121,"title":122,"desc":123},{"tag":125,"title":126,"desc":127,"items":419},[420,421,422],{"number":130,"title":131,"desc":132},{"number":134,"title":135,"desc":136},{"number":138,"title":139,"desc":140},{"tag":142,"title":143,"desc":144,"popularLabel":145,"tiers":424},[425,427,429],{"title":148,"badge":149,"price":150,"priceLabel":151,"excerpt":152,"popular":153,"features":426,"ctaLabel":161,"ctaType":162,"ctaUrl":49},[155,156,157,158,159,160],{"title":164,"badge":145,"price":165,"priceLabel":151,"excerpt":166,"popular":167,"features":428,"ctaLabel":174,"ctaType":162,"ctaUrl":53},[169,170,171,172,173,160],{"title":176,"badge":177,"price":178,"priceLabel":179,"excerpt":180,"popular":153,"features":430,"ctaLabel":188,"ctaType":189,"ctaUrl":190},[182,183,184,185,186,187],{"tag":192,"title":193,"desc":194,"items":432},[433,434,435],{"quote":197,"initials":198,"name":199,"role":200},{"quote":202,"initials":203,"name":204,"role":205},{"quote":207,"initials":208,"name":209,"role":210},{"title":212,"desc":213,"primaryCta":437,"secondaryCta":438},{"label":215,"to":49},{"label":217,"to":53},{"ctaBand":440},{"title":220,"desc":221,"primaryCta":441,"secondaryCta":442},{"label":215,"to":49},{"label":217,"to":53},{"formspreeId":225},{"description":227,"columns":445,"socials":463,"copyright":271},[446,451,457],{"title":27,"links":447},[448,449,450],{"label":148,"to":232},{"label":164,"to":234},{"label":176,"to":236},{"title":238,"links":452},[453,454,455,456],{"label":43,"to":31},{"label":242,"to":31},{"label":244,"to":25},{"label":246,"to":34},{"title":248,"links":458},[459,460,461,462],{"label":251,"to":25},{"label":253,"to":34},{"label":255,"to":28},{"label":257,"to":34},[464,465,466],{"label":260,"href":261,"icon":262},{"label":264,"href":265,"icon":266},{"label":268,"href":269,"icon":270},{"readMore":273,"viewDetails":274,"viewKit":275,"buyNow":276,"previous":277,"next":278,"showing":279,"of":280,"items":281,"prevArticle":282,"nextArticle":283},{"id":469,"title":470,"badge":471,"body":472,"description":1762,"extension":1763,"meta":1764,"navigation":167,"order":676,"path":1765,"section":6,"seo":1766,"stem":1767,"__hash__":1768},"docs\u002Fdocs\u002F12-blog-crud.md","Managing Blog Posts","Content Editing",{"type":473,"value":474,"toc":1719},"minimark",[475,479,488,491,494,499,507,528,531,535,546,549,728,731,734,741,747,749,752,757,759,766,771,773,793,798,800,803,806,809,814,817,827,832,834,843,848,850,861,866,868,871,876,879,886,897,902,906,913,917,928,950,954,957,976,980,990,999,1003,1013,1052,1056,1062,1071,1075,1078,1103,1107,1113,1122,1126,1132,1141,1145,1149,1253,1262,1266,1300,1304,1310,1318,1321,1344,1348,1351,1371,1374,1388,1392,1395,1417,1420,1433,1437,1440,1698,1701,1705,1712,1715],[476,477,470],"h2",{"id":478},"managing-blog-posts",[480,481,482,483,487],"p",{},"In the previous chapter, we customized the 404 error page. Now we will manage ",[484,485,486],"strong",{},"blog posts"," — creating new posts, reading existing ones, updating them, and deleting the ones you no longer need.",[480,489,490],{},"Blog posts are the most flexible content type in Nuxas. They support rich text, code blocks, images, and internal links. Each post is a single Markdown file, and every field is defined in the frontmatter at the top of that file.",[480,492,493],{},"This chapter covers the entire lifecycle of a blog post. We will go slowly, with examples at every step.",[495,496,498],"h3",{"id":497},"where-blog-posts-live","Where Blog Posts Live",[480,500,501,502,506],{},"All blog posts live in ",[503,504,505],"code",{},"content\u002Fblog\u002F",". Each post is a separate Markdown file. The filename becomes the URL slug for the post. For example:",[508,509,510,520],"ul",{},[511,512,513,516,517],"li",{},[503,514,515],{},"content\u002Fblog\u002Fnuxt-seo-checklist-2026.md"," becomes ",[503,518,519],{},"\u002Fblog\u002Fnuxt-seo-checklist-2026",[511,521,522,516,525],{},[503,523,524],{},"content\u002Fblog\u002Ffrom-template-to-product-nuxas-journey.md",[503,526,527],{},"\u002Fblog\u002Ffrom-template-to-product-nuxas-journey",[480,529,530],{},"Filenames should be lowercase, with hyphens instead of spaces. Avoid special characters. The filename is what appears in the URL, so keep it short and descriptive.",[495,532,534],{"id":533},"understanding-the-frontmatter","Understanding the Frontmatter",[480,536,537,538,541,542,545],{},"Every blog post starts with a block of YAML between two ",[503,539,540],{},"---"," lines. This block is called the ",[484,543,544],{},"frontmatter",". It defines the metadata of the post: the title, the description, the date, the author, and so on.",[480,547,548],{},"Here is a complete example of a blog post frontmatter:",[550,551,556],"pre",{"className":552,"code":553,"language":554,"meta":555,"style":555},"language-yaml shiki shiki-themes github-light github-dark","---\ntitle: \"The Nuxt 4 SEO Checklist for 2026: Ship Pages Google Actually Ranks\"\ndescription: A practical, code-level SEO checklist for Nuxt 4 in 2026 covering SSR, meta management, structured data, sitemaps, Core Web Vitals, and the mistakes that quietly kill rankings.\ndate: 2026-10-18\ncategory: SEO\nauthor: Creativitas\nauthorInitials: CR\nreadTime: 9 min read\ntags:\n  - Nuxt 4\n  - SEO\n  - Core Web Vitals\n  - Structured Data\nbadge: SEO Engineering\ncover: https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1432888622747-4eb9a8efeb07?auto=format&fit=crop&w=1600&q=80\nctaProduct: nuxas-code\n---\n","yaml","",[503,557,558,567,582,593,605,616,627,638,649,658,667,674,682,690,701,712,723],{"__ignoreMap":555},[559,560,563],"span",{"class":561,"line":562},"line",1,[559,564,566],{"class":565},"sScJk","---\n",[559,568,570,574,578],{"class":561,"line":569},2,[559,571,573],{"class":572},"s9eBZ","title",[559,575,577],{"class":576},"sVt8B",": ",[559,579,581],{"class":580},"sZZnC","\"The Nuxt 4 SEO Checklist for 2026: Ship Pages Google Actually Ranks\"\n",[559,583,585,588,590],{"class":561,"line":584},3,[559,586,587],{"class":572},"description",[559,589,577],{"class":576},[559,591,592],{"class":580},"A practical, code-level SEO checklist for Nuxt 4 in 2026 covering SSR, meta management, structured data, sitemaps, Core Web Vitals, and the mistakes that quietly kill rankings.\n",[559,594,596,599,601],{"class":561,"line":595},4,[559,597,598],{"class":572},"date",[559,600,577],{"class":576},[559,602,604],{"class":603},"sj4cs","2026-10-18\n",[559,606,608,611,613],{"class":561,"line":607},5,[559,609,610],{"class":572},"category",[559,612,577],{"class":576},[559,614,615],{"class":580},"SEO\n",[559,617,619,622,624],{"class":561,"line":618},6,[559,620,621],{"class":572},"author",[559,623,577],{"class":576},[559,625,626],{"class":580},"Creativitas\n",[559,628,630,633,635],{"class":561,"line":629},7,[559,631,632],{"class":572},"authorInitials",[559,634,577],{"class":576},[559,636,637],{"class":580},"CR\n",[559,639,641,644,646],{"class":561,"line":640},8,[559,642,643],{"class":572},"readTime",[559,645,577],{"class":576},[559,647,648],{"class":580},"9 min read\n",[559,650,652,655],{"class":561,"line":651},9,[559,653,654],{"class":572},"tags",[559,656,657],{"class":576},":\n",[559,659,661,664],{"class":561,"line":660},10,[559,662,663],{"class":576},"  - ",[559,665,666],{"class":580},"Nuxt 4\n",[559,668,670,672],{"class":561,"line":669},11,[559,671,663],{"class":576},[559,673,615],{"class":580},[559,675,677,679],{"class":561,"line":676},12,[559,678,663],{"class":576},[559,680,681],{"class":580},"Core Web Vitals\n",[559,683,685,687],{"class":561,"line":684},13,[559,686,663],{"class":576},[559,688,689],{"class":580},"Structured Data\n",[559,691,693,696,698],{"class":561,"line":692},14,[559,694,695],{"class":572},"badge",[559,697,577],{"class":576},[559,699,700],{"class":580},"SEO Engineering\n",[559,702,704,707,709],{"class":561,"line":703},15,[559,705,706],{"class":572},"cover",[559,708,577],{"class":576},[559,710,711],{"class":580},"https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1432888622747-4eb9a8efeb07?auto=format&fit=crop&w=1600&q=80\n",[559,713,715,718,720],{"class":561,"line":714},16,[559,716,717],{"class":572},"ctaProduct",[559,719,577],{"class":576},[559,721,722],{"class":580},"nuxas-code\n",[559,724,726],{"class":561,"line":725},17,[559,727,566],{"class":565},[480,729,730],{},"Let us go through each field.",[732,733,573],"h4",{"id":573},[480,735,736,737,740],{},"The title of the post. It appears as the ",[503,738,739],{},"\u003Ch1>"," on the post page, in the browser tab, and in search engine results.",[480,742,743,746],{},[484,744,745],{},"Tip:"," Keep it under 60 characters for best SEO. If it is longer, search engines may truncate it.",[732,748,587],{"id":587},[480,750,751],{},"A one-sentence summary of the post. It appears in search engine results, social media previews, and blog listing cards.",[480,753,754,756],{},[484,755,745],{}," Keep it between 120 and 160 characters. This is the optimal length for search engine snippets.",[732,758,598],{"id":598},[480,760,761,762,765],{},"The publication date in ",[503,763,764],{},"YYYY-MM-DD"," format. This field is used to sort posts on the blog listing page. The newest posts appear first.",[480,767,768,770],{},[484,769,745],{}," You can schedule a post for the future by setting a future date. However, Nuxt will still publish it immediately when you deploy. To truly schedule a post, you need a different approach (covered in a later chapter, if at all).",[732,772,610],{"id":610},[480,774,775,776,779,780,779,783,779,786,779,789,792],{},"A short label for the post's category. It appears as a badge on the blog listing card. Examples: ",[503,777,778],{},"SEO",", ",[503,781,782],{},"Performance",[503,784,785],{},"Architecture",[503,787,788],{},"Case Study",[503,790,791],{},"Strategy",".",[480,794,795,797],{},[484,796,745],{}," Use consistent categories across your posts. This makes the blog list easier to browse.",[732,799,621],{"id":621},[480,801,802],{},"The full name of the author. It appears on the post page, next to the author avatar.",[732,804,632],{"id":805},"authorinitials",[480,807,808],{},"Two letters representing the author. These appear in the circular avatar on the post page.",[480,810,811,813],{},[484,812,745],{}," Use the author's first and last initials. For example, \"Alex Vance\" becomes \"AV\".",[732,815,643],{"id":816},"readtime",[480,818,819,820,823,824,792],{},"The estimated reading time, as a string. For example, ",[503,821,822],{},"9 min read"," or ",[503,825,826],{},"5 min read",[480,828,829,831],{},[484,830,745],{}," Estimate 200 words per minute. A 1,800-word post is roughly 9 minutes.",[732,833,654],{"id":654},[480,835,836,837,839,840,792],{},"A list of tags for the post. Tags appear at the bottom of the post, and they link to a tag archive page. For example, the tag ",[503,838,73],{}," links to ",[503,841,842],{},"\u002Fblog\u002Ftag\u002Fnuxt-4",[480,844,845,847],{},[484,846,745],{}," Use 3 to 5 tags per post. Too few and the post is hard to discover. Too many and the tags lose meaning.",[732,849,695],{"id":695},[480,851,852,853,779,856,779,859,792],{},"An optional short label that appears at the top of the post, above the title. Use it to highlight the post's category or special status. Examples: ",[503,854,855],{},"SEO Engineering",[503,857,858],{},"Framework Comparison",[503,860,788],{},[480,862,863,865],{},[484,864,745],{}," If you do not want a badge, omit this field or set it to an empty string.",[732,867,706],{"id":706},[480,869,870],{},"The URL of the cover image. It appears on the blog listing card and at the top of the post page.",[480,872,873,875],{},[484,874,745],{}," Use a 16:9 aspect ratio image at least 1600 pixels wide. Unsplash is a good source for free images.",[732,877,717],{"id":878},"ctaproduct",[480,880,881,882,885],{},"An optional field that connects the post to a product. If set, the post page shows a call-to-action band at the bottom, promoting that product. The value is the product's slug (the filename without the ",[503,883,884],{},".md"," extension).",[480,887,888,889,892,893,896],{},"For example, ",[503,890,891],{},"ctaProduct: nuxas-code"," links the post to the ",[503,894,895],{},"nuxas-code"," product. The call-to-action band shows the product's title, excerpt, and purchase button.",[480,898,899,901],{},[484,900,745],{}," Use this field to monetize your blog. Each post can promote a different product, or you can use the same product across all posts.",[495,903,905],{"id":904},"writing-the-body","Writing the Body",[480,907,908,909,912],{},"Below the frontmatter, the body of the post is written in ",[484,910,911],{},"Markdown",". Markdown is a lightweight markup language that is easy to read and write. Here are the most common Markdown elements:",[732,914,916],{"id":915},"headings","Headings",[480,918,919,920,923,924,927],{},"Use ",[503,921,922],{},"##"," for section headings and ",[503,925,926],{},"###"," for subheadings.",[550,929,933],{"className":930,"code":931,"language":932,"meta":555,"style":555},"language-markdown shiki shiki-themes github-light github-dark","## This is a section heading\n\n### This is a subheading\n","markdown",[503,934,935,940,945],{"__ignoreMap":555},[559,936,937],{"class":561,"line":562},[559,938,939],{},"## This is a section heading\n",[559,941,942],{"class":561,"line":569},[559,943,944],{"emptyLinePlaceholder":167},"\n",[559,946,947],{"class":561,"line":584},[559,948,949],{},"### This is a subheading\n",[732,951,953],{"id":952},"paragraphs","Paragraphs",[480,955,956],{},"Separate paragraphs with a blank line.",[550,958,960],{"className":930,"code":959,"language":932,"meta":555,"style":555},"This is the first paragraph.\n\nThis is the second paragraph.\n",[503,961,962,967,971],{"__ignoreMap":555},[559,963,964],{"class":561,"line":562},[559,965,966],{},"This is the first paragraph.\n",[559,968,969],{"class":561,"line":569},[559,970,944],{"emptyLinePlaceholder":167},[559,972,973],{"class":561,"line":584},[559,974,975],{},"This is the second paragraph.\n",[732,977,979],{"id":978},"bold-and-italic","Bold and Italic",[480,981,919,982,985,986,989],{},[503,983,984],{},"**text**"," for bold and ",[503,987,988],{},"*text*"," for italic.",[550,991,993],{"className":930,"code":992,"language":932,"meta":555,"style":555},"This is **bold** and this is *italic*.\n",[503,994,995],{"__ignoreMap":555},[559,996,997],{"class":561,"line":562},[559,998,992],{},[732,1000,1002],{"id":1001},"lists","Lists",[480,1004,919,1005,1008,1009,1012],{},[503,1006,1007],{},"-"," for unordered lists and ",[503,1010,1011],{},"1."," for ordered lists.",[550,1014,1016],{"className":930,"code":1015,"language":932,"meta":555,"style":555},"- First item\n- Second item\n- Third item\n\n1. First step\n2. Second step\n3. Third step\n",[503,1017,1018,1023,1028,1033,1037,1042,1047],{"__ignoreMap":555},[559,1019,1020],{"class":561,"line":562},[559,1021,1022],{},"- First item\n",[559,1024,1025],{"class":561,"line":569},[559,1026,1027],{},"- Second item\n",[559,1029,1030],{"class":561,"line":584},[559,1031,1032],{},"- Third item\n",[559,1034,1035],{"class":561,"line":595},[559,1036,944],{"emptyLinePlaceholder":167},[559,1038,1039],{"class":561,"line":607},[559,1040,1041],{},"1. First step\n",[559,1043,1044],{"class":561,"line":618},[559,1045,1046],{},"2. Second step\n",[559,1048,1049],{"class":561,"line":629},[559,1050,1051],{},"3. Third step\n",[732,1053,1055],{"id":1054},"links","Links",[480,1057,919,1058,1061],{},[503,1059,1060],{},"[text](url)"," for links.",[550,1063,1065],{"className":930,"code":1064,"language":932,"meta":555,"style":555},"[Click here](https:\u002F\u002Fexample.com) to visit the site.\n",[503,1066,1067],{"__ignoreMap":555},[559,1068,1069],{"class":561,"line":562},[559,1070,1064],{},[732,1072,1074],{"id":1073},"code-blocks","Code Blocks",[480,1076,1077],{},"Use triple backticks for code blocks. You can specify the language for syntax highlighting.",[550,1079,1081],{"className":930,"code":1080,"language":932,"meta":555,"style":555},"```ts\nconst greeting = 'Hello, world!'\nconsole.log(greeting)\n```\n",[503,1082,1083,1088,1093,1098],{"__ignoreMap":555},[559,1084,1085],{"class":561,"line":562},[559,1086,1087],{},"```ts\n",[559,1089,1090],{"class":561,"line":569},[559,1091,1092],{},"const greeting = 'Hello, world!'\n",[559,1094,1095],{"class":561,"line":584},[559,1096,1097],{},"console.log(greeting)\n",[559,1099,1100],{"class":561,"line":595},[559,1101,1102],{},"```\n",[732,1104,1106],{"id":1105},"images","Images",[480,1108,919,1109,1112],{},[503,1110,1111],{},"![alt text](url)"," for images.",[550,1114,1116],{"className":930,"code":1115,"language":932,"meta":555,"style":555},"![A beautiful sunset](https:\u002F\u002Fexample.com\u002Fsunset.jpg)\n",[503,1117,1118],{"__ignoreMap":555},[559,1119,1120],{"class":561,"line":562},[559,1121,1115],{},[732,1123,1125],{"id":1124},"blockquotes","Blockquotes",[480,1127,919,1128,1131],{},[503,1129,1130],{},">"," for blockquotes.",[550,1133,1135],{"className":930,"code":1134,"language":932,"meta":555,"style":555},"> This is a quote from someone important.\n",[503,1136,1137],{"__ignoreMap":555},[559,1138,1139],{"class":561,"line":562},[559,1140,1134],{},[495,1142,1144],{"id":1143},"creating-a-new-blog-post","Creating a New Blog Post",[732,1146,1148],{"id":1147},"if-you-purchased-the-code-decap-cms-edition","If You Purchased the Code + Decap CMS Edition",[1150,1151,1152,1158,1164,1171,1248],"ol",{},[511,1153,1154,1155,792],{},"Open ",[503,1156,1157],{},"http:\u002F\u002Flocalhost:3000\u002Fadmin",[511,1159,1160,1161,792],{},"In the left sidebar, click ",[484,1162,1163],{},"Blog Posts",[511,1165,1166,1167,1170],{},"Click ",[484,1168,1169],{},"New Blog Post"," in the top right corner.",[511,1172,1173,1174],{},"Fill in the fields:\n",[508,1175,1176,1182,1188,1194,1200,1206,1212,1218,1224,1230,1236,1242],{},[511,1177,1178,1181],{},[484,1179,1180],{},"Title"," — the post title.",[511,1183,1184,1187],{},[484,1185,1186],{},"Description"," — the post summary.",[511,1189,1190,1193],{},[484,1191,1192],{},"Date"," — the publication date.",[511,1195,1196,1199],{},[484,1197,1198],{},"Category"," — the post category.",[511,1201,1202,1205],{},[484,1203,1204],{},"Author"," — the author's name.",[511,1207,1208,1211],{},[484,1209,1210],{},"Author Initials"," — two letters for the avatar.",[511,1213,1214,1217],{},[484,1215,1216],{},"Read Time"," — the estimated reading time.",[511,1219,1220,1223],{},[484,1221,1222],{},"Tags"," — a list of tags.",[511,1225,1226,1229],{},[484,1227,1228],{},"Badge"," — an optional badge.",[511,1231,1232,1235],{},[484,1233,1234],{},"Cover Image"," — upload an image or paste a URL.",[511,1237,1238,1241],{},[484,1239,1240],{},"CTA Product"," — an optional product slug.",[511,1243,1244,1247],{},[484,1245,1246],{},"Body"," — the post content in Markdown.",[511,1249,1166,1250,1170],{},[484,1251,1252],{},"Save",[480,1254,1255,1256,1258,1259,792],{},"The CMS will create a new file in ",[503,1257,505],{}," with a slug derived from the title. For example, a post titled \"My First Post\" becomes ",[503,1260,1261],{},"my-first-post.md",[732,1263,1265],{"id":1264},"if-you-purchased-the-code-only-edition","If You Purchased the Code Only Edition",[1150,1267,1268,1274,1280,1285,1288,1291,1294],{},[511,1269,1270,1271,1273],{},"Open the ",[503,1272,505],{}," folder in VS Code.",[511,1275,1276,1277,792],{},"Right-click the folder and choose ",[484,1278,1279],{},"New File",[511,1281,1282,1283,792],{},"Name the file with a slug, e.g., ",[503,1284,1261],{},[511,1286,1287],{},"Paste the frontmatter template at the top of the file.",[511,1289,1290],{},"Fill in the fields.",[511,1292,1293],{},"Write the body in Markdown below the frontmatter.",[511,1295,1296,1297,792],{},"Save with ",[484,1298,1299],{},"Ctrl + S",[495,1301,1303],{"id":1302},"reading-a-blog-post","Reading a Blog Post",[480,1305,1306,1307,1309],{},"To read a blog post on your local site, navigate to ",[503,1308,31],{}," and click on a post. Or go directly to the post URL:",[550,1311,1316],{"className":1312,"code":1314,"language":1315},[1313],"language-text","http:\u002F\u002Flocalhost:3000\u002Fblog\u002Fmy-first-post\n","text",[503,1317,1314],{"__ignoreMap":555},[480,1319,1320],{},"The post page shows:",[508,1322,1323,1326,1329,1332,1335,1338],{},[511,1324,1325],{},"The cover image at the top.",[511,1327,1328],{},"The badge, title, and author strip.",[511,1330,1331],{},"The post body in Markdown.",[511,1333,1334],{},"The tags at the bottom.",[511,1336,1337],{},"Previous and next post navigation.",[511,1339,1340,1341,1343],{},"A call-to-action band (if the post has a ",[503,1342,717],{},").",[495,1345,1347],{"id":1346},"updating-a-blog-post","Updating a Blog Post",[732,1349,1148],{"id":1350},"if-you-purchased-the-code-decap-cms-edition-1",[1150,1352,1353,1357,1361,1364,1367],{},[511,1354,1154,1355,792],{},[503,1356,1157],{},[511,1358,1160,1359,792],{},[484,1360,1163],{},[511,1362,1363],{},"Click the post you want to edit.",[511,1365,1366],{},"Change any field or the body.",[511,1368,1166,1369,792],{},[484,1370,1252],{},[732,1372,1265],{"id":1373},"if-you-purchased-the-code-only-edition-1",[1150,1375,1376,1381,1384],{},[511,1377,1378,1379,792],{},"Open the post file in ",[503,1380,505],{},[511,1382,1383],{},"Edit any field or the body.",[511,1385,1296,1386,792],{},[484,1387,1299],{},[495,1389,1391],{"id":1390},"deleting-a-blog-post","Deleting a Blog Post",[732,1393,1148],{"id":1394},"if-you-purchased-the-code-decap-cms-edition-2",[1150,1396,1397,1401,1405,1408,1414],{},[511,1398,1154,1399,792],{},[503,1400,1157],{},[511,1402,1160,1403,792],{},[484,1404,1163],{},[511,1406,1407],{},"Click the post you want to delete.",[511,1409,1410,1411,792],{},"Click the three dots in the top right corner, then choose ",[484,1412,1413],{},"Delete",[511,1415,1416],{},"Confirm the deletion.",[732,1418,1265],{"id":1419},"if-you-purchased-the-code-only-edition-2",[1150,1421,1422,1426,1431],{},[511,1423,1270,1424,1273],{},[503,1425,505],{},[511,1427,1428,1429,792],{},"Right-click the post file and choose ",[484,1430,1413],{},[511,1432,1416],{},[495,1434,1436],{"id":1435},"a-complete-example","A Complete Example",[480,1438,1439],{},"Here is a complete blog post, ready to copy and adapt:",[550,1441,1443],{"className":930,"code":1442,"language":932,"meta":555,"style":555},"---\ntitle: \"How to Launch a SaaS in 7 Days with Nuxt 4\"\ndescription: A step-by-step guide to launching a production-ready SaaS product in one week using Nuxt 4 and Nuxas.\ndate: 2026-11-01\ncategory: Strategy\nauthor: Your Name\nauthorInitials: YN\nreadTime: 6 min read\ntags:\n  - Nuxt 4\n  - SaaS\n  - Launch\nbadge: Launch Strategy\ncover: https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1555066931-4365d14bab8c?auto=format&fit=crop&w=1600&q=80\nctaProduct: nuxas-code\n---\n\nLaunching a SaaS product used to take months. With Nuxt 4 and a production-grade template, it can take a week. Here is how.\n\n## Day 1 — Set Up Your Project\n\nStart by cloning Nuxas and running `npm install`. Configure your site URL, your brand name, and your content. Do not worry about perfection — you will refine later.\n\n## Day 2 — Configure Your Product\n\nDefine your product's pricing tiers, features, and call-to-action. Use the Global Site Config to set up your homepage hero, features, and testimonials.\n\n## Day 3 — Write Your First Blog Post\n\nBlog posts are the fastest way to attract organic traffic. Write one long, useful post about a problem your product solves.\n\n## Day 4 — Connect Your Payment Platform\n\nNuxas supports Stripe and Gumroad out of the box. Connect your account and test a checkout.\n\n## Day 5 — Deploy to Production\n\nDeploy to Netlify, Vercel, or Cloudflare Pages. Configure your custom domain. Test the site on a real URL.\n\n## Day 6 — Launch on Social Media\n\nShare your launch on Twitter, LinkedIn, and Indie Hackers. Link to your homepage and your first blog post.\n\n## Day 7 — Iterate\n\nLaunch is not the end. It is the beginning. Collect feedback, fix issues, and improve your product every day.\n\n**[Get Nuxas Code Only →](\u002Fproducts\u002Fnuxas-code)**\n",[503,1444,1445,1449,1454,1459,1464,1469,1474,1479,1484,1489,1494,1499,1504,1509,1514,1519,1523,1527,1533,1538,1544,1549,1555,1560,1566,1571,1577,1582,1588,1593,1599,1604,1610,1615,1621,1626,1632,1637,1643,1648,1654,1659,1665,1670,1676,1681,1687,1692],{"__ignoreMap":555},[559,1446,1447],{"class":561,"line":562},[559,1448,566],{},[559,1450,1451],{"class":561,"line":569},[559,1452,1453],{},"title: \"How to Launch a SaaS in 7 Days with Nuxt 4\"\n",[559,1455,1456],{"class":561,"line":584},[559,1457,1458],{},"description: A step-by-step guide to launching a production-ready SaaS product in one week using Nuxt 4 and Nuxas.\n",[559,1460,1461],{"class":561,"line":595},[559,1462,1463],{},"date: 2026-11-01\n",[559,1465,1466],{"class":561,"line":607},[559,1467,1468],{},"category: Strategy\n",[559,1470,1471],{"class":561,"line":618},[559,1472,1473],{},"author: Your Name\n",[559,1475,1476],{"class":561,"line":629},[559,1477,1478],{},"authorInitials: YN\n",[559,1480,1481],{"class":561,"line":640},[559,1482,1483],{},"readTime: 6 min read\n",[559,1485,1486],{"class":561,"line":651},[559,1487,1488],{},"tags:\n",[559,1490,1491],{"class":561,"line":660},[559,1492,1493],{},"  - Nuxt 4\n",[559,1495,1496],{"class":561,"line":669},[559,1497,1498],{},"  - SaaS\n",[559,1500,1501],{"class":561,"line":676},[559,1502,1503],{},"  - Launch\n",[559,1505,1506],{"class":561,"line":684},[559,1507,1508],{},"badge: Launch Strategy\n",[559,1510,1511],{"class":561,"line":692},[559,1512,1513],{},"cover: https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1555066931-4365d14bab8c?auto=format&fit=crop&w=1600&q=80\n",[559,1515,1516],{"class":561,"line":703},[559,1517,1518],{},"ctaProduct: nuxas-code\n",[559,1520,1521],{"class":561,"line":714},[559,1522,566],{},[559,1524,1525],{"class":561,"line":725},[559,1526,944],{"emptyLinePlaceholder":167},[559,1528,1530],{"class":561,"line":1529},18,[559,1531,1532],{},"Launching a SaaS product used to take months. With Nuxt 4 and a production-grade template, it can take a week. Here is how.\n",[559,1534,1536],{"class":561,"line":1535},19,[559,1537,944],{"emptyLinePlaceholder":167},[559,1539,1541],{"class":561,"line":1540},20,[559,1542,1543],{},"## Day 1 — Set Up Your Project\n",[559,1545,1547],{"class":561,"line":1546},21,[559,1548,944],{"emptyLinePlaceholder":167},[559,1550,1552],{"class":561,"line":1551},22,[559,1553,1554],{},"Start by cloning Nuxas and running `npm install`. Configure your site URL, your brand name, and your content. Do not worry about perfection — you will refine later.\n",[559,1556,1558],{"class":561,"line":1557},23,[559,1559,944],{"emptyLinePlaceholder":167},[559,1561,1563],{"class":561,"line":1562},24,[559,1564,1565],{},"## Day 2 — Configure Your Product\n",[559,1567,1569],{"class":561,"line":1568},25,[559,1570,944],{"emptyLinePlaceholder":167},[559,1572,1574],{"class":561,"line":1573},26,[559,1575,1576],{},"Define your product's pricing tiers, features, and call-to-action. Use the Global Site Config to set up your homepage hero, features, and testimonials.\n",[559,1578,1580],{"class":561,"line":1579},27,[559,1581,944],{"emptyLinePlaceholder":167},[559,1583,1585],{"class":561,"line":1584},28,[559,1586,1587],{},"## Day 3 — Write Your First Blog Post\n",[559,1589,1591],{"class":561,"line":1590},29,[559,1592,944],{"emptyLinePlaceholder":167},[559,1594,1596],{"class":561,"line":1595},30,[559,1597,1598],{},"Blog posts are the fastest way to attract organic traffic. Write one long, useful post about a problem your product solves.\n",[559,1600,1602],{"class":561,"line":1601},31,[559,1603,944],{"emptyLinePlaceholder":167},[559,1605,1607],{"class":561,"line":1606},32,[559,1608,1609],{},"## Day 4 — Connect Your Payment Platform\n",[559,1611,1613],{"class":561,"line":1612},33,[559,1614,944],{"emptyLinePlaceholder":167},[559,1616,1618],{"class":561,"line":1617},34,[559,1619,1620],{},"Nuxas supports Stripe and Gumroad out of the box. Connect your account and test a checkout.\n",[559,1622,1624],{"class":561,"line":1623},35,[559,1625,944],{"emptyLinePlaceholder":167},[559,1627,1629],{"class":561,"line":1628},36,[559,1630,1631],{},"## Day 5 — Deploy to Production\n",[559,1633,1635],{"class":561,"line":1634},37,[559,1636,944],{"emptyLinePlaceholder":167},[559,1638,1640],{"class":561,"line":1639},38,[559,1641,1642],{},"Deploy to Netlify, Vercel, or Cloudflare Pages. Configure your custom domain. Test the site on a real URL.\n",[559,1644,1646],{"class":561,"line":1645},39,[559,1647,944],{"emptyLinePlaceholder":167},[559,1649,1651],{"class":561,"line":1650},40,[559,1652,1653],{},"## Day 6 — Launch on Social Media\n",[559,1655,1657],{"class":561,"line":1656},41,[559,1658,944],{"emptyLinePlaceholder":167},[559,1660,1662],{"class":561,"line":1661},42,[559,1663,1664],{},"Share your launch on Twitter, LinkedIn, and Indie Hackers. Link to your homepage and your first blog post.\n",[559,1666,1668],{"class":561,"line":1667},43,[559,1669,944],{"emptyLinePlaceholder":167},[559,1671,1673],{"class":561,"line":1672},44,[559,1674,1675],{},"## Day 7 — Iterate\n",[559,1677,1679],{"class":561,"line":1678},45,[559,1680,944],{"emptyLinePlaceholder":167},[559,1682,1684],{"class":561,"line":1683},46,[559,1685,1686],{},"Launch is not the end. It is the beginning. Collect feedback, fix issues, and improve your product every day.\n",[559,1688,1690],{"class":561,"line":1689},47,[559,1691,944],{"emptyLinePlaceholder":167},[559,1693,1695],{"class":561,"line":1694},48,[559,1696,1697],{},"**[Get Nuxas Code Only →](\u002Fproducts\u002Fnuxas-code)**\n",[480,1699,1700],{},"This example has every required field, a complete body with headings, paragraphs, and internal links, and a call-to-action at the end. Copy it, change the values, and you have a new blog post.",[495,1702,1704],{"id":1703},"what-to-expect-in-the-next-chapter","What to Expect in the Next Chapter",[480,1706,1707,1708,1711],{},"In the next chapter, we will manage ",[484,1709,1710],{},"products"," — the catalog of items you sell. We will cover every product field, including the gallery, specs, and purchase URL. This is a longer chapter because products have more fields than blog posts.",[480,1713,1714],{},"See you in the next chapter.",[1716,1717,1718],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#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 .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);}",{"title":555,"searchDepth":584,"depth":584,"links":1720},[1721],{"id":478,"depth":569,"text":470,"children":1722},[1723,1724,1737,1747,1751,1752,1756,1760,1761],{"id":497,"depth":584,"text":498},{"id":533,"depth":584,"text":534,"children":1725},[1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736],{"id":573,"depth":595,"text":573},{"id":587,"depth":595,"text":587},{"id":598,"depth":595,"text":598},{"id":610,"depth":595,"text":610},{"id":621,"depth":595,"text":621},{"id":805,"depth":595,"text":632},{"id":816,"depth":595,"text":643},{"id":654,"depth":595,"text":654},{"id":695,"depth":595,"text":695},{"id":706,"depth":595,"text":706},{"id":878,"depth":595,"text":717},{"id":904,"depth":584,"text":905,"children":1738},[1739,1740,1741,1742,1743,1744,1745,1746],{"id":915,"depth":595,"text":916},{"id":952,"depth":595,"text":953},{"id":978,"depth":595,"text":979},{"id":1001,"depth":595,"text":1002},{"id":1054,"depth":595,"text":1055},{"id":1073,"depth":595,"text":1074},{"id":1105,"depth":595,"text":1106},{"id":1124,"depth":595,"text":1125},{"id":1143,"depth":584,"text":1144,"children":1748},[1749,1750],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":1302,"depth":584,"text":1303},{"id":1346,"depth":584,"text":1347,"children":1753},[1754,1755],{"id":1350,"depth":595,"text":1148},{"id":1373,"depth":595,"text":1265},{"id":1390,"depth":584,"text":1391,"children":1757},[1758,1759],{"id":1394,"depth":595,"text":1148},{"id":1419,"depth":595,"text":1265},{"id":1435,"depth":584,"text":1436},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to creating, reading, updating, and deleting blog posts in Nuxas. Learn every frontmatter field, how to write the body in Markdown, and how to manage posts through Decap CMS or by editing files directly.","md",{},"\u002Fdocs\u002F12-blog-crud",{"title":470,"description":1762},"docs\u002F12-blog-crud","lc3Tb2avdwi26n_KNVgKGQ0O0xA4-LBaMuVDamp_hlo",{"id":4,"title":5,"badge":6,"description":6,"extension":7,"heading":6,"intro":6,"meta":1770,"pageSize":6,"sortBy":6,"sortOrder":6,"stem":284,"tag":6,"__hash__":285},{"url":9,"ogImage":10,"twitterSite":11,"brand":1771,"nav":1772,"mobileNav":1779,"mobileNavCta":1786,"headerCta":1789,"hero":1790,"socialProof":1796,"features":1802,"steps":1810,"pricing":1815,"testimonials":1823,"cta":1828,"widgets":1831,"contact":1835,"footer":1836,"ui":1859},{"name":13,"badge":14,"tagline":15},[1773,1774,1775,1776,1777,1778],{"label":18,"to":19},{"label":21,"to":22},{"label":24,"to":25},{"label":27,"to":28},{"label":30,"to":31},{"label":33,"to":34},[1780,1781,1782,1783,1784,1785],{"label":18,"to":19},{"label":21,"to":22},{"label":39,"to":25},{"label":41,"to":28},{"label":43,"to":31},{"label":45,"to":34},[1787,1788],{"label":48,"to":49,"variant":50},{"label":52,"to":53,"variant":54},{"label":56,"to":49},{"badge":58,"title":59,"titleHighlight":60,"subtitle":61,"primaryCta":1791,"secondaryCta":1792,"metrics":1793,"preview":1794},{"label":56,"to":49},{"label":64,"to":22},[66,67,68,69],{"file":71,"tabs":1795,"image":10,"alt":75,"width":76,"height":77},[73,74],{"tag":79,"title":80,"desc":81,"cards":1797},[1798,1799,1800,1801],{"title":84,"text":85},{"title":87,"text":88},{"title":90,"text":91},{"title":93,"text":94},{"tag":96,"title":97,"desc":98,"items":1803},[1804,1805,1806,1807,1808,1809],{"icon":101,"title":102,"desc":103},{"icon":105,"title":106,"desc":107},{"icon":109,"title":110,"desc":111},{"icon":113,"title":114,"desc":115},{"icon":117,"title":118,"desc":119},{"icon":121,"title":122,"desc":123},{"tag":125,"title":126,"desc":127,"items":1811},[1812,1813,1814],{"number":130,"title":131,"desc":132},{"number":134,"title":135,"desc":136},{"number":138,"title":139,"desc":140},{"tag":142,"title":143,"desc":144,"popularLabel":145,"tiers":1816},[1817,1819,1821],{"title":148,"badge":149,"price":150,"priceLabel":151,"excerpt":152,"popular":153,"features":1818,"ctaLabel":161,"ctaType":162,"ctaUrl":49},[155,156,157,158,159,160],{"title":164,"badge":145,"price":165,"priceLabel":151,"excerpt":166,"popular":167,"features":1820,"ctaLabel":174,"ctaType":162,"ctaUrl":53},[169,170,171,172,173,160],{"title":176,"badge":177,"price":178,"priceLabel":179,"excerpt":180,"popular":153,"features":1822,"ctaLabel":188,"ctaType":189,"ctaUrl":190},[182,183,184,185,186,187],{"tag":192,"title":193,"desc":194,"items":1824},[1825,1826,1827],{"quote":197,"initials":198,"name":199,"role":200},{"quote":202,"initials":203,"name":204,"role":205},{"quote":207,"initials":208,"name":209,"role":210},{"title":212,"desc":213,"primaryCta":1829,"secondaryCta":1830},{"label":215,"to":49},{"label":217,"to":53},{"ctaBand":1832},{"title":220,"desc":221,"primaryCta":1833,"secondaryCta":1834},{"label":215,"to":49},{"label":217,"to":53},{"formspreeId":225},{"description":227,"columns":1837,"socials":1855,"copyright":271},[1838,1843,1849],{"title":27,"links":1839},[1840,1841,1842],{"label":148,"to":232},{"label":164,"to":234},{"label":176,"to":236},{"title":238,"links":1844},[1845,1846,1847,1848],{"label":43,"to":31},{"label":242,"to":31},{"label":244,"to":25},{"label":246,"to":34},{"title":248,"links":1850},[1851,1852,1853,1854],{"label":251,"to":25},{"label":253,"to":34},{"label":255,"to":28},{"label":257,"to":34},[1856,1857,1858],{"label":260,"href":261,"icon":262},{"label":264,"href":265,"icon":266},{"label":268,"href":269,"icon":270},{"readMore":273,"viewDetails":274,"viewKit":275,"buyNow":276,"previous":277,"next":278,"showing":279,"of":280,"items":281,"prevArticle":282,"nextArticle":283},[1861,2198,2419,2957,3328,3956,4464,4870,6654,7242,7990,8664,9589,10906,12174,12788,13300,14141,16043,16728],{"id":1862,"title":1863,"badge":1864,"body":1865,"description":2192,"extension":1763,"meta":2193,"navigation":167,"order":562,"path":2194,"section":6,"seo":2195,"stem":2196,"__hash__":2197},"docs\u002Fdocs\u002F01-welcome.md","Welcome to Nuxas","Getting Started",{"type":473,"value":1866,"toc":2182},[1867,1871,1874,1881,1884,1888,1895,1898,1922,1925,1929,1932,1935,1977,1981,1984,2004,2008,2011,2014,2136,2140,2151,2158,2169,2173,2176,2179],[476,1868,1870],{"id":1869},"welcome-to-nuxas-the-nuxt-4-saas-template","Welcome to Nuxas — The Nuxt 4 SaaS Template",[480,1872,1873],{},"Thank you for visiting Nuxas. We are glad you are here. Whether you are a seasoned developer who has been building with Vue and Nuxt for years, or someone who is opening a terminal for the very first time, this documentation is written for you.",[480,1875,1876,1877,1880],{},"Nuxas is a ",[484,1878,1879],{},"production-grade SaaS template built on Nuxt 4",". It is not just a collection of pretty pages. It is a complete, carefully engineered foundation that includes everything a modern SaaS product needs: authentication, billing, a dashboard, dark mode, accessibility, SEO, and a content system that you can edit without touching code.",[480,1882,1883],{},"But before we go any further, let us explain what that actually means in plain language.",[495,1885,1887],{"id":1886},"what-is-nuxt-and-why-does-it-matter","What Is Nuxt, and Why Does It Matter?",[480,1889,1890,1891,1894],{},"Nuxt is a framework built on top of ",[484,1892,1893],{},"Vue.js",". Vue is a JavaScript framework for building user interfaces. If you have ever interacted with a modern website where clicking a button updates the page without a full reload, chances are it was built with Vue, React, or a similar framework.",[480,1896,1897],{},"Nuxt takes Vue and makes it more powerful by adding:",[508,1899,1900,1910,1916],{},[511,1901,1902,1905,1906,1909],{},[484,1903,1904],{},"File-based routing"," — every file you create in the ",[503,1907,1908],{},"pages\u002F"," folder automatically becomes a page on your website.",[511,1911,1912,1915],{},[484,1913,1914],{},"Server-side rendering (SSR)"," — pages are rendered on the server first, so they load faster and rank better on Google.",[511,1917,1918,1921],{},[484,1919,1920],{},"The Nitro engine"," — a server engine that compiles your project into a single portable server that runs anywhere: Vercel, Cloudflare Workers, Netlify, or even your own VPS.",[480,1923,1924],{},"In short: Nuxt gives you the speed of a static website with the flexibility of a full-stack application.",[495,1926,1928],{"id":1927},"what-makes-nuxas-different","What Makes Nuxas Different?",[480,1930,1931],{},"There are hundreds of Nuxt templates on the market. Most of them share the same problems: they are bloated with unnecessary dependencies, they force you into someone else's abstraction, and they treat SEO and accessibility as afterthoughts.",[480,1933,1934],{},"Nuxas was built as a direct answer to those problems. Here is what you get:",[508,1936,1937,1943,1953,1959,1965,1971],{},[511,1938,1939,1942],{},[484,1940,1941],{},"A clean, idiomatic codebase."," Every composable, every component, every server route is written the way the Nuxt team intended. If you know Nuxt, you can read Nuxas in an afternoon.",[511,1944,1945,1948,1949,1952],{},[484,1946,1947],{},"Strict TypeScript."," From the database schema to the Vue templates, every piece of data is typed. No ",[503,1950,1951],{},"any"," creeping in. No surprises at runtime.",[511,1954,1955,1958],{},[484,1956,1957],{},"Full ownership."," You buy once, you own the code forever. No monthly fees, no lock-in, no rented platform.",[511,1960,1961,1964],{},[484,1962,1963],{},"SEO as a first-class concern."," Automated sitemaps, per-page meta tags, structured data, OpenGraph images, canonical URLs — all built in from day one.",[511,1966,1967,1970],{},[484,1968,1969],{},"Accessibility from the ground up."," Every component is keyboard-navigable, screen-reader friendly, and tested against WCAG AA contrast standards.",[511,1972,1973,1976],{},[484,1974,1975],{},"A content system you can edit without code."," With the Decap CMS edition, you can update your blog, products, and site content from a browser-based dashboard. No Git commands, no Markdown syntax to memorize.",[495,1978,1980],{"id":1979},"who-is-nuxas-for","Who Is Nuxas For?",[480,1982,1983],{},"Nuxas is designed for three types of people:",[1150,1985,1986,1992,1998],{},[511,1987,1988,1991],{},[484,1989,1990],{},"Solo founders and indie hackers"," who want to launch a SaaS product in days, not months. You have an idea and you want to ship it. Nuxas gives you the infrastructure so you can focus on the product itself.",[511,1993,1994,1997],{},[484,1995,1996],{},"Freelancers and agencies"," who build websites for clients. Nuxas gives you a clean foundation that you can hand off with confidence, knowing that the code is maintainable and the client can update their own content.",[511,1999,2000,2003],{},[484,2001,2002],{},"Developers learning Nuxt"," who want to see a real-world, production-grade project. Reading Nuxas is one of the fastest ways to understand how a modern Nuxt application is structured.",[495,2005,2007],{"id":2006},"what-is-in-this-documentation","What Is in This Documentation?",[480,2009,2010],{},"This documentation is organized as a linear journey. If you are new to Nuxas, we recommend reading it from start to finish. Each chapter builds on the previous one.",[480,2012,2013],{},"Here is what we will cover:",[1150,2015,2016,2022,2028,2034,2040,2046,2052,2058,2064,2070,2076,2082,2088,2094,2100,2106,2112,2118,2124,2130],{},[511,2017,2018,2021],{},[484,2019,2020],{},"Welcome"," — you are reading it now.",[511,2023,2024,2027],{},[484,2025,2026],{},"How to Purchase"," — the two editions available and where to buy them.",[511,2029,2030,2033],{},[484,2031,2032],{},"After Purchase"," — what to do first, including installing the tools you need.",[511,2035,2036,2039],{},[484,2037,2038],{},"Local Installation"," — how to run the project on your own computer.",[511,2041,2042,2045],{},[484,2043,2044],{},"Initial Configuration"," — setting your project URL and environment variables.",[511,2047,2048,2051],{},[484,2049,2050],{},"Project Structure"," — a brief tour of the folders and files.",[511,2053,2054,2057],{},[484,2055,2056],{},"Running with Decap CMS"," — two terminals, one for the site, one for the CMS.",[511,2059,2060,2063],{},[484,2061,2062],{},"Global Site Config"," — editing your navbar, footer, and homepage.",[511,2065,2066,2069],{},[484,2067,2068],{},"Page Configs"," — configuring the blog list and product list.",[511,2071,2072,2075],{},[484,2073,2074],{},"Contact Page"," — setting up Formspree and connecting the form.",[511,2077,2078,2081],{},[484,2079,2080],{},"404 Page"," — customizing the error page.",[511,2083,2084,2087],{},[484,2085,2086],{},"Blog CRUD"," — creating, reading, updating, and deleting blog posts.",[511,2089,2090,2093],{},[484,2091,2092],{},"Product CRUD"," — managing your product catalog.",[511,2095,2096,2099],{},[484,2097,2098],{},"Static Page CRUD"," — adding new pages like About, Privacy, or Terms.",[511,2101,2102,2105],{},[484,2103,2104],{},"Pre-Push Checklist"," — what to verify before going live.",[511,2107,2108,2111],{},[484,2109,2110],{},"GitHub Setup"," — creating a repository and pushing your code.",[511,2113,2114,2117],{},[484,2115,2116],{},"Netlify Deployment"," — the recommended host for Decap CMS users.",[511,2119,2120,2123],{},[484,2121,2122],{},"Other Hosts"," — Cloudflare, Vercel, AWS, cPanel, and VPS.",[511,2125,2126,2129],{},[484,2127,2128],{},"Custom Domain"," — connecting your own domain name.",[511,2131,2132,2135],{},[484,2133,2134],{},"Support"," — how to reach us if you need help.",[495,2137,2139],{"id":2138},"a-note-on-decap-cms","A Note on Decap CMS",[480,2141,2142,2143,2146,2147,2150],{},"Nuxas comes in two editions: ",[484,2144,2145],{},"Code Only"," and ",[484,2148,2149],{},"Code + Decap CMS",". If you chose the Code Only edition, you will edit content directly in Markdown and YAML files using a code editor. If you chose the Decap CMS edition, you will have access to a browser-based dashboard where you can edit content without touching code.",[480,2152,2153,2154,2157],{},"This documentation covers both editions. Wherever Decap CMS is involved, we will clearly mark it with a ",[484,2155,2156],{},"Decap CMS"," badge, so you know which steps apply to your edition.",[480,2159,2160,2161,2164,2165,2168],{},"We will not teach you how to use Decap CMS in depth — the tool has its own excellent documentation. We will only explain ",[484,2162,2163],{},"when to use the local version"," (while developing on your computer) and ",[484,2166,2167],{},"when to use the cloud version"," (after deploying to a host). That is all you need to know to get started.",[495,2170,2172],{"id":2171},"a-final-word","A Final Word",[480,2174,2175],{},"Building a SaaS is hard. Not because the code is difficult, but because there are a thousand small decisions to make before you can ship. Nuxas exists to remove as many of those decisions as possible. We have already made the architectural choices, written the boilerplate, and tested the edge cases. What is left is your product.",[480,2177,2178],{},"We hope this documentation helps you get from purchase to production with confidence. If you get stuck, the last chapter explains how to reach us.",[480,2180,2181],{},"Let us begin.",{"title":555,"searchDepth":584,"depth":584,"links":2183},[2184],{"id":1869,"depth":569,"text":1870,"children":2185},[2186,2187,2188,2189,2190,2191],{"id":1886,"depth":584,"text":1887},{"id":1927,"depth":584,"text":1928},{"id":1979,"depth":584,"text":1980},{"id":2006,"depth":584,"text":2007},{"id":2138,"depth":584,"text":2139},{"id":2171,"depth":584,"text":2172},"A warm, beginner-friendly introduction to Nuxas, the production-grade Nuxt 4 SaaS template. Learn what it is, who it is for, and what you will find in this documentation.",{},"\u002Fdocs\u002F01-welcome",{"title":1863,"description":2192},"docs\u002F01-welcome","FMfPpnUmfLKqHYicLjM4-VT2NiTj69wfTq2-oWv_C_g",{"id":2199,"title":2200,"badge":2201,"body":2202,"description":2413,"extension":1763,"meta":2414,"navigation":167,"order":569,"path":2415,"section":6,"seo":2416,"stem":2417,"__hash__":2418},"docs\u002Fdocs\u002F02-purchase.md","How to Purchase Nuxas","Purchase",{"type":473,"value":2203,"toc":2403},[2204,2207,2210,2217,2221,2224,2227,2232,2254,2260,2271,2275,2281,2284,2288,2304,2309,2316,2320,2323,2343,2346,2350,2353,2356,2377,2380,2384,2387,2390,2393,2397,2400],[476,2205,2200],{"id":2206},"how-to-purchase-nuxas",[480,2208,2209],{},"Nuxas is available in two editions. Both editions give you the same high-quality Nuxt 4 foundation, but they differ in how you manage your content after the site is built. This chapter explains the difference in plain language, so you can choose the edition that fits your situation.",[480,2211,2212,2213,2216],{},"Before we look at the editions, let us clarify one thing: ",[484,2214,2215],{},"both editions are one-time purchases",". You pay once, you own the code forever. There are no subscriptions, no monthly fees, and no seat limits. You can use the code on your own projects, on client projects, or on commercial SaaS products.",[495,2218,2220],{"id":2219},"edition-1-nuxas-code-only","Edition 1 — Nuxas Code Only",[480,2222,2223],{},"The Code Only edition is the foundation of Nuxas. It includes everything you need to build and launch a SaaS product: the full Nuxt 4 source code, strict TypeScript, the Stripe and Lemon Squeezy integration, the SEO pipeline, the dark and light theming system, the accessible components, and the blog and product collections.",[480,2225,2226],{},"With the Code Only edition, you edit content directly in Markdown and YAML files using a code editor like Visual Studio Code. If you are comfortable with files and folders, this is the most flexible and the most affordable option.",[480,2228,2229],{},[484,2230,2231],{},"What you get:",[508,2233,2234,2237,2239,2241,2244,2246,2249,2252],{},[511,2235,2236],{},"Full Nuxt 4 and Nitro source code",[511,2238,156],{},[511,2240,157],{},[511,2242,2243],{},"Stripe and Lemon Squeezy integration ready",[511,2245,159],{},[511,2247,2248],{},"Blog and product collections with Markdown",[511,2250,2251],{},"SEO pipeline: sitemap, meta tags, Open Graph, structured data",[511,2253,160],{},[480,2255,2256,2259],{},[484,2257,2258],{},"Price:"," $59 USD, one-time payment.",[480,2261,2262,2265,2266],{},[484,2263,2264],{},"Where to buy:"," ",[2267,2268,49],"a",{"href":49,"rel":2269},[2270],"nofollow",[495,2272,2274],{"id":2273},"edition-2-nuxas-decap-cms","Edition 2 — Nuxas + Decap CMS",[480,2276,2277,2278,2280],{},"The Code + Decap CMS edition includes everything in the Code Only edition, plus a fully integrated ",[484,2279,2156],{}," dashboard. Decap CMS is a browser-based content management system that lets you edit your blog, products, and site content without touching a single line of code.",[480,2282,2283],{},"If you are building a site for a client, or if you plan to hand off the site to someone who is not a developer, this edition is the right choice. Your client logs in to a dashboard, edits their content, and publishes. They never need to open a code editor.",[480,2285,2286],{},[484,2287,2231],{},[508,2289,2290,2293,2295,2297,2300,2302],{},[511,2291,2292],{},"Everything in the Code Only edition",[511,2294,170],{},[511,2296,171],{},[511,2298,2299],{},"A client-ready admin dashboard",[511,2301,173],{},[511,2303,160],{},[480,2305,2306,2308],{},[484,2307,2258],{}," $84 USD, one-time payment.",[480,2310,2311,2265,2313],{},[484,2312,2264],{},[2267,2314,53],{"href":53,"rel":2315},[2270],[495,2317,2319],{"id":2318},"how-to-decide-which-edition-is-right-for-you","How to Decide Which Edition Is Right for You",[480,2321,2322],{},"Ask yourself these three questions:",[1150,2324,2325,2331,2337],{},[511,2326,2327,2330],{},[484,2328,2329],{},"Will I be the only person editing this site?"," If yes, and if you are comfortable editing files, the Code Only edition is enough.",[511,2332,2333,2336],{},[484,2334,2335],{},"Will a client or a non-technical collaborator need to edit the site?"," If yes, choose the Code + Decap CMS edition. It will save you hours of training and back-and-forth.",[511,2338,2339,2342],{},[484,2340,2341],{},"Do I want to avoid the terminal entirely after launch?"," If yes, choose the Code + Decap CMS edition. You can update content from any browser, on any device.",[480,2344,2345],{},"If you are still unsure, the Code + Decap CMS edition is the safer choice. It costs more upfront, but it gives you a dashboard that makes content management trivial. Many buyers start with Code Only, then upgrade to Code + Decap CMS later when they realize they want the dashboard. Buying the CMS edition upfront saves you the upgrade.",[495,2347,2349],{"id":2348},"what-happens-after-you-pay","What Happens After You Pay",[480,2351,2352],{},"After you complete the purchase on Gumroad, you will receive an email with a download link. The download is a ZIP file that contains the full source code of Nuxas.",[480,2354,2355],{},"Inside the ZIP, you will find:",[508,2357,2358,2361,2368,2371,2374],{},[511,2359,2360],{},"The complete Nuxt 4 project, ready to run",[511,2362,2363,2364,2367],{},"A ",[503,2365,2366],{},"README.md"," file with a quick-start guide",[511,2369,2370],{},"The documentation you are reading now (as part of the project)",[511,2372,2373],{},"Environment variable examples",[511,2375,2376],{},"License information",[480,2378,2379],{},"The next chapter explains exactly what to do with that ZIP file, step by step.",[495,2381,2383],{"id":2382},"a-word-on-licensing","A Word on Licensing",[480,2385,2386],{},"Both editions come with a commercial license. You can use Nuxas to build SaaS products, client websites, or internal tools. You can modify the code as much as you want. You can deploy it to any hosting provider.",[480,2388,2389],{},"The only restriction is that you cannot resell Nuxas itself as a template, theme, or boilerplate. You can sell the products you build with Nuxas, but you cannot sell Nuxas.",[480,2391,2392],{},"If you have questions about licensing for a specific use case, the last chapter of this documentation explains how to reach us.",[495,2394,2396],{"id":2395},"where-to-go-next","Where to Go Next",[480,2398,2399],{},"If you have already purchased Nuxas, the next chapter will walk you through what to do first. If you have not purchased yet, take a moment to decide which edition fits your needs, then return to this documentation when you are ready.",[480,2401,2402],{},"Either way, welcome to Nuxas. We are glad you are here.",{"title":555,"searchDepth":584,"depth":584,"links":2404},[2405],{"id":2206,"depth":569,"text":2200,"children":2406},[2407,2408,2409,2410,2411,2412],{"id":2219,"depth":584,"text":2220},{"id":2273,"depth":584,"text":2274},{"id":2318,"depth":584,"text":2319},{"id":2348,"depth":584,"text":2349},{"id":2382,"depth":584,"text":2383},{"id":2395,"depth":584,"text":2396},"A complete, beginner-friendly guide to the two Nuxas editions — Code Only and Code + Decap CMS — including what each edition includes, how much it costs, and where to buy it.",{},"\u002Fdocs\u002F02-purchase",{"title":2200,"description":2413},"docs\u002F02-purchase","Fqy9LyC1xTS0rGyXy_1MCwtVBCSdcQ3aVpSIz-KR3IQ",{"id":2420,"title":2421,"badge":1864,"body":2422,"description":2951,"extension":1763,"meta":2952,"navigation":167,"order":584,"path":2953,"section":6,"seo":2954,"stem":2955,"__hash__":2956},"docs\u002Fdocs\u002F03-after-purchase.md","What to Do After You Purchase",{"type":473,"value":2423,"toc":2937},[2424,2427,2430,2433,2450,2453,2457,2460,2470,2477,2483,2487,2490,2510,2513,2517,2520,2573,2584,2594,2601,2604,2613,2624,2627,2631,2634,2683,2686,2690,2693,2745,2748,2757,2762,2766,2769,2796,2821,2834,2838,2841,2862,2865,2871,2875,2878,2885,2888,2896,2899,2907,2910,2918,2921,2924,2926,2929,2932,2934],[476,2425,2421],{"id":2426},"what-to-do-after-you-purchase",[480,2428,2429],{},"Congratulations on your purchase. You now own a complete, production-grade Nuxt 4 SaaS template. This chapter explains exactly what to do next, step by step, assuming you have never set up a development environment before.",[480,2431,2432],{},"We will walk through five things:",[1150,2434,2435,2438,2441,2444,2447],{},[511,2436,2437],{},"Download your files from Gumroad.",[511,2439,2440],{},"Install the tools you need on your computer.",[511,2442,2443],{},"Unzip the project and place it somewhere sensible.",[511,2445,2446],{},"Open the project in your code editor.",[511,2448,2449],{},"Confirm that everything is ready to run.",[480,2451,2452],{},"By the end of this chapter, your computer will be fully prepared. The next chapter will show you how to run the project for the first time.",[495,2454,2456],{"id":2455},"step-1-download-your-files-from-gumroad","Step 1 — Download Your Files from Gumroad",[480,2458,2459],{},"After you complete your purchase, Gumroad will send you an email with a download link. The email usually arrives within a minute or two. If you do not see it, check your spam folder.",[480,2461,2462,2463,823,2466,2469],{},"Click the download link. You will be taken to a Gumroad page where you can download a ZIP file. The file will be named something like ",[503,2464,2465],{},"nuxas-code-only.zip",[503,2467,2468],{},"nuxas-cms.zip",", depending on which edition you purchased.",[480,2471,2472,2473,2476],{},"Save the ZIP file to a location you can find easily. On Windows, a good choice is the ",[503,2474,2475],{},"Downloads"," folder.",[480,2478,2479,2482],{},[484,2480,2481],{},"Important:"," The ZIP file is your permanent copy of Nuxas. Keep it safe. If you lose it, you can re-download it from Gumroad at any time, but keeping a local copy is always a good habit.",[495,2484,2486],{"id":2485},"step-2-install-the-tools-you-need","Step 2 — Install the Tools You Need",[480,2488,2489],{},"To work with Nuxas, you need three tools on your computer:",[1150,2491,2492,2498,2504],{},[511,2493,2494,2497],{},[484,2495,2496],{},"Node.js"," — the runtime that executes JavaScript on your computer.",[511,2499,2500,2503],{},[484,2501,2502],{},"Visual Studio Code"," — a free code editor from Microsoft.",[511,2505,2506,2509],{},[484,2507,2508],{},"Git"," — a tool for tracking changes and pushing your code to GitHub later.",[480,2511,2512],{},"Let us install each one. All three are free, and all three have Windows installers that require only clicking \"Next\" a few times.",[732,2514,2516],{"id":2515},"installing-nodejs","Installing Node.js",[480,2518,2519],{},"Node.js is the engine that runs the Nuxt development server. Without it, you cannot start the project.",[1150,2521,2522,2529,2542,2549,2552,2557,2567],{},[511,2523,2524,2525,792],{},"Open your browser and go to ",[2267,2526,2527],{"href":2527,"rel":2528},"https:\u002F\u002Fnodejs.org",[2270],[511,2530,2531,2532,2146,2535,2538,2539,2541],{},"You will see two buttons: ",[484,2533,2534],{},"LTS",[484,2536,2537],{},"Current",". Click ",[484,2540,2534],{},". LTS stands for \"Long Term Support\" and is the stable version recommended for most users.",[511,2543,2544,2545,2548],{},"Download the Windows installer (",[503,2546,2547],{},".msi"," file).",[511,2550,2551],{},"Once downloaded, double-click the installer.",[511,2553,1166,2554,2556],{},[484,2555,278],{}," on every screen. Leave all settings at their defaults.",[511,2558,2559,2560,2563,2564,792],{},"On the final screen, click ",[484,2561,2562],{},"Install",". Windows may ask for permission. Click ",[484,2565,2566],{},"Yes",[511,2568,2569,2570,792],{},"When the installer finishes, click ",[484,2571,2572],{},"Finish",[480,2574,2575,2576,2579,2580,2583],{},"To verify that Node.js is installed correctly, open the Start menu, type ",[503,2577,2578],{},"cmd",", and press Enter. A black window will open. This is the ",[484,2581,2582],{},"Command Prompt",", sometimes called the terminal. Type the following and press Enter:",[550,2585,2588],{"className":2586,"code":2587,"language":2578,"meta":555,"style":555},"language-cmd shiki shiki-themes github-light github-dark","node --version\n",[503,2589,2590],{"__ignoreMap":555},[559,2591,2592],{"class":561,"line":562},[559,2593,2587],{},[480,2595,2596,2597,2600],{},"You should see a version number, something like ",[503,2598,2599],{},"v22.11.0",". If you see a number, Node.js is installed correctly.",[480,2602,2603],{},"Next, type:",[550,2605,2607],{"className":2586,"code":2606,"language":2578,"meta":555,"style":555},"npm --version\n",[503,2608,2609],{"__ignoreMap":555},[559,2610,2611],{"class":561,"line":562},[559,2612,2606],{},[480,2614,2615,2616,2619,2620,2623],{},"You should see another version number, something like ",[503,2617,2618],{},"10.9.0",". ",[503,2621,2622],{},"npm"," is the package manager that comes with Node.js. It is what you will use to install the project's dependencies.",[480,2625,2626],{},"If either command returns an error, close the Command Prompt, restart your computer, and try again. In rare cases, you may need to reinstall Node.js.",[732,2628,2630],{"id":2629},"installing-visual-studio-code","Installing Visual Studio Code",[480,2632,2633],{},"Visual Studio Code, often called VS Code, is the editor you will use to read and modify the Nuxas code.",[1150,2635,2636,2643,2650,2656,2659,2664,2671,2678],{},[511,2637,2638,2639,792],{},"Go to ",[2267,2640,2641],{"href":2641,"rel":2642},"https:\u002F\u002Fcode.visualstudio.com",[2270],[511,2644,2645,2646,2649],{},"Click the big blue ",[484,2647,2648],{},"Download"," button. The website will detect that you are on Windows and offer the Windows installer.",[511,2651,2652,2653,2548],{},"Download the installer (",[503,2654,2655],{},".exe",[511,2657,2658],{},"Double-click the installer.",[511,2660,2661,2662,792],{},"Accept the license agreement and click ",[484,2663,278],{},[511,2665,2666,2667,2670],{},"On the \"Select Additional Tasks\" screen, check the box that says ",[484,2668,2669],{},"Add to PATH",". This makes it easier to open VS Code from the terminal later.",[511,2672,1166,2673,2675,2676,792],{},[484,2674,278],{},", then ",[484,2677,2562],{},[511,2679,2569,2680,2682],{},[484,2681,2572],{},". VS Code will open automatically.",[480,2684,2685],{},"You do not need to configure anything in VS Code right now. We will come back to it in a moment.",[732,2687,2689],{"id":2688},"installing-git","Installing Git",[480,2691,2692],{},"Git is the tool that tracks changes to your code and lets you push your project to GitHub later.",[1150,2694,2695,2701,2707,2709,2714,2725,2731,2740],{},[511,2696,2638,2697,792],{},[2267,2698,2699],{"href":2699,"rel":2700},"https:\u002F\u002Fgit-scm.com\u002Fdownload\u002Fwin",[2270],[511,2702,2703,2704,792],{},"The download should start automatically. If it does not, click the link that says ",[484,2705,2706],{},"Click here to download manually",[511,2708,2551],{},[511,2710,1166,2711,2713],{},[484,2712,278],{}," on every screen. The default options are fine for almost everyone.",[511,2715,2716,2717,2720,2721,2724],{},"On the screen that asks about the default editor, you can leave it as ",[484,2718,2719],{},"Vim"," or change it to ",[484,2722,2723],{},"Use Visual Studio Code as Git's default editor",". Either is fine.",[511,2726,2727,2728,792],{},"On the screen about the PATH environment, leave the default: ",[484,2729,2730],{},"Git from the command line and also from 3rd-party software",[511,2732,2733,2734,2736,2737,2739],{},"Continue clicking ",[484,2735,278],{}," until you reach ",[484,2738,2562],{},". Click it.",[511,2741,2742,2743,792],{},"When finished, click ",[484,2744,2572],{},[480,2746,2747],{},"To verify that Git is installed, open a new Command Prompt (close the old one first) and type:",[550,2749,2751],{"className":2586,"code":2750,"language":2578,"meta":555,"style":555},"git --version\n",[503,2752,2753],{"__ignoreMap":555},[559,2754,2755],{"class":561,"line":562},[559,2756,2750],{},[480,2758,2596,2759,792],{},[503,2760,2761],{},"git version 2.46.0.windows.1",[495,2763,2765],{"id":2764},"step-3-unzip-the-project","Step 3 — Unzip the Project",[480,2767,2768],{},"Now that your tools are installed, it is time to unzip the project.",[1150,2770,2771,2776,2782,2791],{},[511,2772,2773,2774,2476],{},"Locate the ZIP file you downloaded from Gumroad. It is probably in your ",[503,2775,2475],{},[511,2777,2778,2779,792],{},"Right-click the ZIP file and choose ",[484,2780,2781],{},"Extract All",[511,2783,2784,2785,823,2788,792],{},"Windows will ask where to extract the files. Choose a location that is easy to remember. A good choice is ",[503,2786,2787],{},"C:\\Projects\\",[503,2789,2790],{},"C:\\Users\\YourName\\Documents\\Projects\\",[511,2792,1166,2793,792],{},[484,2794,2795],{},"Extract",[480,2797,2798,2799,823,2802,2805,2806,779,2809,2812,2813,2816,2817,2820],{},"After extraction, you will have a folder named something like ",[503,2800,2801],{},"nuxas-code-only",[503,2803,2804],{},"nuxas-cms",". Inside that folder, you will find the project files: ",[503,2807,2808],{},"package.json",[503,2810,2811],{},"nuxt.config.ts",", the ",[503,2814,2815],{},"app"," folder, the ",[503,2818,2819],{},"content"," folder, and so on.",[480,2822,2823,2826,2827,2830,2831,792],{},[484,2824,2825],{},"A note on folder names:"," Avoid putting the project inside a folder path that contains spaces or special characters. Windows handles them fine, but some development tools do not. A path like ",[503,2828,2829],{},"C:\\Projects\\nuxas"," is safer than ",[503,2832,2833],{},"C:\\Users\\John Doe\\My Projects\\Nuxas Final v2",[495,2835,2837],{"id":2836},"step-4-open-the-project-in-vs-code","Step 4 — Open the Project in VS Code",[480,2839,2840],{},"Now let us open the project in VS Code.",[1150,2842,2843,2846,2852,2857],{},[511,2844,2845],{},"Open VS Code.",[511,2847,2848,2849,792],{},"From the menu, choose ",[484,2850,2851],{},"File → Open Folder",[511,2853,2854,2855,792],{},"Navigate to the folder where you extracted Nuxas. For example, ",[503,2856,2829],{},[511,2858,1166,2859,792],{},[484,2860,2861],{},"Select Folder",[480,2863,2864],{},"VS Code will open the project. On the left side, you will see the file explorer with all the project files. Take a moment to look around. You do not need to understand everything yet.",[480,2866,2867,2868,2870],{},"You may notice that VS Code shows a notification in the bottom right corner, suggesting to install recommended extensions. Click ",[484,2869,2562],{}," if you see it. The extensions will help you write TypeScript and Vue code more comfortably.",[495,2872,2874],{"id":2873},"step-5-confirm-everything-is-ready","Step 5 — Confirm Everything Is Ready",[480,2876,2877],{},"Before we move on to the next chapter, let us confirm that everything is in place.",[480,2879,2880,2881,2884],{},"Open a terminal inside VS Code. From the menu, choose ",[484,2882,2883],{},"Terminal → New Terminal",". A panel will open at the bottom of the window with a command prompt.",[480,2886,2887],{},"Type the following and press Enter:",[550,2889,2890],{"className":2586,"code":2587,"language":2578,"meta":555,"style":555},[503,2891,2892],{"__ignoreMap":555},[559,2893,2894],{"class":561,"line":562},[559,2895,2587],{},[480,2897,2898],{},"You should see a version number. Then type:",[550,2900,2901],{"className":2586,"code":2606,"language":2578,"meta":555,"style":555},[503,2902,2903],{"__ignoreMap":555},[559,2904,2905],{"class":561,"line":562},[559,2906,2606],{},[480,2908,2909],{},"And finally:",[550,2911,2912],{"className":2586,"code":2750,"language":2578,"meta":555,"style":555},[503,2913,2914],{"__ignoreMap":555},[559,2915,2916],{"class":561,"line":562},[559,2917,2750],{},[480,2919,2920],{},"If all three commands return version numbers, your computer is ready. The project is on your disk, the tools are installed, and VS Code is open.",[480,2922,2923],{},"If any command returns an error, go back to Step 2 and reinstall the missing tool. Do not skip this check — every later step depends on these tools working correctly.",[495,2925,1704],{"id":1703},[480,2927,2928],{},"In the next chapter, we will install the project's dependencies with a single command, start the development server, and open the site in your browser for the first time. This is the moment where Nuxas comes alive on your computer.",[480,2930,2931],{},"If you have any questions before then, take a moment to re-read this chapter. Every step is important, and every tool we installed will be used in the chapters ahead.",[480,2933,1714],{},[1716,2935,2936],{},"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);}",{"title":555,"searchDepth":584,"depth":584,"links":2938},[2939],{"id":2426,"depth":569,"text":2421,"children":2940},[2941,2942,2947,2948,2949,2950],{"id":2455,"depth":584,"text":2456},{"id":2485,"depth":584,"text":2486,"children":2943},[2944,2945,2946],{"id":2515,"depth":595,"text":2516},{"id":2629,"depth":595,"text":2630},{"id":2688,"depth":595,"text":2689},{"id":2764,"depth":584,"text":2765},{"id":2836,"depth":584,"text":2837},{"id":2873,"depth":584,"text":2874},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to what happens after you buy Nuxas. Learn how to download your files, install the tools you need on Windows, and prepare your computer for development.",{},"\u002Fdocs\u002F03-after-purchase",{"title":2421,"description":2951},"docs\u002F03-after-purchase","ru4VBRPafl_jW5Fq4RIF7H8kPCKksN0IWDHGbp4m9P0",{"id":2958,"title":2959,"badge":1864,"body":2960,"description":3322,"extension":1763,"meta":3323,"navigation":167,"order":595,"path":3324,"section":6,"seo":3325,"stem":3326,"__hash__":3327},"docs\u002Fdocs\u002F04-install-local.md","Installing and Running Nuxas Locally",{"type":473,"value":2961,"toc":3305},[2962,2965,2968,2971,2974,2978,2984,2994,3000,3003,3012,3022,3031,3034,3043,3049,3056,3062,3065,3068,3086,3090,3093,3096,3105,3108,3114,3124,3127,3130,3134,3137,3144,3155,3159,3167,3171,3177,3181,3193,3197,3200,3209,3216,3220,3223,3230,3236,3245,3248,3252,3258,3287,3290,3292,3298,3301,3303],[476,2963,2959],{"id":2964},"installing-and-running-nuxas-locally",[480,2966,2967],{},"In the previous chapter, we installed Node.js, Visual Studio Code, and Git, and we opened the Nuxas project in VS Code. Now it is time to bring the project to life.",[480,2969,2970],{},"This chapter has two parts. First, we install the project's dependencies — the third-party packages that Nuxas needs to run. Second, we start the development server and open the site in your browser.",[480,2972,2973],{},"By the end of this chapter, you will see the Nuxas homepage running on your own computer. This is a significant milestone. Take a moment to enjoy it.",[495,2975,2977],{"id":2976},"part-1-installing-dependencies","Part 1 — Installing Dependencies",[480,2979,2980,2981,2983],{},"Every modern JavaScript project depends on third-party packages. Nuxt itself is a package. So is Vue, Nitro, and every library Nuxas uses. These packages are listed in a file called ",[503,2982,2808],{},", which lives in the root of your project folder.",[480,2985,2986,2987,2990,2991,2993],{},"Installing dependencies means downloading those packages into a folder called ",[503,2988,2989],{},"node_modules",". You only need to do this once, or again whenever ",[503,2992,2808],{}," changes (for example, after you update Nuxas).",[480,2995,2996,2997,2999],{},"Open the terminal inside VS Code. If you closed it, choose ",[484,2998,2883],{}," from the menu.",[480,3001,3002],{},"Make sure the terminal is showing the project root. You can check by typing:",[550,3004,3006],{"className":2586,"code":3005,"language":2578,"meta":555,"style":555},"dir\n",[503,3007,3008],{"__ignoreMap":555},[559,3009,3010],{"class":561,"line":562},[559,3011,3005],{},[480,3013,3014,3015,3017,3018,3021],{},"You should see ",[503,3016,2808],{}," listed among the files. If you do not, you are in the wrong folder. Use ",[503,3019,3020],{},"cd"," to navigate to the project folder. For example:",[550,3023,3025],{"className":2586,"code":3024,"language":2578,"meta":555,"style":555},"cd C:\\Projects\\nuxas\n",[503,3026,3027],{"__ignoreMap":555},[559,3028,3029],{"class":561,"line":562},[559,3030,3024],{},[480,3032,3033],{},"Once you are in the correct folder, type the following and press Enter:",[550,3035,3037],{"className":2586,"code":3036,"language":2578,"meta":555,"style":555},"npm install\n",[503,3038,3039],{"__ignoreMap":555},[559,3040,3041],{"class":561,"line":562},[559,3042,3036],{},[480,3044,3045,3046,3048],{},"This command tells npm to read ",[503,3047,2808],{}," and download every package listed there. You will see a progress indicator, and many lines of text will scroll by. This is normal.",[480,3050,3051,3052,3055],{},"The first time you run ",[503,3053,3054],{},"npm install",", it may take two to five minutes, depending on your internet speed. When it finishes, you will see a message like:",[550,3057,3060],{"className":3058,"code":3059,"language":1315},[1313],"added 842 packages, and audited 843 packages in 2m\n",[503,3061,3059],{"__ignoreMap":555},[480,3063,3064],{},"The exact numbers will differ, but the structure is the same. If you see a message like this, the installation succeeded.",[480,3066,3067],{},"You may also see warnings about vulnerabilities or deprecated packages. These are common in modern JavaScript projects and are not a cause for concern. They do not prevent the project from running.",[480,3069,3070,3076,3077,3079,3080,3082,3083,3085],{},[484,3071,3072,3073,3075],{},"A note on ",[503,3074,2989],{},":"," The ",[503,3078,2989],{}," folder can be very large — often several hundred megabytes. This is normal. Do not commit it to Git, and do not worry about its size. If you ever need to reinstall dependencies, you can delete ",[503,3081,2989],{}," and run ",[503,3084,3054],{}," again.",[495,3087,3089],{"id":3088},"part-2-starting-the-development-server","Part 2 — Starting the Development Server",[480,3091,3092],{},"Now that dependencies are installed, we can start the development server.",[480,3094,3095],{},"In the same terminal, type:",[550,3097,3099],{"className":2586,"code":3098,"language":2578,"meta":555,"style":555},"npm run dev\n",[503,3100,3101],{"__ignoreMap":555},[559,3102,3103],{"class":561,"line":562},[559,3104,3098],{},[480,3106,3107],{},"Press Enter. Nuxt will begin building the project. You will see output like:",[550,3109,3112],{"className":3110,"code":3111,"language":1315},[1313],"  ➜ Local:    http:\u002F\u002Flocalhost:3000\u002F\n  ➜ Network:  use --host to expose\n  ➜ press h + enter to show help\n",[503,3113,3111],{"__ignoreMap":555},[480,3115,3116,3117,3120,3121,792],{},"The exact lines may differ, but the key information is the ",[484,3118,3119],{},"Local URL",". It is almost always ",[503,3122,3123],{},"http:\u002F\u002Flocalhost:3000\u002F",[480,3125,3126],{},"Open your browser and go to that URL. You should see the Nuxas homepage: the hero section with the headline, the pricing cards, the testimonials, and the footer.",[480,3128,3129],{},"If you see the homepage, congratulations — Nuxas is running on your computer.",[495,3131,3133],{"id":3132},"understanding-the-development-server","Understanding the Development Server",[480,3135,3136],{},"The development server is a special mode of Nuxt that runs on your computer. It watches your files for changes and rebuilds the site automatically whenever you save a file. This is what makes development fast and pleasant: you edit a file, save it, and the browser updates within a second.",[480,3138,3139,3140,3143],{},"The development server is ",[484,3141,3142],{},"not"," the same as a production build. It is slower, it includes extra debugging information, and it should never be exposed to the public internet. We will cover production builds in a later chapter.",[480,3145,3146,3147,3150,3151,3154],{},"To stop the development server, go back to the terminal and press ",[484,3148,3149],{},"Ctrl + C",". You will see the prompt return. To start it again, run ",[503,3152,3153],{},"npm run dev"," once more.",[495,3156,3158],{"id":3157},"troubleshooting-common-issues-on-windows","Troubleshooting Common Issues on Windows",[480,3160,3161,3162,2146,3164,3166],{},"Most people run ",[503,3163,3054],{},[503,3165,3153],{}," without any problems. But if you encounter an issue, here are the most common ones and how to fix them.",[732,3168,3170],{"id":3169},"issue-npm-is-not-recognized-as-an-internal-or-external-command","Issue: \"npm is not recognized as an internal or external command\"",[480,3172,3173,3174,792],{},"This means Node.js is not installed, or it is installed but not on your PATH. Close the terminal, close VS Code, and reopen them. If the issue persists, reinstall Node.js from ",[2267,3175,2527],{"href":2527,"rel":3176},[2270],[732,3178,3180],{"id":3179},"issue-eacces-permission-denied","Issue: \"EACCES: permission denied\"",[480,3182,3183,3184,3187,3188,823,3190,792],{},"This usually happens when the project is inside a folder that requires administrator permissions, such as ",[503,3185,3186],{},"C:\\Program Files\\",". Move the project to a folder you own, such as ",[503,3189,2829],{},[503,3191,3192],{},"C:\\Users\\YourName\\Documents\\nuxas",[732,3194,3196],{"id":3195},"issue-port-3000-is-already-in-use","Issue: \"Port 3000 is already in use\"",[480,3198,3199],{},"Another process is using port 3000. This could be another Nuxt project, or it could be an unrelated application. To use a different port, run:",[550,3201,3203],{"className":2586,"code":3202,"language":2578,"meta":555,"style":555},"npm run dev -- --port 3001\n",[503,3204,3205],{"__ignoreMap":555},[559,3206,3207],{"class":561,"line":562},[559,3208,3202],{},[480,3210,3211,3212,3215],{},"Then open ",[503,3213,3214],{},"http:\u002F\u002Flocalhost:3001\u002F"," in your browser.",[732,3217,3219],{"id":3218},"issue-the-page-loads-but-shows-an-error","Issue: The page loads but shows an error",[480,3221,3222],{},"If the page loads but shows an error message instead of the homepage, look at the terminal. Nuxt prints detailed error messages there, including the file and line number where the error occurred. Copy the message and search for it online, or check if you modified a file incorrectly.",[732,3224,3226,3227,3229],{"id":3225},"issue-npm-install-fails-with-a-network-error","Issue: ",[503,3228,3054],{}," fails with a network error",[480,3231,3232,3233,3235],{},"This can happen on slow or unstable connections. Try running ",[503,3234,3054],{}," again. If it continues to fail, try:",[550,3237,3239],{"className":2586,"code":3238,"language":2578,"meta":555,"style":555},"npm install --registry=https:\u002F\u002Fregistry.npmjs.org\u002F\n",[503,3240,3241],{"__ignoreMap":555},[559,3242,3243],{"class":561,"line":562},[559,3244,3238],{},[480,3246,3247],{},"This forces npm to use the official registry, which is usually the most reliable.",[495,3249,3251],{"id":3250},"what-you-should-see","What You Should See",[480,3253,3254,3255,3257],{},"When everything works correctly, opening ",[503,3256,3123],{}," shows the Nuxas homepage. You should see:",[508,3259,3260,3263,3266,3269,3272,3275,3278,3281,3284],{},[511,3261,3262],{},"A sticky header with the Nuxas logo, the navigation links, and a theme toggle button.",[511,3264,3265],{},"A hero section with a large headline, a subtitle, two call-to-action buttons, and a code preview image.",[511,3267,3268],{},"A social proof section with four statistics.",[511,3270,3271],{},"A features section with six cards.",[511,3273,3274],{},"A steps section with three numbered cards.",[511,3276,3277],{},"A pricing section with three tiers.",[511,3279,3280],{},"A testimonials section with three quotes.",[511,3282,3283],{},"A final call-to-action band.",[511,3285,3286],{},"A footer with links and social icons.",[480,3288,3289],{},"If any of these sections are missing or empty, do not panic. In the next chapters, we will configure the site's content, and everything will appear as expected.",[495,3291,1704],{"id":1703},[480,3293,3294,3295,3297],{},"In the next chapter, we will configure the project for your own domain. This means editing ",[503,3296,2811],{}," to set your site's URL, and preparing environment variables for services like Stripe and Resend.",[480,3299,3300],{},"This is the first time you will edit a file in the project. Do not worry — we will go slowly, and every change will be explained.",[480,3302,1714],{},[1716,3304,2936],{},{"title":555,"searchDepth":584,"depth":584,"links":3306},[3307],{"id":2964,"depth":569,"text":2959,"children":3308},[3309,3310,3311,3312,3320,3321],{"id":2976,"depth":584,"text":2977},{"id":3088,"depth":584,"text":3089},{"id":3132,"depth":584,"text":3133},{"id":3157,"depth":584,"text":3158,"children":3313},[3314,3315,3316,3317,3318],{"id":3169,"depth":595,"text":3170},{"id":3179,"depth":595,"text":3180},{"id":3195,"depth":595,"text":3196},{"id":3218,"depth":595,"text":3219},{"id":3225,"depth":595,"text":3319},"Issue: npm install fails with a network error",{"id":3250,"depth":584,"text":3251},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to installing Nuxas dependencies and running the project on your computer for the first time. Includes troubleshooting for common Windows issues.",{},"\u002Fdocs\u002F04-install-local",{"title":2959,"description":3322},"docs\u002F04-install-local","FgtYdOwnr0PfLBunhWwsQZliLxTk6UW5DPEWJ-WXiDU",{"id":3329,"title":3330,"badge":3331,"body":3332,"description":3950,"extension":1763,"meta":3951,"navigation":167,"order":607,"path":3952,"section":6,"seo":3953,"stem":3954,"__hash__":3955},"docs\u002Fdocs\u002F05-nuxt-config.md","Initial Configuration — Setting Your Project URL","Configuration",{"type":473,"value":3333,"toc":3939},[3334,3337,3340,3349,3352,3356,3362,3379,3382,3398,3402,3408,3411,3508,3511,3514,3525,3532,3597,3608,3614,3619,3622,3680,3686,3690,3701,3717,3726,3730,3735,3755,3761,3780,3783,3810,3813,3824,3828,3832,3835,3849,3855,3859,3868,3889,3904,3907,3926,3929,3931,3934,3936],[476,3335,3330],{"id":3336},"initial-configuration-setting-your-project-url",[480,3338,3339],{},"In the previous chapter, we installed the project's dependencies and started the development server. You saw the Nuxas homepage running on your computer for the first time. Now it is time to make the project yours.",[480,3341,3342,3343,2146,3345,3348],{},"This chapter explains how to configure the project for your own domain. We will edit two files: ",[503,3344,2811],{},[503,3346,3347],{},".env",". Both are important, and both are easy to understand once you know what they do.",[480,3350,3351],{},"Before we begin, let us clarify what we mean by \"configuration.\"",[495,3353,3355],{"id":3354},"what-is-configuration","What Is Configuration?",[480,3357,3358,3359,3361],{},"Every Nuxt project has a file called ",[503,3360,2811],{},". This file tells Nuxt how to build and run your site. It contains settings like:",[508,3363,3364,3367,3370,3373,3376],{},[511,3365,3366],{},"Which modules to load",[511,3368,3369],{},"Which CSS files to include",[511,3371,3372],{},"What the site's URL is",[511,3374,3375],{},"Where to send contact form submissions",[511,3377,3378],{},"Which third-party services to connect to",[480,3380,3381],{},"The file is written in TypeScript, which is a typed version of JavaScript. Do not let that intimidate you. The file is mostly structured data, and you will only need to change a handful of values.",[480,3383,3384,3385,3387,3388,3390,3391,3394,3395,3397],{},"In addition to ",[503,3386,2811],{},", Nuxt uses a file called ",[503,3389,3347],{}," to store ",[484,3392,3393],{},"secrets",". These are values that should never be committed to Git, such as API keys and passwords. The ",[503,3396,3347],{}," file is not included in the ZIP you downloaded (for security reasons), so you will need to create it yourself.",[495,3399,3401],{"id":3400},"part-1-editing-nuxtconfigts","Part 1 — Editing nuxt.config.ts",[480,3403,3404,3405,3407],{},"Open the project in VS Code if it is not already open. In the file explorer on the left, find ",[503,3406,2811],{}," and click it.",[480,3409,3410],{},"You will see something like this:",[550,3412,3416],{"className":3413,"code":3414,"language":3415,"meta":555,"style":555},"language-ts shiki shiki-themes github-light github-dark","export default defineNuxtConfig({\n  compatibilityDate: '2025-01-01',\n  devtools: { enabled: true },\n  css: ['~\u002Fassets\u002Fcss\u002Fmain.css'],\n  modules: [\n    '@nuxt\u002Fcontent',\n    '@nuxtjs\u002Fseo',\n    '@nuxt\u002Fimage',\n  ],\n  \u002F\u002F ... more settings\n})\n","ts",[503,3417,3418,3433,3444,3455,3466,3471,3478,3485,3492,3497,3503],{"__ignoreMap":555},[559,3419,3420,3424,3427,3430],{"class":561,"line":562},[559,3421,3423],{"class":3422},"szBVR","export",[559,3425,3426],{"class":3422}," default",[559,3428,3429],{"class":565}," defineNuxtConfig",[559,3431,3432],{"class":576},"({\n",[559,3434,3435,3438,3441],{"class":561,"line":569},[559,3436,3437],{"class":576},"  compatibilityDate: ",[559,3439,3440],{"class":580},"'2025-01-01'",[559,3442,3443],{"class":576},",\n",[559,3445,3446,3449,3452],{"class":561,"line":584},[559,3447,3448],{"class":576},"  devtools: { enabled: ",[559,3450,3451],{"class":603},"true",[559,3453,3454],{"class":576}," },\n",[559,3456,3457,3460,3463],{"class":561,"line":595},[559,3458,3459],{"class":576},"  css: [",[559,3461,3462],{"class":580},"'~\u002Fassets\u002Fcss\u002Fmain.css'",[559,3464,3465],{"class":576},"],\n",[559,3467,3468],{"class":561,"line":607},[559,3469,3470],{"class":576},"  modules: [\n",[559,3472,3473,3476],{"class":561,"line":618},[559,3474,3475],{"class":580},"    '@nuxt\u002Fcontent'",[559,3477,3443],{"class":576},[559,3479,3480,3483],{"class":561,"line":629},[559,3481,3482],{"class":580},"    '@nuxtjs\u002Fseo'",[559,3484,3443],{"class":576},[559,3486,3487,3490],{"class":561,"line":640},[559,3488,3489],{"class":580},"    '@nuxt\u002Fimage'",[559,3491,3443],{"class":576},[559,3493,3494],{"class":561,"line":651},[559,3495,3496],{"class":576},"  ],\n",[559,3498,3499],{"class":561,"line":660},[559,3500,3502],{"class":3501},"sJ8bj","  \u002F\u002F ... more settings\n",[559,3504,3505],{"class":561,"line":669},[559,3506,3507],{"class":576},"})\n",[480,3509,3510],{},"The exact content depends on which edition of Nuxas you purchased, but the overall structure is the same.",[480,3512,3513],{},"We need to change three things in this file:",[1150,3515,3516,3519,3522],{},[511,3517,3518],{},"The site URL.",[511,3520,3521],{},"The site name.",[511,3523,3524],{},"The site description.",[480,3526,3527,3528,3531],{},"Let us find the ",[503,3529,3530],{},"site"," block. It looks like this:",[550,3533,3535],{"className":3413,"code":3534,"language":3415,"meta":555,"style":555},"site: {\n  url: 'https:\u002F\u002Fnuxas.pages.dev',\n  name: 'NuxtSass Starter',\n  description: 'Production-ready Nuxt 4 SaaS template kit',\n  defaultLocale: 'en',\n},\n",[503,3536,3537,3544,3556,3568,3580,3592],{"__ignoreMap":555},[559,3538,3539,3541],{"class":561,"line":562},[559,3540,3530],{"class":565},[559,3542,3543],{"class":576},": {\n",[559,3545,3546,3549,3551,3554],{"class":561,"line":569},[559,3547,3548],{"class":565},"  url",[559,3550,577],{"class":576},[559,3552,3553],{"class":580},"'https:\u002F\u002Fnuxas.pages.dev'",[559,3555,3443],{"class":576},[559,3557,3558,3561,3563,3566],{"class":561,"line":584},[559,3559,3560],{"class":565},"  name",[559,3562,577],{"class":576},[559,3564,3565],{"class":580},"'NuxtSass Starter'",[559,3567,3443],{"class":576},[559,3569,3570,3573,3575,3578],{"class":561,"line":595},[559,3571,3572],{"class":565},"  description",[559,3574,577],{"class":576},[559,3576,3577],{"class":580},"'Production-ready Nuxt 4 SaaS template kit'",[559,3579,3443],{"class":576},[559,3581,3582,3585,3587,3590],{"class":561,"line":607},[559,3583,3584],{"class":565},"  defaultLocale",[559,3586,577],{"class":576},[559,3588,3589],{"class":580},"'en'",[559,3591,3443],{"class":576},[559,3593,3594],{"class":561,"line":618},[559,3595,3596],{"class":576},"},\n",[480,3598,3599,3600,3603,3604,3607],{},"Change the ",[503,3601,3602],{},"url"," to your own domain. If you do not have a domain yet, you can use a placeholder like ",[503,3605,3606],{},"https:\u002F\u002Fexample.com"," for now. You can update it later when you are ready to deploy.",[480,3609,3599,3610,3613],{},[503,3611,3612],{},"name"," to the name of your project. This name appears in the browser tab and in social media previews.",[480,3615,3599,3616,3618],{},[503,3617,587],{}," to a one-sentence summary of your project. This description appears in search engine results and social media previews.",[480,3620,3621],{},"For example:",[550,3623,3625],{"className":3413,"code":3624,"language":3415,"meta":555,"style":555},"site: {\n  url: 'https:\u002F\u002Fmy-saas.com',\n  name: 'My SaaS',\n  description: 'The best tool for managing your freelance business',\n  defaultLocale: 'en',\n},\n",[503,3626,3627,3633,3644,3655,3666,3676],{"__ignoreMap":555},[559,3628,3629,3631],{"class":561,"line":562},[559,3630,3530],{"class":565},[559,3632,3543],{"class":576},[559,3634,3635,3637,3639,3642],{"class":561,"line":569},[559,3636,3548],{"class":565},[559,3638,577],{"class":576},[559,3640,3641],{"class":580},"'https:\u002F\u002Fmy-saas.com'",[559,3643,3443],{"class":576},[559,3645,3646,3648,3650,3653],{"class":561,"line":584},[559,3647,3560],{"class":565},[559,3649,577],{"class":576},[559,3651,3652],{"class":580},"'My SaaS'",[559,3654,3443],{"class":576},[559,3656,3657,3659,3661,3664],{"class":561,"line":595},[559,3658,3572],{"class":565},[559,3660,577],{"class":576},[559,3662,3663],{"class":580},"'The best tool for managing your freelance business'",[559,3665,3443],{"class":576},[559,3667,3668,3670,3672,3674],{"class":561,"line":607},[559,3669,3584],{"class":565},[559,3671,577],{"class":576},[559,3673,3589],{"class":580},[559,3675,3443],{"class":576},[559,3677,3678],{"class":561,"line":618},[559,3679,3596],{"class":576},[480,3681,3682,3683,3685],{},"Save the file with ",[484,3684,1299],{},". Nuxt will automatically restart the development server, and you will see the change reflected in the browser tab.",[495,3687,3689],{"id":3688},"understanding-the-siteurl-field","Understanding the site.url Field",[480,3691,3692,3693,3696,3697,3700],{},"The ",[503,3694,3695],{},"site.url"," field is used by several Nuxt modules, including ",[503,3698,3699],{},"@nuxtjs\u002Fseo",". It tells these modules what your site's canonical URL is, so they can generate correct sitemaps, canonical tags, and Open Graph URLs.",[480,3702,3703,3704,3706,3707,3709,3710,3713,3714,3716],{},"If you set ",[503,3705,3695],{}," to ",[503,3708,3606],{}," but you deploy to ",[503,3711,3712],{},"https:\u002F\u002Fmy-saas.com",", your sitemap will point to the wrong domain, and search engines may not index your site correctly. This is why it is important to update ",[503,3715,3695],{}," before you deploy.",[480,3718,3719,3720,3722,3723,3725],{},"During local development, ",[503,3721,3695],{}," does not need to be accurate. You can leave it as ",[503,3724,3606],{}," while you are working on the site, and change it to your real domain before deploying.",[495,3727,3729],{"id":3728},"part-2-creating-the-env-file","Part 2 — Creating the .env File",[480,3731,3692,3732,3734],{},[503,3733,3347],{}," file stores secrets. Nuxas uses environment variables for three things:",[1150,3736,3737,3743,3749],{},[511,3738,3739,3742],{},[484,3740,3741],{},"Formspree ID"," — the ID of your Formspree form, used for the contact page.",[511,3744,3745,3748],{},[484,3746,3747],{},"Resend API key"," — the API key for sending transactional emails (optional).",[511,3750,3751,3754],{},[484,3752,3753],{},"Contact email"," — the email address where contact form submissions are sent.",[480,3756,3757,3758,3760],{},"To create the ",[503,3759,3347],{}," file:",[1150,3762,3763,3766,3771,3777],{},[511,3764,3765],{},"In VS Code's file explorer, right-click the project root folder.",[511,3767,3768,3769,792],{},"Choose ",[484,3770,1279],{},[511,3772,3773,3774,3776],{},"Name the file ",[503,3775,3347],{}," (with the dot at the beginning, no extension).",[511,3778,3779],{},"Press Enter.",[480,3781,3782],{},"VS Code will create an empty file. Paste the following content into it:",[550,3784,3788],{"className":3785,"code":3786,"language":3787,"meta":555,"style":555},"language-env shiki shiki-themes github-light github-dark","NUXT_CONTACT_FORMSPREE_ID=YOUR_FORMSPREE_ID\nNUXT_RESEND_API_KEY=YOUR_RESEND_API_KEY\nNUXT_CONTACT_TO_EMAIL=your-email@example.com\nNUXT_CONTACT_FROM_EMAIL=noreply@your-domain.com\n","env",[503,3789,3790,3795,3800,3805],{"__ignoreMap":555},[559,3791,3792],{"class":561,"line":562},[559,3793,3794],{},"NUXT_CONTACT_FORMSPREE_ID=YOUR_FORMSPREE_ID\n",[559,3796,3797],{"class":561,"line":569},[559,3798,3799],{},"NUXT_RESEND_API_KEY=YOUR_RESEND_API_KEY\n",[559,3801,3802],{"class":561,"line":584},[559,3803,3804],{},"NUXT_CONTACT_TO_EMAIL=your-email@example.com\n",[559,3806,3807],{"class":561,"line":595},[559,3808,3809],{},"NUXT_CONTACT_FROM_EMAIL=noreply@your-domain.com\n",[480,3811,3812],{},"Replace each placeholder with your actual values. We will cover how to get a Formspree ID and a Resend API key in a later chapter. For now, you can leave the placeholders as they are.",[480,3814,3815,3076,3817,3819,3820,3823],{},[484,3816,2481],{},[503,3818,3347],{}," file should never be committed to Git. Nuxt's default ",[503,3821,3822],{},".gitignore"," file already excludes it, so you do not need to do anything special. Just make sure you do not accidentally add it to Git.",[480,3825,3682,3826,792],{},[484,3827,1299],{},[495,3829,3831],{"id":3830},"understanding-environment-variables","Understanding Environment Variables",[480,3833,3834],{},"Environment variables are a way to pass configuration to your application without hardcoding it in the source code. This is useful for two reasons:",[1150,3836,3837,3843],{},[511,3838,3839,3842],{},[484,3840,3841],{},"Security."," Secrets like API keys should never be in your source code, because anyone who reads your code can read the keys.",[511,3844,3845,3848],{},[484,3846,3847],{},"Flexibility."," You can use different values in development, staging, and production without changing the code.",[480,3850,3851,3852,3854],{},"Nuxt reads environment variables from the ",[503,3853,3347],{}," file during development. During deployment, you will set the same variables in your hosting provider's dashboard. We will cover that in the deployment chapters.",[495,3856,3858],{"id":3857},"part-3-verifying-the-configuration","Part 3 — Verifying the Configuration",[480,3860,3861,3862,3864,3865,3867],{},"After editing ",[503,3863,2811],{}," and creating ",[503,3866,3347],{},", restart the development server to make sure everything is working:",[1150,3869,3870,3873,3879,3885],{},[511,3871,3872],{},"Go to the terminal.",[511,3874,3875,3876,3878],{},"Press ",[484,3877,3149],{}," to stop the server.",[511,3880,3881,3882,3884],{},"Type ",[503,3883,3153],{}," and press Enter.",[511,3886,1154,3887,3215],{},[503,3888,3123],{},[480,3890,3891,3892,3895,3896,3899,3900,3903],{},"The site should load without errors. The browser tab should show the name you set in ",[503,3893,3894],{},"site.name",". If you inspect the page source (right-click → View Page Source), you should see your ",[503,3897,3898],{},"site.description"," in the ",[503,3901,3902],{},"\u003Cmeta name=\"description\">"," tag.",[480,3905,3906],{},"If you see an error, check the terminal output. The most common causes are:",[508,3908,3909,3915,3921],{},[511,3910,3911,3912,3914],{},"A typo in ",[503,3913,2811],{}," (missing comma, mismatched quote).",[511,3916,3917,3918,3920],{},"A syntax error in ",[503,3919,3347],{}," (missing equal sign, extra spaces).",[511,3922,3923,3924,792],{},"A missing module in ",[503,3925,2808],{},[480,3927,3928],{},"Read the error message carefully. Nuxt is usually very specific about what went wrong.",[495,3930,1704],{"id":1703},[480,3932,3933],{},"In the next chapter, we will take a tour of the project structure. You will learn what each folder does and where to find the files you will edit most often. This is a short but important chapter — it will save you time later when you need to find a specific file.",[480,3935,1714],{},[1716,3937,3938],{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}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);}",{"title":555,"searchDepth":584,"depth":584,"links":3940},[3941],{"id":3336,"depth":569,"text":3330,"children":3942},[3943,3944,3945,3946,3947,3948,3949],{"id":3354,"depth":584,"text":3355},{"id":3400,"depth":584,"text":3401},{"id":3688,"depth":584,"text":3689},{"id":3728,"depth":584,"text":3729},{"id":3830,"depth":584,"text":3831},{"id":3857,"depth":584,"text":3858},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to configuring Nuxas for your own domain. Learn how to edit nuxt.config.ts, understand environment variables, and prepare the project for deployment.",{},"\u002Fdocs\u002F05-nuxt-config",{"title":3330,"description":3950},"docs\u002F05-nuxt-config","sCC5nImEUEZg66OHQK6k037D4-lh3cu1JSOtT-xQe7I",{"id":3957,"title":3958,"badge":3331,"body":3959,"description":4458,"extension":1763,"meta":4459,"navigation":167,"order":618,"path":4460,"section":6,"seo":4461,"stem":4462,"__hash__":4463},"docs\u002Fdocs\u002F06-structure.md","Understanding the Project Structure",{"type":473,"value":3960,"toc":4439},[3961,3964,3970,3973,3977,3980,3986,3989,3995,3998,4004,4105,4112,4117,4120,4124,4185,4188,4194,4197,4223,4236,4242,4245,4249,4263,4266,4272,4283,4286,4290,4293,4338,4342,4345,4394,4397,4401,4418,4423,4431,4433,4436],[476,3962,3958],{"id":3963},"understanding-the-project-structure",[480,3965,3966,3967,3969],{},"In the previous chapter, we configured the project for your own domain and created the ",[503,3968,3347],{}," file. Now it is time to take a tour of the project structure.",[480,3971,3972],{},"This chapter is shorter than the others, but it is important. Knowing where files live will save you hours of searching later. You do not need to memorize everything — just keep this chapter nearby as a reference.",[495,3974,3976],{"id":3975},"the-big-picture","The Big Picture",[480,3978,3979],{},"When you open the project in VS Code, you will see something like this in the file explorer:",[550,3981,3984],{"className":3982,"code":3983,"language":1315},[1313],"my-project\u002F\n├── app\u002F\n├── content\u002F\n├── data\u002F\n├── public\u002F\n├── server\u002F\n├── shared\u002F\n├── nuxt.config.ts\n├── content.config.ts\n├── package.json\n├── tsconfig.json\n└── .env\n",[503,3985,3983],{"__ignoreMap":555},[480,3987,3988],{},"Let us go through each one, from most important to least important.",[495,3990,3692,3992,3994],{"id":3991},"the-app-folder",[503,3993,2815],{}," Folder",[480,3996,3997],{},"This is where most of your code lives. It contains the pages, components, composables, layouts, and plugins of your application.",[480,3999,4000,4001,4003],{},"Inside ",[503,4002,2815],{},", you will find:",[508,4005,4006,4014,4025,4046,4062,4078,4093],{},[511,4007,4008,4013],{},[484,4009,4010],{},[503,4011,4012],{},"app.vue"," — the root component of your application. It is small; it just wraps the layout and the page.",[511,4015,4016,4021,4022,792],{},[484,4017,4018],{},[503,4019,4020],{},"assets\u002F"," — CSS files, fonts, and images that are processed by the build system. Most of your styling lives in ",[503,4023,4024],{},"assets\u002Fcss\u002Fmain.css",[511,4026,4027,4032,4033,779,4036,779,4039,4042,4043,792],{},[484,4028,4029],{},[503,4030,4031],{},"components\u002F"," — reusable Vue components. They are organized into subfolders like ",[503,4034,4035],{},"layout\u002F",[503,4037,4038],{},"ui\u002F",[503,4040,4041],{},"product\u002F",", and ",[503,4044,4045],{},"blog\u002F",[511,4047,4048,4053,4054,4057,4058,4061],{},[484,4049,4050],{},[503,4051,4052],{},"composables\u002F"," — reusable Vue composables. These are functions that return reactive state. For example, ",[503,4055,4056],{},"useTheme"," manages dark mode, and ",[503,4059,4060],{},"useMobileNav"," manages the mobile drawer.",[511,4063,4064,4069,4070,4073,4074,4077],{},[484,4065,4066],{},[503,4067,4068],{},"layouts\u002F"," — layout files. The ",[503,4071,4072],{},"default.vue"," layout wraps every page with the header and footer. The ",[503,4075,4076],{},"docs.vue"," layout is used specifically for documentation pages.",[511,4079,4080,4084,4085,4088,4089,4092],{},[484,4081,4082],{},[503,4083,1908],{}," — the pages of your application. Each file in this folder becomes a route. For example, ",[503,4086,4087],{},"pages\u002Findex.vue"," becomes the homepage, and ",[503,4090,4091],{},"pages\u002Fproducts\u002Findex.vue"," becomes the products page.",[511,4094,4095,4100,4101,4104],{},[484,4096,4097],{},[503,4098,4099],{},"plugins\u002F"," — plugins that run before the app starts. For example, ",[503,4102,4103],{},"theme.client.ts"," sets up the initial theme.",[480,4106,4107,4108,2146,4110,792],{},"Most of your work will happen in ",[503,4109,1908],{},[503,4111,4031],{},[495,4113,3692,4115,3994],{"id":4114},"the-content-folder",[503,4116,2819],{},[480,4118,4119],{},"This folder holds your content. It is managed by Nuxt Content, a module that reads Markdown and YAML files and makes them queryable from your Vue code.",[480,4121,4000,4122,4003],{},[503,4123,2819],{},[508,4125,4126,4133,4141,4148,4156,4164],{},[511,4127,4128,4132],{},[484,4129,4130],{},[503,4131,4045],{}," — blog posts, one Markdown file per post.",[511,4134,4135,4140],{},[484,4136,4137],{},[503,4138,4139],{},"products\u002F"," — product pages, one Markdown file per product.",[511,4142,4143,4147],{},[484,4144,4145],{},[503,4146,1908],{}," — static pages like About, Privacy, or Terms.",[511,4149,4150,4155],{},[484,4151,4152],{},[503,4153,4154],{},"contact.md"," — the contact page content.",[511,4157,4158,4163],{},[484,4159,4160],{},[503,4161,4162],{},"404.md"," — the 404 error page content.",[511,4165,4166,4171,4172,779,4175,779,4178,4042,4181,4184],{},[484,4167,4168],{},[503,4169,4170],{},"data\u002F"," — configuration files in YAML format. This is where ",[503,4173,4174],{},"site.yml",[503,4176,4177],{},"product.yml",[503,4179,4180],{},"blog.yml",[503,4182,4183],{},"docs.yml"," live.",[480,4186,4187],{},"If you are using the Code Only edition, you will edit these files directly. If you are using the Decap CMS edition, you will edit them through the CMS dashboard, and the files will be updated automatically.",[495,4189,3692,4191,3994],{"id":4190},"the-public-folder",[503,4192,4193],{},"public",[480,4195,4196],{},"Files in this folder are served as-is, without any processing. This is where you put things like:",[508,4198,4199,4205,4211,4217],{},[511,4200,4201,4204],{},[503,4202,4203],{},"favicon.ico"," — the small icon that appears in the browser tab.",[511,4206,4207,4210],{},[503,4208,4209],{},"robots.txt"," — the file that tells search engines which pages to index.",[511,4212,4213,4216],{},[503,4214,4215],{},"admin\u002F"," — the Decap CMS admin interface. This folder exists only in the CMS edition.",[511,4218,4219,4222],{},[503,4220,4221],{},"uploads\u002F"," — images uploaded through Decap CMS.",[480,4224,4225,4226,4228,4229,4232,4233,792],{},"Files in ",[503,4227,4193],{}," are accessed from the root URL. For example, ",[503,4230,4231],{},"public\u002Ffavicon.ico"," is accessible at ",[503,4234,4235],{},"https:\u002F\u002Fyour-domain.com\u002Ffavicon.ico",[495,4237,3692,4239,3994],{"id":4238},"the-server-folder",[503,4240,4241],{},"server",[480,4243,4244],{},"This folder contains the backend code of your application. Nuxt 4 uses Nitro, a server engine that compiles your backend into a portable server that runs on any hosting provider.",[480,4246,4000,4247,4003],{},[503,4248,4241],{},[508,4250,4251],{},[511,4252,4253,4258,4259,4262],{},[484,4254,4255],{},[503,4256,4257],{},"api\u002F"," — API endpoints. Each file becomes an API route. For example, ",[503,4260,4261],{},"api\u002Fcontact.post.ts"," handles contact form submissions.",[480,4264,4265],{},"If you are not adding custom backend logic, you will rarely edit files in this folder.",[495,4267,3692,4269,3994],{"id":4268},"the-shared-folder",[503,4270,4271],{},"shared",[480,4273,4274,4275,4278,4279,4282],{},"This folder contains TypeScript types that are shared between the client and the server. For example, ",[503,4276,4277],{},"shared\u002Ftypes\u002Fproduct.ts"," defines the ",[503,4280,4281],{},"Product"," interface, which is used in both the frontend and the backend.",[480,4284,4285],{},"If you add a new field to a product, you will need to update the type in this folder.",[495,4287,4289],{"id":4288},"the-root-files","The Root Files",[480,4291,4292],{},"At the root of the project, you will find a few important files:",[508,4294,4295,4302,4310,4323,4331],{},[511,4296,4297,4301],{},[484,4298,4299],{},[503,4300,2811],{}," — the main configuration file. You already edited this in the previous chapter.",[511,4303,4304,4309],{},[484,4305,4306],{},[503,4307,4308],{},"content.config.ts"," — the configuration for Nuxt Content. It defines the shape of each content collection (blog, products, pages, etc.).",[511,4311,4312,4316,4317,2146,4319,4322],{},[484,4313,4314],{},[503,4315,2808],{}," — lists the project's dependencies and scripts. You will use ",[503,4318,3153],{},[503,4320,4321],{},"npm run build"," from this file.",[511,4324,4325,4330],{},[484,4326,4327],{},[503,4328,4329],{},"tsconfig.json"," — the TypeScript configuration. You rarely need to edit this.",[511,4332,4333,4337],{},[484,4334,4335],{},[503,4336,3347],{}," — the environment variables file. You created this in the previous chapter.",[495,4339,4341],{"id":4340},"how-nuxt-generates-routes","How Nuxt Generates Routes",[480,4343,4344],{},"One of the most magical things about Nuxt is how it generates routes from files. Here is how it works:",[508,4346,4347,4355,4362,4369,4378,4386],{},[511,4348,4349,4352,4353],{},[503,4350,4351],{},"app\u002Fpages\u002Findex.vue"," → ",[503,4354,19],{},[511,4356,4357,4352,4360],{},[503,4358,4359],{},"app\u002Fpages\u002Fabout.vue",[503,4361,25],{},[511,4363,4364,4352,4367],{},[503,4365,4366],{},"app\u002Fpages\u002Fproducts\u002Findex.vue",[503,4368,28],{},[511,4370,4371,4352,4374,4377],{},[503,4372,4373],{},"app\u002Fpages\u002Fproducts\u002F[slug].vue",[503,4375,4376],{},"\u002Fproducts\u002F:slug"," (dynamic route)",[511,4379,4380,4352,4383],{},[503,4381,4382],{},"app\u002Fpages\u002Fblog\u002F[slug].vue",[503,4384,4385],{},"\u002Fblog\u002F:slug",[511,4387,4388,4352,4391],{},[503,4389,4390],{},"app\u002Fpages\u002Fdocs\u002F[slug].vue",[503,4392,4393],{},"\u002Fdocs\u002F:slug",[480,4395,4396],{},"You do not need to configure a router manually. Nuxt reads the folder structure and generates routes automatically.",[495,4398,4400],{"id":4399},"how-nuxt-content-works","How Nuxt Content Works",[480,4402,4403,4404,4406,4407,4409,4410,4413,4414,4417],{},"Nuxt Content is what connects the ",[503,4405,2819],{}," folder to your Vue code. Each file in ",[503,4408,505],{}," becomes a blog post. Each file in ",[503,4411,4412],{},"content\u002Fproducts\u002F"," becomes a product. The ",[503,4415,4416],{},"content\u002Fdata\u002F"," folder holds configuration files that are queried from your code.",[480,4419,3692,4420,4422],{},[503,4421,4308],{}," file defines the shape of each collection. For example, it says \"every blog post must have a title, a description, a date, and a body.\" If a blog post is missing one of these fields, Nuxt Content will refuse to load it, and you will see an error.",[480,4424,4425,4426,4428,4429,792],{},"This is why it is important to keep ",[503,4427,4308],{}," in sync with your content files. If you add a new field to a blog post, you also need to add it to ",[503,4430,4308],{},[495,4432,1704],{"id":1703},[480,4434,4435],{},"In the next chapter, we will run Nuxas with Decap CMS. This chapter is only relevant if you purchased the Code + Decap CMS edition. If you purchased the Code Only edition, you can skip it and continue to the chapter after next.",[480,4437,4438],{},"We will show you how to run the site and the CMS side by side, using two terminals. See you there.",{"title":555,"searchDepth":584,"depth":584,"links":4440},[4441],{"id":3963,"depth":569,"text":3958,"children":4442},[4443,4444,4446,4448,4450,4452,4454,4455,4456,4457],{"id":3975,"depth":584,"text":3976},{"id":3991,"depth":584,"text":4445},"The app Folder",{"id":4114,"depth":584,"text":4447},"The content Folder",{"id":4190,"depth":584,"text":4449},"The public Folder",{"id":4238,"depth":584,"text":4451},"The server Folder",{"id":4268,"depth":584,"text":4453},"The shared Folder",{"id":4288,"depth":584,"text":4289},{"id":4340,"depth":584,"text":4341},{"id":4399,"depth":584,"text":4400},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly tour of the Nuxas project structure. Learn what each folder does and where to find the files you will edit most often.",{},"\u002Fdocs\u002F06-structure",{"title":3958,"description":4458},"docs\u002F06-structure","OWcCehyQ-_jj5_MJ1Ys1lO8GBpGg2inDgIGH0UW4L6s",{"id":4465,"title":4466,"badge":2156,"body":4467,"description":4864,"extension":1763,"meta":4865,"navigation":167,"order":629,"path":4866,"section":6,"seo":4867,"stem":4868,"__hash__":4869},"docs\u002Fdocs\u002F07-decap-local.md","Running Nuxas with Decap CMS Locally",{"type":473,"value":4468,"toc":4846},[4469,4472,4480,4487,4490,4494,4497,4507,4510,4514,4517,4539,4542,4545,4549,4552,4555,4564,4571,4577,4579,4587,4591,4594,4608,4615,4618,4627,4630,4636,4641,4646,4650,4660,4668,4671,4673,4679,4683,4686,4692,4695,4698,4735,4738,4742,4749,4760,4763,4769,4773,4777,4782,4786,4789,4804,4811,4815,4822,4826,4831,4833,4839,4842,4844],[476,4470,4466],{"id":4471},"running-nuxas-with-decap-cms-locally",[480,4473,4474,4475,4477,4478,792],{},"This chapter is for readers who purchased the ",[484,4476,2149],{}," edition. If you purchased the Code Only edition, you can skip this chapter and continue to the next one. The Code Only edition does not use Decap CMS, and everything you need is already running with ",[503,4479,3153],{},[480,4481,4482,4483,4486],{},"For those who purchased the CMS edition, this chapter shows you how to run Nuxas with Decap CMS on your own computer. This is called the ",[484,4484,4485],{},"local mode",", and it is how you will edit content while you are developing.",[480,4488,4489],{},"Before we start, let us clarify what Decap CMS is and why it needs a separate server.",[495,4491,4493],{"id":4492},"what-is-decap-cms","What Is Decap CMS?",[480,4495,4496],{},"Decap CMS is a browser-based content management system. It is a dashboard that lets you edit your blog, products, and site content without touching any files. Every change you make in the CMS is written back to the Markdown and YAML files in your project.",[480,4498,4499,4500,4502,4503,4506],{},"Because Decap CMS writes to files, it needs a way to save those files. In the ",[484,4501,4485],{},", it saves them directly to your computer, through a small server that you run in a separate terminal. In the ",[484,4504,4505],{},"cloud mode"," (after deployment), it saves them to your Git repository, through a service called Git Gateway.",[480,4508,4509],{},"This chapter covers the local mode. The cloud mode is covered in the deployment chapters later.",[495,4511,4513],{"id":4512},"why-two-terminals","Why Two Terminals?",[480,4515,4516],{},"Running Nuxas with Decap CMS requires two servers running at the same time:",[1150,4518,4519,4530],{},[511,4520,4521,4524,4525,4527,4528,792],{},[484,4522,4523],{},"The Nuxt development server"," — this is the site itself, running on ",[503,4526,3123],{},". You start it with ",[503,4529,3153],{},[511,4531,4532,4535,4536,792],{},[484,4533,4534],{},"The Decap CMS proxy server"," — this is a small server that lets the CMS save files to your computer. You start it with ",[503,4537,4538],{},"npx decap-server",[480,4540,4541],{},"The two servers work together. The Nuxt server serves the site and the admin interface. The Decap server handles file writes. Without the Decap server, the CMS will open, but every save will fail with an error.",[480,4543,4544],{},"This is why we use two terminals: each terminal runs one server, and they run side by side.",[495,4546,4548],{"id":4547},"part-1-installing-decap-server","Part 1 — Installing Decap Server",[480,4550,4551],{},"Before you can run the Decap proxy, you need to install it. This is a one-time step.",[480,4553,4554],{},"Open a terminal in VS Code. Make sure you are in the project root folder. Then run:",[550,4556,4558],{"className":2586,"code":4557,"language":2578,"meta":555,"style":555},"npm install decap-server --save-dev\n",[503,4559,4560],{"__ignoreMap":555},[559,4561,4562],{"class":561,"line":562},[559,4563,4557],{},[480,4565,4566,4567,4570],{},"This installs the ",[503,4568,4569],{},"decap-server"," package as a development dependency. You will see output like:",[550,4572,4575],{"className":4573,"code":4574,"language":1315},[1313],"added 42 packages, and audited 885 packages in 30s\n",[503,4576,4574],{"__ignoreMap":555},[480,4578,3064],{},[480,4580,4581,4582,4584,4585,792],{},"You only need to run this command once. If you reinstall dependencies later with ",[503,4583,3054],{},", the Decap server will be reinstalled automatically because it is now listed in ",[503,4586,2808],{},[495,4588,4590],{"id":4589},"part-2-starting-the-decap-server","Part 2 — Starting the Decap Server",[480,4592,4593],{},"Now that Decap server is installed, we can start it.",[480,4595,4596,4597,4600,4601,4603,4604,4607],{},"Open a ",[484,4598,4599],{},"new terminal"," in VS Code. You can do this from the menu: ",[484,4602,2883],{},". Alternatively, click the ",[484,4605,4606],{},"+"," icon in the terminal panel.",[480,4609,4610,4611,4614],{},"You now have two terminals: the first one (the original) and the second one (the new one). Make sure you are running commands in the ",[484,4612,4613],{},"second terminal"," for this step.",[480,4616,4617],{},"In the second terminal, run:",[550,4619,4621],{"className":2586,"code":4620,"language":2578,"meta":555,"style":555},"npx decap-server\n",[503,4622,4623],{"__ignoreMap":555},[559,4624,4625],{"class":561,"line":562},[559,4626,4620],{},[480,4628,4629],{},"You should see output like:",[550,4631,4634],{"className":4632,"code":4633,"language":1315},[1313],"Decap CMS Proxy Server listening on port 8081\n",[503,4635,4633],{"__ignoreMap":555},[480,4637,4638,4639,792],{},"This means the Decap proxy is running. It will stay running until you stop it with ",[484,4640,3149],{},[480,4642,4643,4645],{},[484,4644,2481],{}," Do not close this terminal. The Decap proxy needs to stay running for the CMS to save files.",[495,4647,4649],{"id":4648},"part-3-starting-the-nuxt-development-server","Part 3 — Starting the Nuxt Development Server",[480,4651,4652,4653,4656,4657,4659],{},"Now switch to the ",[484,4654,4655],{},"first terminal"," — the one you used for ",[503,4658,3153],{}," in the previous chapters. If the server is not running, start it:",[550,4661,4662],{"className":2586,"code":3098,"language":2578,"meta":555,"style":555},[503,4663,4664],{"__ignoreMap":555},[559,4665,4666],{"class":561,"line":562},[559,4667,3098],{},[480,4669,4670],{},"If the server is already running, you can leave it as it is. The Nuxt server and the Decap server can run side by side without conflict.",[480,4672,4629],{},[550,4674,4677],{"className":4675,"code":4676,"language":1315},[1313],"  ➜ Local:    http:\u002F\u002Flocalhost:3000\u002F\n",[503,4678,4676],{"__ignoreMap":555},[495,4680,4682],{"id":4681},"part-4-opening-the-cms","Part 4 — Opening the CMS",[480,4684,4685],{},"With both servers running, open your browser and go to:",[550,4687,4690],{"className":4688,"code":4689,"language":1315},[1313],"http:\u002F\u002Flocalhost:3000\u002Fadmin\n",[503,4691,4689],{"__ignoreMap":555},[480,4693,4694],{},"You will see the Decap CMS login screen. In the local mode, there is no login — the CMS trusts your local machine. You will be taken directly to the dashboard.",[480,4696,4697],{},"The dashboard shows your collections:",[508,4699,4700,4706,4711,4715,4719,4724,4729],{},[511,4701,4702,4705],{},[484,4703,4704],{},"Site Settings"," — global site configuration (navbar, footer, homepage).",[511,4707,4708,4710],{},[484,4709,2068],{}," — configuration for the blog list and product list.",[511,4712,4713,4155],{},[484,4714,2074],{},[511,4716,4717,4163],{},[484,4718,2080],{},[511,4720,4721,4723],{},[484,4722,1163],{}," — the blog collection.",[511,4725,4726,4728],{},[484,4727,27],{}," — the product collection.",[511,4730,4731,4734],{},[484,4732,4733],{},"Static Pages"," — the static pages collection.",[480,4736,4737],{},"Click any collection to see its entries. Click an entry to edit it. When you save, the change is written to the corresponding file in your project, and the Nuxt development server reloads the page automatically.",[495,4739,4741],{"id":4740},"understanding-the-local-mode","Understanding the Local Mode",[480,4743,4744,4745,4748],{},"In the local mode, Decap CMS saves files ",[484,4746,4747],{},"directly to your computer",". This means:",[508,4750,4751,4754,4757],{},[511,4752,4753],{},"You do not need a Git repository to use the CMS.",[511,4755,4756],{},"You do not need an internet connection.",[511,4758,4759],{},"Every save is immediate — there is no commit, no push, no waiting.",[480,4761,4762],{},"This is ideal for development. You can iterate on content quickly, see the results in the browser immediately, and commit your changes to Git when you are ready.",[480,4764,4765,4766,4768],{},"When you are ready to deploy, you will switch to the ",[484,4767,4505],{},", where Decap CMS saves changes to your Git repository instead. We will cover that in the deployment chapters.",[495,4770,4772],{"id":4771},"common-issues","Common Issues",[732,4774,4776],{"id":4775},"issue-cannot-connect-to-decap-server","Issue: \"Cannot connect to Decap Server\"",[480,4778,4779,4780,792],{},"This means the Decap proxy is not running. Check the second terminal. If you do not see the \"listening on port 8081\" message, the server is not running. Start it again with ",[503,4781,4538],{},[732,4783,4785],{"id":4784},"issue-port-8081-is-already-in-use","Issue: \"Port 8081 is already in use\"",[480,4787,4788],{},"Another process is using port 8081. This could be a previous instance of Decap server that did not shut down cleanly. On Windows, you can find and kill the process with:",[550,4790,4792],{"className":2586,"code":4791,"language":2578,"meta":555,"style":555},"netstat -ano | findstr :8081\ntaskkill \u002FPID \u003CPID> \u002FF\n",[503,4793,4794,4799],{"__ignoreMap":555},[559,4795,4796],{"class":561,"line":562},[559,4797,4798],{},"netstat -ano | findstr :8081\n",[559,4800,4801],{"class":561,"line":569},[559,4802,4803],{},"taskkill \u002FPID \u003CPID> \u002FF\n",[480,4805,4806,4807,4810],{},"Replace ",[503,4808,4809],{},"\u003CPID>"," with the process ID shown in the first command.",[732,4812,4814],{"id":4813},"issue-cms-opens-but-shows-a-blank-page","Issue: CMS opens but shows a blank page",[480,4816,4817,4818,4821],{},"This usually means there is a syntax error in ",[503,4819,4820],{},"public\u002Fadmin\u002Fconfig.yml",". Open the file in VS Code and look for red squiggly lines. YAML is very sensitive to indentation — a single misplaced space can break the entire file.",[732,4823,4825],{"id":4824},"issue-changes-in-the-cms-do-not-appear-on-the-site","Issue: Changes in the CMS do not appear on the site",[480,4827,4828,4829,792],{},"This can happen if the Nuxt development server is not running, or if it has crashed. Check the first terminal. If you see an error, fix it, then restart the server with ",[503,4830,3153],{},[495,4832,1704],{"id":1703},[480,4834,4835,4836,4838],{},"In the next chapter, we will start editing the site's content through Decap CMS. We will begin with the ",[484,4837,2062],{}," — the file that controls your navbar, footer, and homepage. This is where you will make your first real changes to the site.",[480,4840,4841],{},"If you purchased the Code Only edition, you can skip to the chapter after next, which covers editing the same content directly in files.",[480,4843,1714],{},[1716,4845,2936],{},{"title":555,"searchDepth":584,"depth":584,"links":4847},[4848],{"id":4471,"depth":569,"text":4466,"children":4849},[4850,4851,4852,4853,4854,4855,4856,4857,4863],{"id":4492,"depth":584,"text":4493},{"id":4512,"depth":584,"text":4513},{"id":4547,"depth":584,"text":4548},{"id":4589,"depth":584,"text":4590},{"id":4648,"depth":584,"text":4649},{"id":4681,"depth":584,"text":4682},{"id":4740,"depth":584,"text":4741},{"id":4771,"depth":584,"text":4772,"children":4858},[4859,4860,4861,4862],{"id":4775,"depth":595,"text":4776},{"id":4784,"depth":595,"text":4785},{"id":4813,"depth":595,"text":4814},{"id":4824,"depth":595,"text":4825},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to running Nuxas with Decap CMS on your own computer. Learn how to start two terminals, connect the CMS to your project, and edit content from the browser.",{},"\u002Fdocs\u002F07-decap-local",{"title":4466,"description":4864},"docs\u002F07-decap-local","M6t-UcpRacxJrwMyNuH6K1NBqGjFpzcW5XZwnDTOrvM",{"id":4871,"title":4872,"badge":471,"body":4873,"description":6648,"extension":1763,"meta":6649,"navigation":167,"order":640,"path":6650,"section":6,"seo":6651,"stem":6652,"__hash__":6653},"docs\u002Fdocs\u002F08-global-site.md","Global Site Config — Navbar, Footer, and Homepage",{"type":473,"value":4874,"toc":6626},[4875,4878,4881,4887,4890,4894,4904,4907,4913,4917,4923,4925,4935,4941,4950,4952,4957,4963,4969,4973,4979,5019,5043,5049,5053,5059,5172,5194,5197,5203,5207,5213,5413,5472,5479,5483,5489,5577,5586,5590,5596,5673,5694,5720,5723,5727,5733,5807,5818,5822,5828,5996,5999,6077,6080,6084,6090,6176,6190,6194,6200,6275,6284,6288,6294,6406,6439,6447,6451,6457,6577,6590,6594,6602,6610,6613,6615,6621,6623],[476,4876,4872],{"id":4877},"global-site-config-navbar-footer-and-homepage",[480,4879,4880],{},"In the previous chapter, we started Nuxas with Decap CMS running in the local mode. Now it is time to edit content for the first time.",[480,4882,4883,4884,4886],{},"This chapter focuses on the ",[484,4885,2062],{}," — the single file that controls the navbar, the footer, and almost every section on your homepage. Once you understand how this file works, you will understand how the rest of the content system is organized.",[480,4888,4889],{},"Before we dive in, let us clarify what \"Global Site Config\" actually means.",[495,4891,4893],{"id":4892},"what-is-the-global-site-config","What Is the Global Site Config?",[480,4895,4896,4897,4899,4900,4903],{},"The Global Site Config is a file called ",[503,4898,4174],{},", located at ",[503,4901,4902],{},"content\u002Fdata\u002Fsite.yml",". It is a YAML file, which is a human-readable format for structured data. It contains every piece of content that appears across multiple pages: the brand name, the navigation links, the footer columns, the homepage hero, the pricing tiers, and so on.",[480,4905,4906],{},"Every page in Nuxas reads from this file. The header reads the navigation links. The footer reads the footer columns and social links. The homepage reads the hero section, the features section, the pricing section, and so on.",[480,4908,4909,4910,4912],{},"If you change a value in ",[503,4911,4174],{},", that change appears everywhere the value is used. This is the power of the global config: one edit, many places.",[495,4914,4916],{"id":4915},"how-to-edit-the-global-site-config","How to Edit the Global Site Config",[480,4918,4919,4920,4922],{},"The way you edit ",[503,4921,4174],{}," depends on which edition of Nuxas you purchased.",[732,4924,1148],{"id":1147},[480,4926,2524,4927,4929,4930,4932,4933,792],{},[503,4928,1157],{},". In the left sidebar, click ",[484,4931,4704],{},". Then click ",[484,4934,2062],{},[480,4936,4937,4938,4940],{},"The CMS will show a form with every field in ",[503,4939,4174],{},", organized into groups. Scroll through the form and you will see sections for Brand, Navigation, Hero, Social Proof, Features, Steps, Pricing, Testimonials, Call to Action, Contact, Footer, and UI Labels.",[480,4942,4943,4944,4946,4947,4949],{},"Edit any field, then click ",[484,4945,1252],{}," in the top right corner. The change is written to ",[503,4948,4174],{},", and the Nuxt development server reloads the page automatically. Refresh your browser and you will see the change on the site.",[732,4951,1265],{"id":1264},[480,4953,1154,4954,4956],{},[503,4955,4902],{}," in VS Code. You will see a YAML file with the same structure as the CMS form, but written in plain text.",[480,4958,4959,4960,4962],{},"Edit any value, then save the file with ",[484,4961,1299],{},". The Nuxt development server reloads the page automatically. Refresh your browser and you will see the change on the site.",[480,4964,4965,4966,4968],{},"The rest of this chapter explains what each section of ",[503,4967,4174],{}," does. You can follow along in either the CMS or VS Code — the fields are identical.",[495,4970,4972],{"id":4971},"section-1-brand","Section 1 — Brand",[480,4974,3692,4975,4978],{},[503,4976,4977],{},"brand"," section controls your project's identity. It appears in the header, the footer, and the browser tab.",[550,4980,4982],{"className":552,"code":4981,"language":554,"meta":555,"style":555},"brand:\n  name: NuxtSass\n  badge: Starter\n  tagline: Production-ready Nuxt 4 SaaS template kit\n",[503,4983,4984,4990,4999,5009],{"__ignoreMap":555},[559,4985,4986,4988],{"class":561,"line":562},[559,4987,4977],{"class":572},[559,4989,657],{"class":576},[559,4991,4992,4994,4996],{"class":561,"line":569},[559,4993,3560],{"class":572},[559,4995,577],{"class":576},[559,4997,4998],{"class":580},"NuxtSass\n",[559,5000,5001,5004,5006],{"class":561,"line":584},[559,5002,5003],{"class":572},"  badge",[559,5005,577],{"class":576},[559,5007,5008],{"class":580},"Starter\n",[559,5010,5011,5014,5016],{"class":561,"line":595},[559,5012,5013],{"class":572},"  tagline",[559,5015,577],{"class":576},[559,5017,5018],{"class":580},"Production-ready Nuxt 4 SaaS template kit\n",[508,5020,5021,5028,5035],{},[511,5022,5023,5027],{},[484,5024,5025],{},[503,5026,3612],{}," — the name of your project. It appears next to the logo in the header.",[511,5029,5030,5034],{},[484,5031,5032],{},[503,5033,695],{}," — a small label that appears after the name. In the default config, it is \"Starter\". Change it to something like \"Pro\", \"SaaS\", or remove it entirely.",[511,5036,5037,5042],{},[484,5038,5039],{},[503,5040,5041],{},"tagline"," — a short description that appears in the footer, under the brand name.",[480,5044,5045,5046,5048],{},"If you change ",[503,5047,3612],{}," to \"My SaaS\", the header will show \"My SaaS\" instead of \"NuxtSass\". Simple as that.",[495,5050,5052],{"id":5051},"section-2-navigation","Section 2 — Navigation",[480,5054,3692,5055,5058],{},[503,5056,5057],{},"nav"," section controls the primary navigation links in the header.",[550,5060,5062],{"className":552,"code":5061,"language":554,"meta":555,"style":555},"nav:\n  - label: Home\n    to: \u002F\n  - label: Products\n    to: \u002Fproducts\n  - label: Blog\n    to: \u002Fblog\n  - label: About\n    to: \u002Fabout\n  - label: Contact\n    to: \u002Fcontact\n",[503,5063,5064,5070,5082,5092,5103,5112,5123,5132,5143,5152,5163],{"__ignoreMap":555},[559,5065,5066,5068],{"class":561,"line":562},[559,5067,5057],{"class":572},[559,5069,657],{"class":576},[559,5071,5072,5074,5077,5079],{"class":561,"line":569},[559,5073,663],{"class":576},[559,5075,5076],{"class":572},"label",[559,5078,577],{"class":576},[559,5080,5081],{"class":580},"Home\n",[559,5083,5084,5087,5089],{"class":561,"line":584},[559,5085,5086],{"class":572},"    to",[559,5088,577],{"class":576},[559,5090,5091],{"class":580},"\u002F\n",[559,5093,5094,5096,5098,5100],{"class":561,"line":595},[559,5095,663],{"class":576},[559,5097,5076],{"class":572},[559,5099,577],{"class":576},[559,5101,5102],{"class":580},"Products\n",[559,5104,5105,5107,5109],{"class":561,"line":607},[559,5106,5086],{"class":572},[559,5108,577],{"class":576},[559,5110,5111],{"class":580},"\u002Fproducts\n",[559,5113,5114,5116,5118,5120],{"class":561,"line":618},[559,5115,663],{"class":576},[559,5117,5076],{"class":572},[559,5119,577],{"class":576},[559,5121,5122],{"class":580},"Blog\n",[559,5124,5125,5127,5129],{"class":561,"line":629},[559,5126,5086],{"class":572},[559,5128,577],{"class":576},[559,5130,5131],{"class":580},"\u002Fblog\n",[559,5133,5134,5136,5138,5140],{"class":561,"line":640},[559,5135,663],{"class":576},[559,5137,5076],{"class":572},[559,5139,577],{"class":576},[559,5141,5142],{"class":580},"About\n",[559,5144,5145,5147,5149],{"class":561,"line":651},[559,5146,5086],{"class":572},[559,5148,577],{"class":576},[559,5150,5151],{"class":580},"\u002Fabout\n",[559,5153,5154,5156,5158,5160],{"class":561,"line":660},[559,5155,663],{"class":576},[559,5157,5076],{"class":572},[559,5159,577],{"class":576},[559,5161,5162],{"class":580},"Contact\n",[559,5164,5165,5167,5169],{"class":561,"line":669},[559,5166,5086],{"class":572},[559,5168,577],{"class":576},[559,5170,5171],{"class":580},"\u002Fcontact\n",[508,5173,5174,5181],{},[511,5175,5176,5180],{},[484,5177,5178],{},[503,5179,5076],{}," — the text shown in the navigation.",[511,5182,5183,5188,5189,5191,5192,792],{},[484,5184,5185],{},[503,5186,5187],{},"to"," — the URL the link points to. For internal pages, use a path like ",[503,5190,28],{},". For external pages, use a full URL like ",[503,5193,3606],{},[480,5195,5196],{},"To add a new link, add a new item to the list. To remove a link, delete its item. The order in the list is the order in the navigation.",[480,5198,3692,5199,5202],{},[503,5200,5201],{},"mobileNav"," section works the same way, but it controls the mobile drawer instead of the desktop navigation. You can use different labels for mobile if you want.",[495,5204,5206],{"id":5205},"section-3-hero","Section 3 — Hero",[480,5208,3692,5209,5212],{},[503,5210,5211],{},"hero"," section controls the large section at the top of your homepage. It is the first thing visitors see.",[550,5214,5216],{"className":552,"code":5215,"language":554,"meta":555,"style":555},"hero:\n  badge: Nuxt 4.14+ & Nitro Engine Ready\n  title: The Production-Grade SaaS Template Built For\n  titleHighlight: Nuxt Developers\n  subtitle: Stop re-inventing authentication...\n  primaryCta:\n    label: Get the Template\n    to: \u002Fproducts\n  secondaryCta:\n    label: View Live Demo\n    to: \"#demo-preview\"\n  metrics:\n    - 100% Strict TypeScript\n    - Lighthouse 99+ Performance\n  preview:\n    file: server\u002Fapi\u002Fsubscription\u002Fcheckout.post.ts\n    tabs:\n      - Nitro Composable\n      - Nuxt 4\n    image: https:\u002F\u002Fimages.unsplash.com\u002F...\n    alt: Nitro server route with Stripe checkout session\n    width: 1600\n    height: 900\n",[503,5217,5218,5224,5233,5243,5253,5263,5270,5280,5288,5295,5304,5313,5320,5328,5335,5342,5352,5359,5367,5373,5383,5393,5403],{"__ignoreMap":555},[559,5219,5220,5222],{"class":561,"line":562},[559,5221,5211],{"class":572},[559,5223,657],{"class":576},[559,5225,5226,5228,5230],{"class":561,"line":569},[559,5227,5003],{"class":572},[559,5229,577],{"class":576},[559,5231,5232],{"class":580},"Nuxt 4.14+ & Nitro Engine Ready\n",[559,5234,5235,5238,5240],{"class":561,"line":584},[559,5236,5237],{"class":572},"  title",[559,5239,577],{"class":576},[559,5241,5242],{"class":580},"The Production-Grade SaaS Template Built For\n",[559,5244,5245,5248,5250],{"class":561,"line":595},[559,5246,5247],{"class":572},"  titleHighlight",[559,5249,577],{"class":576},[559,5251,5252],{"class":580},"Nuxt Developers\n",[559,5254,5255,5258,5260],{"class":561,"line":607},[559,5256,5257],{"class":572},"  subtitle",[559,5259,577],{"class":576},[559,5261,5262],{"class":580},"Stop re-inventing authentication...\n",[559,5264,5265,5268],{"class":561,"line":618},[559,5266,5267],{"class":572},"  primaryCta",[559,5269,657],{"class":576},[559,5271,5272,5275,5277],{"class":561,"line":629},[559,5273,5274],{"class":572},"    label",[559,5276,577],{"class":576},[559,5278,5279],{"class":580},"Get the Template\n",[559,5281,5282,5284,5286],{"class":561,"line":640},[559,5283,5086],{"class":572},[559,5285,577],{"class":576},[559,5287,5111],{"class":580},[559,5289,5290,5293],{"class":561,"line":651},[559,5291,5292],{"class":572},"  secondaryCta",[559,5294,657],{"class":576},[559,5296,5297,5299,5301],{"class":561,"line":660},[559,5298,5274],{"class":572},[559,5300,577],{"class":576},[559,5302,5303],{"class":580},"View Live Demo\n",[559,5305,5306,5308,5310],{"class":561,"line":669},[559,5307,5086],{"class":572},[559,5309,577],{"class":576},[559,5311,5312],{"class":580},"\"#demo-preview\"\n",[559,5314,5315,5318],{"class":561,"line":676},[559,5316,5317],{"class":572},"  metrics",[559,5319,657],{"class":576},[559,5321,5322,5325],{"class":561,"line":684},[559,5323,5324],{"class":576},"    - ",[559,5326,5327],{"class":580},"100% Strict TypeScript\n",[559,5329,5330,5332],{"class":561,"line":692},[559,5331,5324],{"class":576},[559,5333,5334],{"class":580},"Lighthouse 99+ Performance\n",[559,5336,5337,5340],{"class":561,"line":703},[559,5338,5339],{"class":572},"  preview",[559,5341,657],{"class":576},[559,5343,5344,5347,5349],{"class":561,"line":714},[559,5345,5346],{"class":572},"    file",[559,5348,577],{"class":576},[559,5350,5351],{"class":580},"server\u002Fapi\u002Fsubscription\u002Fcheckout.post.ts\n",[559,5353,5354,5357],{"class":561,"line":725},[559,5355,5356],{"class":572},"    tabs",[559,5358,657],{"class":576},[559,5360,5361,5364],{"class":561,"line":1529},[559,5362,5363],{"class":576},"      - ",[559,5365,5366],{"class":580},"Nitro Composable\n",[559,5368,5369,5371],{"class":561,"line":1535},[559,5370,5363],{"class":576},[559,5372,666],{"class":580},[559,5374,5375,5378,5380],{"class":561,"line":1540},[559,5376,5377],{"class":572},"    image",[559,5379,577],{"class":576},[559,5381,5382],{"class":580},"https:\u002F\u002Fimages.unsplash.com\u002F...\n",[559,5384,5385,5388,5390],{"class":561,"line":1546},[559,5386,5387],{"class":572},"    alt",[559,5389,577],{"class":576},[559,5391,5392],{"class":580},"Nitro server route with Stripe checkout session\n",[559,5394,5395,5398,5400],{"class":561,"line":1551},[559,5396,5397],{"class":572},"    width",[559,5399,577],{"class":576},[559,5401,5402],{"class":603},"1600\n",[559,5404,5405,5408,5410],{"class":561,"line":1557},[559,5406,5407],{"class":572},"    height",[559,5409,577],{"class":576},[559,5411,5412],{"class":603},"900\n",[508,5414,5415,5422,5435,5443,5456,5464],{},[511,5416,5417,5421],{},[484,5418,5419],{},[503,5420,695],{}," — a small label above the title.",[511,5423,5424,5428,5429,2146,5431,5434],{},[484,5425,5426],{},[503,5427,573],{}," — the main headline. It is split into two parts: ",[503,5430,573],{},[503,5432,5433],{},"titleHighlight",". The highlighted part is rendered in a different color.",[511,5436,5437,5442],{},[484,5438,5439],{},[503,5440,5441],{},"subtitle"," — a paragraph below the headline.",[511,5444,5445,2146,5450,5455],{},[484,5446,5447],{},[503,5448,5449],{},"primaryCta",[484,5451,5452],{},[503,5453,5454],{},"secondaryCta"," — the two buttons below the subtitle.",[511,5457,5458,5463],{},[484,5459,5460],{},[503,5461,5462],{},"metrics"," — a list of short bullet points below the buttons.",[511,5465,5466,5471],{},[484,5467,5468],{},[503,5469,5470],{},"preview"," — the image below the metrics. It uses an image URL, an alt text, and width\u002Fheight for performance.",[480,5473,5474,5475,5478],{},"To customize the hero, change the text values. To change the image, replace the ",[503,5476,5477],{},"image"," URL with your own.",[495,5480,5482],{"id":5481},"section-4-social-proof","Section 4 — Social Proof",[480,5484,3692,5485,5488],{},[503,5486,5487],{},"socialProof"," section controls the row of statistics below the hero.",[550,5490,5492],{"className":552,"code":5491,"language":554,"meta":555,"style":555},"socialProof:\n  tag: Trusted By Developers\n  title: Built with Nuxt Idiomatic Principles\n  desc: Over 1,200+ indie hackers...\n  cards:\n    - title: 14ms\n      text: Average serverless TTFB response...\n    - title: 45+\n      text: Battle-tested composables...\n",[503,5493,5494,5500,5510,5519,5529,5536,5547,5557,5568],{"__ignoreMap":555},[559,5495,5496,5498],{"class":561,"line":562},[559,5497,5487],{"class":572},[559,5499,657],{"class":576},[559,5501,5502,5505,5507],{"class":561,"line":569},[559,5503,5504],{"class":572},"  tag",[559,5506,577],{"class":576},[559,5508,5509],{"class":580},"Trusted By Developers\n",[559,5511,5512,5514,5516],{"class":561,"line":584},[559,5513,5237],{"class":572},[559,5515,577],{"class":576},[559,5517,5518],{"class":580},"Built with Nuxt Idiomatic Principles\n",[559,5520,5521,5524,5526],{"class":561,"line":595},[559,5522,5523],{"class":572},"  desc",[559,5525,577],{"class":576},[559,5527,5528],{"class":580},"Over 1,200+ indie hackers...\n",[559,5530,5531,5534],{"class":561,"line":607},[559,5532,5533],{"class":572},"  cards",[559,5535,657],{"class":576},[559,5537,5538,5540,5542,5544],{"class":561,"line":618},[559,5539,5324],{"class":576},[559,5541,573],{"class":572},[559,5543,577],{"class":576},[559,5545,5546],{"class":580},"14ms\n",[559,5548,5549,5552,5554],{"class":561,"line":629},[559,5550,5551],{"class":572},"      text",[559,5553,577],{"class":576},[559,5555,5556],{"class":580},"Average serverless TTFB response...\n",[559,5558,5559,5561,5563,5565],{"class":561,"line":640},[559,5560,5324],{"class":576},[559,5562,573],{"class":572},[559,5564,577],{"class":576},[559,5566,5567],{"class":580},"45+\n",[559,5569,5570,5572,5574],{"class":561,"line":651},[559,5571,5551],{"class":572},[559,5573,577],{"class":576},[559,5575,5576],{"class":580},"Battle-tested composables...\n",[480,5578,5579,5580,5582,5583,5585],{},"Each card has a ",[503,5581,573],{}," (a short number or phrase) and a ",[503,5584,1315],{}," (a sentence explaining the number). Add or remove cards to change the row.",[495,5587,5589],{"id":5588},"section-5-features","Section 5 — Features",[480,5591,3692,5592,5595],{},[503,5593,5594],{},"features"," section controls the grid of feature cards on the homepage.",[550,5597,5599],{"className":552,"code":5598,"language":554,"meta":555,"style":555},"features:\n  tag: Engineered for Velocity\n  title: Everything You Need To Launch in One Kit\n  desc: We skipped the unnecessary dependencies...\n  items:\n    - icon: zap\n      title: Nitro Engine Architecture\n      desc: Leverage Nitro's file-based API routing...\n",[503,5600,5601,5607,5616,5625,5634,5641,5653,5663],{"__ignoreMap":555},[559,5602,5603,5605],{"class":561,"line":562},[559,5604,5594],{"class":572},[559,5606,657],{"class":576},[559,5608,5609,5611,5613],{"class":561,"line":569},[559,5610,5504],{"class":572},[559,5612,577],{"class":576},[559,5614,5615],{"class":580},"Engineered for Velocity\n",[559,5617,5618,5620,5622],{"class":561,"line":584},[559,5619,5237],{"class":572},[559,5621,577],{"class":576},[559,5623,5624],{"class":580},"Everything You Need To Launch in One Kit\n",[559,5626,5627,5629,5631],{"class":561,"line":595},[559,5628,5523],{"class":572},[559,5630,577],{"class":576},[559,5632,5633],{"class":580},"We skipped the unnecessary dependencies...\n",[559,5635,5636,5639],{"class":561,"line":607},[559,5637,5638],{"class":572},"  items",[559,5640,657],{"class":576},[559,5642,5643,5645,5648,5650],{"class":561,"line":618},[559,5644,5324],{"class":576},[559,5646,5647],{"class":572},"icon",[559,5649,577],{"class":576},[559,5651,5652],{"class":580},"zap\n",[559,5654,5655,5658,5660],{"class":561,"line":629},[559,5656,5657],{"class":572},"      title",[559,5659,577],{"class":576},[559,5661,5662],{"class":580},"Nitro Engine Architecture\n",[559,5664,5665,5668,5670],{"class":561,"line":640},[559,5666,5667],{"class":572},"      desc",[559,5669,577],{"class":576},[559,5671,5672],{"class":580},"Leverage Nitro's file-based API routing...\n",[480,5674,5675,5676,5678,5679,779,5681,5683,5684,5686,5687,5689,5690,5693],{},"Each item has an ",[503,5677,5647],{}," (a name like ",[503,5680,101],{},[503,5682,109],{},", or ",[503,5685,113],{},"), a ",[503,5688,573],{},", and a ",[503,5691,5692],{},"desc",". The icon names are mapped to SVG icons in the code. The available icons are:",[508,5695,5696,5700,5704,5708,5712,5716],{},[511,5697,5698],{},[503,5699,101],{},[511,5701,5702],{},[503,5703,105],{},[511,5705,5706],{},[503,5707,109],{},[511,5709,5710],{},[503,5711,113],{},[511,5713,5714],{},[503,5715,117],{},[511,5717,5718],{},[503,5719,121],{},[480,5721,5722],{},"To add a new feature, add a new item. To remove a feature, delete its item.",[495,5724,5726],{"id":5725},"section-6-steps","Section 6 — Steps",[480,5728,3692,5729,5732],{},[503,5730,5731],{},"steps"," section controls the three-step process section on the homepage.",[550,5734,5736],{"className":552,"code":5735,"language":554,"meta":555,"style":555},"steps:\n  tag: 3 Simple Steps\n  title: From Download To Production Deployment\n  desc: Launch your SaaS without getting stuck...\n  items:\n    - number: \"01\"\n      title: Clone & Configure\n      desc: Download the repository, run npm install...\n",[503,5737,5738,5744,5753,5762,5771,5777,5789,5798],{"__ignoreMap":555},[559,5739,5740,5742],{"class":561,"line":562},[559,5741,5731],{"class":572},[559,5743,657],{"class":576},[559,5745,5746,5748,5750],{"class":561,"line":569},[559,5747,5504],{"class":572},[559,5749,577],{"class":576},[559,5751,5752],{"class":580},"3 Simple Steps\n",[559,5754,5755,5757,5759],{"class":561,"line":584},[559,5756,5237],{"class":572},[559,5758,577],{"class":576},[559,5760,5761],{"class":580},"From Download To Production Deployment\n",[559,5763,5764,5766,5768],{"class":561,"line":595},[559,5765,5523],{"class":572},[559,5767,577],{"class":576},[559,5769,5770],{"class":580},"Launch your SaaS without getting stuck...\n",[559,5772,5773,5775],{"class":561,"line":607},[559,5774,5638],{"class":572},[559,5776,657],{"class":576},[559,5778,5779,5781,5784,5786],{"class":561,"line":618},[559,5780,5324],{"class":576},[559,5782,5783],{"class":572},"number",[559,5785,577],{"class":576},[559,5787,5788],{"class":580},"\"01\"\n",[559,5790,5791,5793,5795],{"class":561,"line":629},[559,5792,5657],{"class":572},[559,5794,577],{"class":576},[559,5796,5797],{"class":580},"Clone & Configure\n",[559,5799,5800,5802,5804],{"class":561,"line":640},[559,5801,5667],{"class":572},[559,5803,577],{"class":576},[559,5805,5806],{"class":580},"Download the repository, run npm install...\n",[480,5808,5809,5810,5812,5813,5689,5815,5817],{},"Each item has a ",[503,5811,5783],{}," (a string like \"01\"), a ",[503,5814,573],{},[503,5816,5692],{},". You can add more steps if you want.",[495,5819,5821],{"id":5820},"section-7-pricing","Section 7 — Pricing",[480,5823,3692,5824,5827],{},[503,5825,5826],{},"pricing"," section controls the pricing section on the homepage. This is different from the product collection — pricing here is independent of the products you sell. It is meant for the marketing pricing cards on the homepage.",[550,5829,5831],{"className":552,"code":5830,"language":554,"meta":555,"style":555},"pricing:\n  tag: Transparent Pricing\n  title: Invest Once. Ship Unlimited Projects.\n  desc: Lifetime updates, complete source code access...\n  popularLabel: Most Popular\n  tiers:\n    - title: Nuxas Code Only\n      badge: Code Only Edition\n      price: 59\n      priceLabel: one-time\n      excerpt: Launch your SaaS in days...\n      popular: false\n      features:\n        - Full Nuxt 4 + Nitro source repository\n        - 100% strict TypeScript\n      ctaLabel: Buy Nuxas Code Only\n      ctaType: gumroad\n      ctaUrl: https:\u002F\u002Fcreativitaz.gumroad.com\u002Fl\u002Fnuxas\n",[503,5832,5833,5839,5848,5857,5866,5876,5883,5894,5904,5914,5924,5934,5944,5951,5959,5966,5976,5986],{"__ignoreMap":555},[559,5834,5835,5837],{"class":561,"line":562},[559,5836,5826],{"class":572},[559,5838,657],{"class":576},[559,5840,5841,5843,5845],{"class":561,"line":569},[559,5842,5504],{"class":572},[559,5844,577],{"class":576},[559,5846,5847],{"class":580},"Transparent Pricing\n",[559,5849,5850,5852,5854],{"class":561,"line":584},[559,5851,5237],{"class":572},[559,5853,577],{"class":576},[559,5855,5856],{"class":580},"Invest Once. Ship Unlimited Projects.\n",[559,5858,5859,5861,5863],{"class":561,"line":595},[559,5860,5523],{"class":572},[559,5862,577],{"class":576},[559,5864,5865],{"class":580},"Lifetime updates, complete source code access...\n",[559,5867,5868,5871,5873],{"class":561,"line":607},[559,5869,5870],{"class":572},"  popularLabel",[559,5872,577],{"class":576},[559,5874,5875],{"class":580},"Most Popular\n",[559,5877,5878,5881],{"class":561,"line":618},[559,5879,5880],{"class":572},"  tiers",[559,5882,657],{"class":576},[559,5884,5885,5887,5889,5891],{"class":561,"line":629},[559,5886,5324],{"class":576},[559,5888,573],{"class":572},[559,5890,577],{"class":576},[559,5892,5893],{"class":580},"Nuxas Code Only\n",[559,5895,5896,5899,5901],{"class":561,"line":640},[559,5897,5898],{"class":572},"      badge",[559,5900,577],{"class":576},[559,5902,5903],{"class":580},"Code Only Edition\n",[559,5905,5906,5909,5911],{"class":561,"line":651},[559,5907,5908],{"class":572},"      price",[559,5910,577],{"class":576},[559,5912,5913],{"class":603},"59\n",[559,5915,5916,5919,5921],{"class":561,"line":660},[559,5917,5918],{"class":572},"      priceLabel",[559,5920,577],{"class":576},[559,5922,5923],{"class":580},"one-time\n",[559,5925,5926,5929,5931],{"class":561,"line":669},[559,5927,5928],{"class":572},"      excerpt",[559,5930,577],{"class":576},[559,5932,5933],{"class":580},"Launch your SaaS in days...\n",[559,5935,5936,5939,5941],{"class":561,"line":676},[559,5937,5938],{"class":572},"      popular",[559,5940,577],{"class":576},[559,5942,5943],{"class":603},"false\n",[559,5945,5946,5949],{"class":561,"line":684},[559,5947,5948],{"class":572},"      features",[559,5950,657],{"class":576},[559,5952,5953,5956],{"class":561,"line":692},[559,5954,5955],{"class":576},"        - ",[559,5957,5958],{"class":580},"Full Nuxt 4 + Nitro source repository\n",[559,5960,5961,5963],{"class":561,"line":703},[559,5962,5955],{"class":576},[559,5964,5965],{"class":580},"100% strict TypeScript\n",[559,5967,5968,5971,5973],{"class":561,"line":714},[559,5969,5970],{"class":572},"      ctaLabel",[559,5972,577],{"class":576},[559,5974,5975],{"class":580},"Buy Nuxas Code Only\n",[559,5977,5978,5981,5983],{"class":561,"line":725},[559,5979,5980],{"class":572},"      ctaType",[559,5982,577],{"class":576},[559,5984,5985],{"class":580},"gumroad\n",[559,5987,5988,5991,5993],{"class":561,"line":1529},[559,5989,5990],{"class":572},"      ctaUrl",[559,5992,577],{"class":576},[559,5994,5995],{"class":580},"https:\u002F\u002Fcreativitaz.gumroad.com\u002Fl\u002Fnuxas\n",[480,5997,5998],{},"Each tier has:",[508,6000,6001,6008,6014,6022,6030,6038,6046,6053,6061,6069],{},[511,6002,6003,6007],{},[484,6004,6005],{},[503,6006,573],{}," — the tier name.",[511,6009,6010,5421],{},[484,6011,6012],{},[503,6013,695],{},[511,6015,6016,6021],{},[484,6017,6018],{},[503,6019,6020],{},"price"," — a number.",[511,6023,6024,6029],{},[484,6025,6026],{},[503,6027,6028],{},"priceLabel"," — a string like \"one-time\" or \"starting from\".",[511,6031,6032,6037],{},[484,6033,6034],{},[503,6035,6036],{},"excerpt"," — a short description.",[511,6039,6040,6045],{},[484,6041,6042],{},[503,6043,6044],{},"popular"," — a boolean. If true, the tier is highlighted with a \"Most Popular\" badge.",[511,6047,6048,6052],{},[484,6049,6050],{},[503,6051,5594],{}," — a list of bullet points.",[511,6054,6055,6060],{},[484,6056,6057],{},[503,6058,6059],{},"ctaLabel"," — the button text.",[511,6062,6063,6068],{},[484,6064,6065],{},[503,6066,6067],{},"ctaType"," — the platform type (used for styling, not for the URL).",[511,6070,6071,6076],{},[484,6072,6073],{},[503,6074,6075],{},"ctaUrl"," — the URL the button points to.",[480,6078,6079],{},"To add a new tier, add a new item. To remove a tier, delete its item. The order in the list is the order on the page.",[495,6081,6083],{"id":6082},"section-8-testimonials","Section 8 — Testimonials",[480,6085,3692,6086,6089],{},[503,6087,6088],{},"testimonials"," section controls the row of quotes below the pricing section.",[550,6091,6093],{"className":552,"code":6092,"language":554,"meta":555,"style":555},"testimonials:\n  tag: Developer Reviews\n  title: Loved by Builders Across the Globe\n  desc: Here is what developers say...\n  items:\n    - quote: We deployed our AI micro-SaaS in 4 days...\n      initials: MS\n      name: Marcus Sterling\n      role: Founder, ShipVibe.io\n",[503,6094,6095,6101,6110,6119,6128,6134,6146,6156,6166],{"__ignoreMap":555},[559,6096,6097,6099],{"class":561,"line":562},[559,6098,6088],{"class":572},[559,6100,657],{"class":576},[559,6102,6103,6105,6107],{"class":561,"line":569},[559,6104,5504],{"class":572},[559,6106,577],{"class":576},[559,6108,6109],{"class":580},"Developer Reviews\n",[559,6111,6112,6114,6116],{"class":561,"line":584},[559,6113,5237],{"class":572},[559,6115,577],{"class":576},[559,6117,6118],{"class":580},"Loved by Builders Across the Globe\n",[559,6120,6121,6123,6125],{"class":561,"line":595},[559,6122,5523],{"class":572},[559,6124,577],{"class":576},[559,6126,6127],{"class":580},"Here is what developers say...\n",[559,6129,6130,6132],{"class":561,"line":607},[559,6131,5638],{"class":572},[559,6133,657],{"class":576},[559,6135,6136,6138,6141,6143],{"class":561,"line":618},[559,6137,5324],{"class":576},[559,6139,6140],{"class":572},"quote",[559,6142,577],{"class":576},[559,6144,6145],{"class":580},"We deployed our AI micro-SaaS in 4 days...\n",[559,6147,6148,6151,6153],{"class":561,"line":629},[559,6149,6150],{"class":572},"      initials",[559,6152,577],{"class":576},[559,6154,6155],{"class":580},"MS\n",[559,6157,6158,6161,6163],{"class":561,"line":640},[559,6159,6160],{"class":572},"      name",[559,6162,577],{"class":576},[559,6164,6165],{"class":580},"Marcus Sterling\n",[559,6167,6168,6171,6173],{"class":561,"line":651},[559,6169,6170],{"class":572},"      role",[559,6172,577],{"class":576},[559,6174,6175],{"class":580},"Founder, ShipVibe.io\n",[480,6177,5809,6178,6180,6181,6184,6185,4042,6187,792],{},[503,6179,6140],{}," (the testimonial text), ",[503,6182,6183],{},"initials"," (two letters for the avatar), ",[503,6186,3612],{},[503,6188,6189],{},"role",[495,6191,6193],{"id":6192},"section-9-call-to-action","Section 9 — Call to Action",[480,6195,3692,6196,6199],{},[503,6197,6198],{},"cta"," section controls the final call-to-action band at the bottom of the homepage.",[550,6201,6203],{"className":552,"code":6202,"language":554,"meta":555,"style":555},"cta:\n  title: Ready To Launch Your Nuxt SaaS?\n  desc: Download NuxtSass Starter today...\n  primaryCta:\n    label: Get NuxtSass Starter\n    to: \u002Fproducts\n  secondaryCta:\n    label: Browse All Packages\n    to: \u002Fproducts\n",[503,6204,6205,6211,6220,6229,6235,6244,6252,6258,6267],{"__ignoreMap":555},[559,6206,6207,6209],{"class":561,"line":562},[559,6208,6198],{"class":572},[559,6210,657],{"class":576},[559,6212,6213,6215,6217],{"class":561,"line":569},[559,6214,5237],{"class":572},[559,6216,577],{"class":576},[559,6218,6219],{"class":580},"Ready To Launch Your Nuxt SaaS?\n",[559,6221,6222,6224,6226],{"class":561,"line":584},[559,6223,5523],{"class":572},[559,6225,577],{"class":576},[559,6227,6228],{"class":580},"Download NuxtSass Starter today...\n",[559,6230,6231,6233],{"class":561,"line":595},[559,6232,5267],{"class":572},[559,6234,657],{"class":576},[559,6236,6237,6239,6241],{"class":561,"line":607},[559,6238,5274],{"class":572},[559,6240,577],{"class":576},[559,6242,6243],{"class":580},"Get NuxtSass Starter\n",[559,6245,6246,6248,6250],{"class":561,"line":618},[559,6247,5086],{"class":572},[559,6249,577],{"class":576},[559,6251,5111],{"class":580},[559,6253,6254,6256],{"class":561,"line":629},[559,6255,5292],{"class":572},[559,6257,657],{"class":576},[559,6259,6260,6262,6264],{"class":561,"line":640},[559,6261,5274],{"class":572},[559,6263,577],{"class":576},[559,6265,6266],{"class":580},"Browse All Packages\n",[559,6268,6269,6271,6273],{"class":561,"line":651},[559,6270,5086],{"class":572},[559,6272,577],{"class":576},[559,6274,5111],{"class":580},[480,6276,6277,6278,6280,6281,6283],{},"It has a ",[503,6279,573],{},", a ",[503,6282,5692],{},", and two buttons.",[495,6285,6287],{"id":6286},"section-10-footer","Section 10 — Footer",[480,6289,3692,6290,6293],{},[503,6291,6292],{},"footer"," section controls the footer that appears on every page.",[550,6295,6297],{"className":552,"code":6296,"language":554,"meta":555,"style":555},"footer:\n  description: The premium open-standard template kit...\n  columns:\n    - title: Products\n      links:\n        - label: Nuxas Code Only\n          to: \u002Fproducts\u002Fnuxas-code\n  socials:\n    - label: GitHub\n      href: https:\u002F\u002Fgithub.com\u002Fmesinkasir\n      icon: github\n  copyright: © 2026 NuxtSass Starter...\n",[503,6298,6299,6305,6314,6321,6331,6338,6348,6358,6365,6376,6386,6396],{"__ignoreMap":555},[559,6300,6301,6303],{"class":561,"line":562},[559,6302,6292],{"class":572},[559,6304,657],{"class":576},[559,6306,6307,6309,6311],{"class":561,"line":569},[559,6308,3572],{"class":572},[559,6310,577],{"class":576},[559,6312,6313],{"class":580},"The premium open-standard template kit...\n",[559,6315,6316,6319],{"class":561,"line":584},[559,6317,6318],{"class":572},"  columns",[559,6320,657],{"class":576},[559,6322,6323,6325,6327,6329],{"class":561,"line":595},[559,6324,5324],{"class":576},[559,6326,573],{"class":572},[559,6328,577],{"class":576},[559,6330,5102],{"class":580},[559,6332,6333,6336],{"class":561,"line":607},[559,6334,6335],{"class":572},"      links",[559,6337,657],{"class":576},[559,6339,6340,6342,6344,6346],{"class":561,"line":618},[559,6341,5955],{"class":576},[559,6343,5076],{"class":572},[559,6345,577],{"class":576},[559,6347,5893],{"class":580},[559,6349,6350,6353,6355],{"class":561,"line":629},[559,6351,6352],{"class":572},"          to",[559,6354,577],{"class":576},[559,6356,6357],{"class":580},"\u002Fproducts\u002Fnuxas-code\n",[559,6359,6360,6363],{"class":561,"line":640},[559,6361,6362],{"class":572},"  socials",[559,6364,657],{"class":576},[559,6366,6367,6369,6371,6373],{"class":561,"line":651},[559,6368,5324],{"class":576},[559,6370,5076],{"class":572},[559,6372,577],{"class":576},[559,6374,6375],{"class":580},"GitHub\n",[559,6377,6378,6381,6383],{"class":561,"line":660},[559,6379,6380],{"class":572},"      href",[559,6382,577],{"class":576},[559,6384,6385],{"class":580},"https:\u002F\u002Fgithub.com\u002Fmesinkasir\n",[559,6387,6388,6391,6393],{"class":561,"line":669},[559,6389,6390],{"class":572},"      icon",[559,6392,577],{"class":576},[559,6394,6395],{"class":580},"github\n",[559,6397,6398,6401,6403],{"class":561,"line":676},[559,6399,6400],{"class":572},"  copyright",[559,6402,577],{"class":576},[559,6404,6405],{"class":580},"© 2026 NuxtSass Starter...\n",[508,6407,6408,6415,6423,6431],{},[511,6409,6410,6414],{},[484,6411,6412],{},[503,6413,587],{}," — a paragraph below the brand name.",[511,6416,6417,6422],{},[484,6418,6419],{},[503,6420,6421],{},"columns"," — a list of columns, each with a title and a list of links.",[511,6424,6425,6430],{},[484,6426,6427],{},[503,6428,6429],{},"socials"," — a list of social links, each with a label, an href, and an icon (github, twitter, or discord).",[511,6432,6433,6438],{},[484,6434,6435],{},[503,6436,6437],{},"copyright"," — the copyright text at the bottom.",[480,6440,6441,6442,6444,6445,792],{},"To add a new column, add a new item to ",[503,6443,6421],{},". To add a new social link, add a new item to ",[503,6446,6429],{},[495,6448,6450],{"id":6449},"section-11-ui-labels","Section 11 — UI Labels",[480,6452,3692,6453,6456],{},[503,6454,6455],{},"ui"," section controls the small text labels used throughout the site, such as button labels.",[550,6458,6460],{"className":552,"code":6459,"language":554,"meta":555,"style":555},"ui:\n  readMore: Read Article\n  viewDetails: View Details\n  viewKit: View Kit\n  buyNow: Buy Now\n  previous: Previous\n  next: Next\n  showing: Showing\n  of: of\n  items: items\n  prevArticle: Previous Article\n  nextArticle: Next Article\n",[503,6461,6462,6468,6478,6488,6498,6508,6518,6528,6538,6548,6557,6567],{"__ignoreMap":555},[559,6463,6464,6466],{"class":561,"line":562},[559,6465,6455],{"class":572},[559,6467,657],{"class":576},[559,6469,6470,6473,6475],{"class":561,"line":569},[559,6471,6472],{"class":572},"  readMore",[559,6474,577],{"class":576},[559,6476,6477],{"class":580},"Read Article\n",[559,6479,6480,6483,6485],{"class":561,"line":584},[559,6481,6482],{"class":572},"  viewDetails",[559,6484,577],{"class":576},[559,6486,6487],{"class":580},"View Details\n",[559,6489,6490,6493,6495],{"class":561,"line":595},[559,6491,6492],{"class":572},"  viewKit",[559,6494,577],{"class":576},[559,6496,6497],{"class":580},"View Kit\n",[559,6499,6500,6503,6505],{"class":561,"line":607},[559,6501,6502],{"class":572},"  buyNow",[559,6504,577],{"class":576},[559,6506,6507],{"class":580},"Buy Now\n",[559,6509,6510,6513,6515],{"class":561,"line":618},[559,6511,6512],{"class":572},"  previous",[559,6514,577],{"class":576},[559,6516,6517],{"class":580},"Previous\n",[559,6519,6520,6523,6525],{"class":561,"line":629},[559,6521,6522],{"class":572},"  next",[559,6524,577],{"class":576},[559,6526,6527],{"class":580},"Next\n",[559,6529,6530,6533,6535],{"class":561,"line":640},[559,6531,6532],{"class":572},"  showing",[559,6534,577],{"class":576},[559,6536,6537],{"class":580},"Showing\n",[559,6539,6540,6543,6545],{"class":561,"line":651},[559,6541,6542],{"class":572},"  of",[559,6544,577],{"class":576},[559,6546,6547],{"class":580},"of\n",[559,6549,6550,6552,6554],{"class":561,"line":660},[559,6551,5638],{"class":572},[559,6553,577],{"class":576},[559,6555,6556],{"class":580},"items\n",[559,6558,6559,6562,6564],{"class":561,"line":669},[559,6560,6561],{"class":572},"  prevArticle",[559,6563,577],{"class":576},[559,6565,6566],{"class":580},"Previous Article\n",[559,6568,6569,6572,6574],{"class":561,"line":676},[559,6570,6571],{"class":572},"  nextArticle",[559,6573,577],{"class":576},[559,6575,6576],{"class":580},"Next Article\n",[480,6578,6579,6580,779,6583,4042,6586,6589],{},"These labels are used in components like ",[503,6581,6582],{},"ProductCard",[503,6584,6585],{},"BlogCard",[503,6587,6588],{},"AppPagination",". If you want to translate your site to another language, this is where you start.",[495,6591,6593],{"id":6592},"saving-your-changes","Saving Your Changes",[480,6595,6596,6597,4946,6599,6601],{},"If you are editing through the CMS, click ",[484,6598,1252],{},[503,6600,4174],{}," immediately.",[480,6603,6604,6605,6607,6608,6601],{},"If you are editing through VS Code, press ",[484,6606,1299],{},". The change is written to ",[503,6609,4174],{},[480,6611,6612],{},"Either way, the Nuxt development server reloads the page automatically. Refresh your browser to see the change.",[495,6614,1704],{"id":1703},[480,6616,6617,6618,6620],{},"In the next chapter, we will edit the ",[484,6619,2068],{}," — the files that control the blog list and product list pages. These are smaller than the global site config, but just as important.",[480,6622,1714],{},[1716,6624,6625],{},"html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":555,"searchDepth":584,"depth":584,"links":6627},[6628],{"id":4877,"depth":569,"text":4872,"children":6629},[6630,6631,6635,6636,6637,6638,6639,6640,6641,6642,6643,6644,6645,6646,6647],{"id":4892,"depth":584,"text":4893},{"id":4915,"depth":584,"text":4916,"children":6632},[6633,6634],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":4971,"depth":584,"text":4972},{"id":5051,"depth":584,"text":5052},{"id":5205,"depth":584,"text":5206},{"id":5481,"depth":584,"text":5482},{"id":5588,"depth":584,"text":5589},{"id":5725,"depth":584,"text":5726},{"id":5820,"depth":584,"text":5821},{"id":6082,"depth":584,"text":6083},{"id":6192,"depth":584,"text":6193},{"id":6286,"depth":584,"text":6287},{"id":6449,"depth":584,"text":6450},{"id":6592,"depth":584,"text":6593},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to editing the global site configuration in Nuxas. Learn how to update your navbar, footer, homepage hero, social proof, features, steps, pricing, testimonials, and call-to-action sections through Decap CMS or by editing site.yml directly.",{},"\u002Fdocs\u002F08-global-site",{"title":4872,"description":6648},"docs\u002F08-global-site","GYL46Zr6Z6hKioWcd3fUUJzXA-rgWyHBEJCMcXWF3UQ",{"id":6655,"title":6656,"badge":471,"body":6657,"description":7236,"extension":1763,"meta":7237,"navigation":167,"order":651,"path":7238,"section":6,"seo":7239,"stem":7240,"__hash__":7241},"docs\u002Fdocs\u002F09-page-configs.md","Page Configs — Blog and Product Listing",{"type":473,"value":6658,"toc":7222},[6659,6662,6668,6676,6679,6701,6704,6708,6711,6713,6727,6733,6735,6745,6748,6752,6760,6843,6846,6922,6926,6933,7015,7018,7090,7094,7101,7114,7129,7155,7161,7165,7170,7176,7182,7188,7190,7194,7198,7206,7208,7214,7217,7219],[476,6660,6656],{"id":6661},"page-configs-blog-and-product-listing",[480,6663,6664,6665,6667],{},"In the previous chapter, we edited the Global Site Config — the file that controls the navbar, footer, and homepage. Now we will move to the ",[484,6666,2068],{},", which control the blog list page and the product list page.",[480,6669,6670,6671,2146,6673,6675],{},"Unlike the Global Site Config, which affects every page, the Page Configs only affect two specific pages: ",[503,6672,31],{},[503,6674,28],{},". They control the page title, the heading, the intro text, and the number of items shown per page.",[480,6677,6678],{},"There are two Page Configs:",[1150,6680,6681,6692],{},[511,6682,6683,6688,6689,6691],{},[484,6684,6685],{},[503,6686,6687],{},"content\u002Fdata\u002Fblog.yml"," — controls the ",[503,6690,31],{}," page.",[511,6693,6694,6688,6699,6691],{},[484,6695,6696],{},[503,6697,6698],{},"content\u002Fdata\u002Fproduct.yml",[503,6700,28],{},[480,6702,6703],{},"This chapter explains what each field does and how to edit it.",[495,6705,6707],{"id":6706},"how-to-edit-page-configs","How to Edit Page Configs",[480,6709,6710],{},"As with the Global Site Config, the way you edit depends on your edition.",[732,6712,1148],{"id":1147},[480,6714,1154,6715,4929,6717,6719,6720,2146,6723,6726],{},[503,6716,1157],{},[484,6718,2068],{},". You will see two entries: ",[484,6721,6722],{},"Products Page Config",[484,6724,6725],{},"Blog Page Config",". Click either to edit it.",[480,6728,6729,6730,6732],{},"The form shows every field in the corresponding YAML file. Edit any value, then click ",[484,6731,1252],{}," in the top right corner. The change is written to the file, and the Nuxt development server reloads the page automatically.",[732,6734,1265],{"id":1264},[480,6736,1154,6737,823,6739,6741,6742,6744],{},[503,6738,6687],{},[503,6740,6698],{}," in VS Code. Edit any value, then save with ",[484,6743,1299],{},". The change is written to the file, and the Nuxt development server reloads the page automatically.",[480,6746,6747],{},"The rest of this chapter explains what each field does. You can follow along in either the CMS or VS Code.",[495,6749,6751],{"id":6750},"part-1-blog-page-config","Part 1 — Blog Page Config",[480,6753,6754,6755,6757,6758,6691],{},"The blog page config lives in ",[503,6756,6687],{},". It controls the ",[503,6759,31],{},[550,6761,6763],{"className":552,"code":6762,"language":554,"meta":555,"style":555},"title: Engineering Blog — NuxtSass Starter\ndescription: Technical deep-dives, SEO strategies, and architectural best practices for Nuxt 4 developers building high-converting SaaS products.\ntag: Engineering Log\nheading: Nuxt Architecture & SaaS Strategy\nintro: In-depth technical guides, benchmark comparisons, and conversion-focused insights for building fast, SEO-optimized web applications with Vue and Nuxt.\npageSize: 4\nsortBy: date\nsortOrder: desc\n",[503,6764,6765,6774,6783,6793,6803,6813,6823,6833],{"__ignoreMap":555},[559,6766,6767,6769,6771],{"class":561,"line":562},[559,6768,573],{"class":572},[559,6770,577],{"class":576},[559,6772,6773],{"class":580},"Engineering Blog — NuxtSass Starter\n",[559,6775,6776,6778,6780],{"class":561,"line":569},[559,6777,587],{"class":572},[559,6779,577],{"class":576},[559,6781,6782],{"class":580},"Technical deep-dives, SEO strategies, and architectural best practices for Nuxt 4 developers building high-converting SaaS products.\n",[559,6784,6785,6788,6790],{"class":561,"line":584},[559,6786,6787],{"class":572},"tag",[559,6789,577],{"class":576},[559,6791,6792],{"class":580},"Engineering Log\n",[559,6794,6795,6798,6800],{"class":561,"line":595},[559,6796,6797],{"class":572},"heading",[559,6799,577],{"class":576},[559,6801,6802],{"class":580},"Nuxt Architecture & SaaS Strategy\n",[559,6804,6805,6808,6810],{"class":561,"line":607},[559,6806,6807],{"class":572},"intro",[559,6809,577],{"class":576},[559,6811,6812],{"class":580},"In-depth technical guides, benchmark comparisons, and conversion-focused insights for building fast, SEO-optimized web applications with Vue and Nuxt.\n",[559,6814,6815,6818,6820],{"class":561,"line":618},[559,6816,6817],{"class":572},"pageSize",[559,6819,577],{"class":576},[559,6821,6822],{"class":603},"4\n",[559,6824,6825,6828,6830],{"class":561,"line":629},[559,6826,6827],{"class":572},"sortBy",[559,6829,577],{"class":576},[559,6831,6832],{"class":580},"date\n",[559,6834,6835,6838,6840],{"class":561,"line":640},[559,6836,6837],{"class":572},"sortOrder",[559,6839,577],{"class":576},[559,6841,6842],{"class":580},"desc\n",[480,6844,6845],{},"Here is what each field does:",[508,6847,6848,6855,6862,6869,6878,6885,6892,6905],{},[511,6849,6850,6854],{},[484,6851,6852],{},[503,6853,573],{}," — the browser tab title and the SEO title. It appears in search engine results and social media previews. Keep it under 60 characters for best results.",[511,6856,6857,6861],{},[484,6858,6859],{},[503,6860,587],{}," — the SEO description. It appears in search engine results and social media previews. Keep it between 120 and 160 characters.",[511,6863,6864,6868],{},[484,6865,6866],{},[503,6867,6787],{}," — a small label that appears above the heading. In the default config, it is \"Engineering Log\". Change it to something like \"Latest Articles\" or \"From the Team\".",[511,6870,6871,6875,6876,792],{},[484,6872,6873],{},[503,6874,6797],{}," — the main heading of the page, rendered as an ",[503,6877,739],{},[511,6879,6880,6884],{},[484,6881,6882],{},[503,6883,6807],{}," — a paragraph below the heading, explaining what the page is about.",[511,6886,6887,6891],{},[484,6888,6889],{},[503,6890,6817],{}," — how many blog posts to show per page. The default is 4. Increase it to show more posts, or decrease it to show fewer.",[511,6893,6894,6898,6899,6901,6902,6904],{},[484,6895,6896],{},[503,6897,6827],{}," — which field to sort by. The default is ",[503,6900,598],{},", which sorts by publication date. You can also sort by ",[503,6903,573],{}," if you want alphabetical order.",[511,6906,6907,6911,6912,6915,6916,6918,6919,6921],{},[484,6908,6909],{},[503,6910,6837],{}," — ",[503,6913,6914],{},"asc"," for ascending, ",[503,6917,5692],{}," for descending. The default is ",[503,6920,5692],{},", which shows the newest posts first.",[495,6923,6925],{"id":6924},"part-2-product-page-config","Part 2 — Product Page Config",[480,6927,6928,6929,6757,6931,6691],{},"The product page config lives in ",[503,6930,6698],{},[503,6932,28],{},[550,6934,6936],{"className":552,"code":6935,"language":554,"meta":555,"style":555},"title: Nuxt Templates & SaaS Starters — NuxtSass Starter\ndescription: Browse production-ready Nuxt 4 themes: code-only starter, Decap CMS edition, and fully custom web app engineering.\ntag: Production Toolkits\nheading: Nuxt Templates & SaaS Starters\nintro: Explore our curated selection of pre-architected Nuxt templates. Designed for high performance, edge compatibility, and rapid deployment — with full source ownership and no recurring fees.\npageSize: 6\nsortBy: order\nsortOrder: asc\n",[503,6937,6938,6947,6961,6970,6979,6988,6997,7006],{"__ignoreMap":555},[559,6939,6940,6942,6944],{"class":561,"line":562},[559,6941,573],{"class":572},[559,6943,577],{"class":576},[559,6945,6946],{"class":580},"Nuxt Templates & SaaS Starters — NuxtSass Starter\n",[559,6948,6949,6951,6953,6956,6958],{"class":561,"line":569},[559,6950,587],{"class":572},[559,6952,577],{"class":576},[559,6954,6955],{"class":572},"Browse production-ready Nuxt 4 themes",[559,6957,577],{"class":576},[559,6959,6960],{"class":580},"code-only starter, Decap CMS edition, and fully custom web app engineering.\n",[559,6962,6963,6965,6967],{"class":561,"line":584},[559,6964,6787],{"class":572},[559,6966,577],{"class":576},[559,6968,6969],{"class":580},"Production Toolkits\n",[559,6971,6972,6974,6976],{"class":561,"line":595},[559,6973,6797],{"class":572},[559,6975,577],{"class":576},[559,6977,6978],{"class":580},"Nuxt Templates & SaaS Starters\n",[559,6980,6981,6983,6985],{"class":561,"line":607},[559,6982,6807],{"class":572},[559,6984,577],{"class":576},[559,6986,6987],{"class":580},"Explore our curated selection of pre-architected Nuxt templates. Designed for high performance, edge compatibility, and rapid deployment — with full source ownership and no recurring fees.\n",[559,6989,6990,6992,6994],{"class":561,"line":618},[559,6991,6817],{"class":572},[559,6993,577],{"class":576},[559,6995,6996],{"class":603},"6\n",[559,6998,6999,7001,7003],{"class":561,"line":629},[559,7000,6827],{"class":572},[559,7002,577],{"class":576},[559,7004,7005],{"class":580},"order\n",[559,7007,7008,7010,7012],{"class":561,"line":640},[559,7009,6837],{"class":572},[559,7011,577],{"class":576},[559,7013,7014],{"class":580},"asc\n",[480,7016,7017],{},"The fields are the same as the blog page config:",[508,7019,7020,7027,7034,7041,7048,7055,7062,7079],{},[511,7021,7022,7026],{},[484,7023,7024],{},[503,7025,573],{}," — the browser tab title and SEO title.",[511,7028,7029,7033],{},[484,7030,7031],{},[503,7032,587],{}," — the SEO description.",[511,7035,7036,7040],{},[484,7037,7038],{},[503,7039,6787],{}," — a small label above the heading.",[511,7042,7043,7047],{},[484,7044,7045],{},[503,7046,6797],{}," — the main heading of the page.",[511,7049,7050,7054],{},[484,7051,7052],{},[503,7053,6807],{}," — a paragraph below the heading.",[511,7056,7057,7061],{},[484,7058,7059],{},[503,7060,6817],{}," — how many products to show per page. The default is 6.",[511,7063,7064,6898,7068,7071,7072,7074,7075,823,7077,792],{},[484,7065,7066],{},[503,7067,6827],{},[503,7069,7070],{},"order",", which uses the ",[503,7073,7070],{}," field in each product file. You can also sort by ",[503,7076,6020],{},[503,7078,573],{},[511,7080,7081,6911,7085,6915,7087,7089],{},[484,7082,7083],{},[503,7084,6837],{},[503,7086,6914],{},[503,7088,5692],{}," for descending.",[495,7091,7093],{"id":7092},"understanding-the-sortby-and-sortorder-fields","Understanding the sortBy and sortOrder Fields",[480,7095,3692,7096,2146,7098,7100],{},[503,7097,6827],{},[503,7099,6837],{}," fields work together to determine the order of items on the page.",[480,7102,7103,7104,2146,7107,7110,7111,7113],{},"For blog posts, the default is ",[503,7105,7106],{},"sortBy: date",[503,7108,7109],{},"sortOrder: desc",". This means: sort by the ",[503,7112,598],{}," field, in descending order. The newest post appears first.",[480,7115,7116,7117,2146,7120,7110,7123,7125,7126,7128],{},"For products, the default is ",[503,7118,7119],{},"sortBy: order",[503,7121,7122],{},"sortOrder: asc",[503,7124,7070],{}," field, in ascending order. Products with a lower ",[503,7127,7070],{}," value appear first.",[480,7130,7131,7132,7134,7135,7138,7139,4042,7142,7138,7145,7148,7149,7151,7152,7154],{},"Each product file has an ",[503,7133,7070],{}," field. For example, ",[503,7136,7137],{},"nuxas-code.md"," has ",[503,7140,7141],{},"order: 1",[503,7143,7144],{},"nuxas-cms.md",[503,7146,7147],{},"order: 2",". This ensures that ",[503,7150,895],{}," appears before ",[503,7153,2804],{}," on the products page.",[480,7156,7157,7158,7160],{},"If you add a new product and want it to appear first, give it a lower ",[503,7159,7070],{}," value than the existing products.",[495,7162,7164],{"id":7163},"understanding-the-pagesize-field","Understanding the pageSize Field",[480,7166,3692,7167,7169],{},[503,7168,6817],{}," field determines how many items are shown on each page of the listing. The remaining items are paginated — accessible through the pagination controls at the bottom of the page.",[480,7171,7172,7173,7175],{},"For blog posts, the default ",[503,7174,6817],{}," is 4. If you have 12 blog posts, the blog list will show 4 posts per page, with 3 pages total.",[480,7177,7178,7179,7181],{},"For products, the default ",[503,7180,6817],{}," is 6. If you have 10 products, the product list will show 6 products per page, with 2 pages total.",[480,7183,7184,7185,7187],{},"The pagination controls are automatically generated by the ",[503,7186,6588],{}," component. You do not need to configure anything else.",[495,7189,6593],{"id":6592},[480,7191,6596,7192,1170],{},[484,7193,1252],{},[480,7195,6604,7196,792],{},[484,7197,1299],{},[480,7199,7200,7201,823,7203,7205],{},"Either way, the change is written to the file, and the Nuxt development server reloads the page automatically. Refresh your browser and visit ",[503,7202,31],{},[503,7204,28],{}," to see the change.",[495,7207,1704],{"id":1703},[480,7209,7210,7211,7213],{},"In the next chapter, we will set up the ",[484,7212,2074],{}," with Formspree. This is the page where visitors can send you messages. We will walk you through creating a Formspree account, getting your form ID, and connecting it to the contact form in Nuxas.",[480,7215,7216],{},"If you do not plan to use the contact form, you can still read the chapter for completeness. The form is optional, and you can remove it from the contact page if you prefer.",[480,7218,1714],{},[1716,7220,7221],{},"html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#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 .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);}",{"title":555,"searchDepth":584,"depth":584,"links":7223},[7224],{"id":6661,"depth":569,"text":6656,"children":7225},[7226,7230,7231,7232,7233,7234,7235],{"id":6706,"depth":584,"text":6707,"children":7227},[7228,7229],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":6750,"depth":584,"text":6751},{"id":6924,"depth":584,"text":6925},{"id":7092,"depth":584,"text":7093},{"id":7163,"depth":584,"text":7164},{"id":6592,"depth":584,"text":6593},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to configuring the blog list page and the product list page in Nuxas. Learn how to set page titles, headings, intros, and page sizes through Decap CMS or by editing YAML files directly.",{},"\u002Fdocs\u002F09-page-configs",{"title":6656,"description":7236},"docs\u002F09-page-configs","lXgjTqigb-LRdU82hKdTHATXqlN5ZIMr_RF8j7vMhPo",{"id":7243,"title":7244,"badge":471,"body":7245,"description":7984,"extension":1763,"meta":7985,"navigation":167,"order":660,"path":7986,"section":6,"seo":7987,"stem":7988,"__hash__":7989},"docs\u002Fdocs\u002F10-contact.md","Setting Up the Contact Page with Formspree",{"type":473,"value":7246,"toc":7962},[7247,7250,7256,7263,7266,7270,7273,7276,7296,7299,7303,7306,7328,7331,7335,7338,7366,7373,7379,7390,7393,7397,7400,7402,7436,7441,7443,7457,7478,7485,7505,7511,7514,7518,7521,7568,7571,7574,7578,7584,7602,7605,7609,7616,7624,7630,7710,7713,7768,7774,7778,7783,7831,7834,7878,7882,7889,7892,7896,7900,7913,7917,7920,7931,7935,7938,7949,7951,7958,7960],[476,7248,7244],{"id":7249},"setting-up-the-contact-page-with-formspree",[480,7251,7252,7253,7255],{},"In the previous chapter, we configured the blog and product listing pages. Now we will set up the ",[484,7254,2074],{}," — the page where visitors can send you messages directly.",[480,7257,7258,7259,7262],{},"Nuxas uses ",[484,7260,7261],{},"Formspree"," to handle contact form submissions. Formspree is a free service that receives form data and forwards it to your email inbox. It requires no backend, no database, and no server maintenance. You create a form on Formspree, get a unique ID, and paste that ID into Nuxas. That is all.",[480,7264,7265],{},"This chapter walks you through the entire process, from creating a Formspree account to testing the form on your local site.",[495,7267,7269],{"id":7268},"why-formspree","Why Formspree?",[480,7271,7272],{},"There are many ways to handle contact forms. Some developers build a custom backend with Node.js or PHP. Others use a service like Netlify Forms, Google Forms, or Formspree.",[480,7274,7275],{},"Formspree is the best choice for Nuxas for three reasons:",[1150,7277,7278,7284,7290],{},[511,7279,7280,7283],{},[484,7281,7282],{},"No backend required."," Formspree handles everything on their servers. You only need to add an ID to your config.",[511,7285,7286,7289],{},[484,7287,7288],{},"Free tier is generous."," The free plan allows up to 50 submissions per month, which is enough for most small to medium sites.",[511,7291,7292,7295],{},[484,7293,7294],{},"Spam protection built in."," Formspree includes honeypot fields and optional reCAPTCHA to block bots.",[480,7297,7298],{},"If you ever outgrow the free tier, Formspree offers paid plans with higher limits and additional features. But for most Nuxas users, the free tier is more than enough.",[495,7300,7302],{"id":7301},"part-1-creating-a-formspree-account","Part 1 — Creating a Formspree Account",[480,7304,7305],{},"Before you can get a form ID, you need an account.",[1150,7307,7308,7314,7317,7322,7325],{},[511,7309,2524,7310,792],{},[2267,7311,7312],{"href":7312,"rel":7313},"https:\u002F\u002Fformspree.io\u002Fregister",[2270],[511,7315,7316],{},"Fill in your name, email address, and a password.",[511,7318,1166,7319,792],{},[484,7320,7321],{},"Sign Up",[511,7323,7324],{},"Check your email inbox. Formspree will send you a verification email. Click the link in that email to verify your account.",[511,7326,7327],{},"Once verified, log in to the Formspree dashboard.",[480,7329,7330],{},"You will land on the dashboard, which shows a list of your forms (initially empty). If you see a \"New Form\" button or a plus sign, you are in the right place.",[495,7332,7334],{"id":7333},"part-2-creating-your-first-form","Part 2 — Creating Your First Form",[480,7336,7337],{},"Now let us create the form that will receive contact messages from Nuxas.",[1150,7339,7340,7351,7358,7361],{},[511,7341,7342,7343,7346,7347,7350],{},"In the Formspree dashboard, click the ",[484,7344,7345],{},"plus sign"," in the top left corner, then click ",[484,7348,7349],{},"New Form"," .",[511,7352,7353,7354,7357],{},"Formspree will ask for a form name. Type something like ",[503,7355,7356],{},"Nuxas Contact Form",". This name is for your own reference; it does not appear on the site.",[511,7359,7360],{},"Formspree will also ask for the email address where submissions should be sent. Use the email address where you want to receive contact messages. This can be the same as your account email, or a different one.",[511,7362,1166,7363,792],{},[484,7364,7365],{},"Create Form",[480,7367,7368,7369,7372],{},"Formspree will create the form and take you to its settings page. You will see a section labeled ",[484,7370,7371],{},"\"Your form's endpoint is:\""," followed by a URL that looks like this:",[550,7374,7377],{"className":7375,"code":7376,"language":1315},[1313],"https:\u002F\u002Fformspree.io\u002Ff\u002Fxjvdzdbo\n",[503,7378,7376],{"__ignoreMap":555},[480,7380,7381,7382,7385,7386,7389],{},"The last part of that URL — ",[503,7383,7384],{},"xjvdzdbo"," in this example — is your ",[484,7387,7388],{},"form ID"," (also called a \"hash ID\" by Formspree) .",[480,7391,7392],{},"Copy that ID. You will need it in the next step.",[495,7394,7396],{"id":7395},"part-3-adding-the-formspree-id-to-nuxas","Part 3 — Adding the Formspree ID to Nuxas",[480,7398,7399],{},"Now that you have your Formspree ID, you need to add it to Nuxas. The way you do this depends on your edition.",[732,7401,1148],{"id":1147},[1150,7403,7404,7408,7414,7423,7432],{},[511,7405,2524,7406,792],{},[503,7407,1157],{},[511,7409,1160,7410,2675,7412,792],{},[484,7411,4704],{},[484,7413,2062],{},[511,7415,7416,7417,7419,7420,792],{},"Scroll down to the ",[484,7418,33],{}," section. You will see a field labeled ",[484,7421,7422],{},"Contact Formspree ID",[511,7424,7425,7426,7429,7430,792],{},"Paste your Formspree ID into that field. For example, if your endpoint is ",[503,7427,7428],{},"https:\u002F\u002Fformspree.io\u002Ff\u002Fxjvdzdbo",", paste ",[503,7431,7384],{},[511,7433,1166,7434,1170],{},[484,7435,1252],{},[480,7437,7438,7439,6601],{},"The change is written to ",[503,7440,4902],{},[732,7442,1265],{"id":1264},[1150,7444,7445,7450],{},[511,7446,1154,7447,7449],{},[503,7448,4902],{}," in VS Code.",[511,7451,7452,7453,7456],{},"Find the ",[503,7454,7455],{},"contact"," section near the bottom of the file:",[550,7458,7460],{"className":552,"code":7459,"language":554,"meta":555,"style":555},"contact:\n  formspreeId: YOUR_FORMSPREE_ID\n",[503,7461,7462,7468],{"__ignoreMap":555},[559,7463,7464,7466],{"class":561,"line":562},[559,7465,7455],{"class":572},[559,7467,657],{"class":576},[559,7469,7470,7473,7475],{"class":561,"line":569},[559,7471,7472],{"class":572},"  formspreeId",[559,7474,577],{"class":576},[559,7476,7477],{"class":580},"YOUR_FORMSPREE_ID\n",[1150,7479,7480],{"start":584},[511,7481,4806,7482,7484],{},[503,7483,225],{}," with your actual Formspree ID. For example:",[550,7486,7488],{"className":552,"code":7487,"language":554,"meta":555,"style":555},"contact:\n  formspreeId: xjvdzdbo\n",[503,7489,7490,7496],{"__ignoreMap":555},[559,7491,7492,7494],{"class":561,"line":562},[559,7493,7455],{"class":572},[559,7495,657],{"class":576},[559,7497,7498,7500,7502],{"class":561,"line":569},[559,7499,7472],{"class":572},[559,7501,577],{"class":576},[559,7503,7504],{"class":580},"xjvdzdbo\n",[1150,7506,7507],{"start":595},[511,7508,3682,7509,792],{},[484,7510,1299],{},[480,7512,7513],{},"The Nuxt development server will reload the page automatically.",[495,7515,7517],{"id":7516},"part-4-testing-the-contact-form","Part 4 — Testing the Contact Form",[480,7519,7520],{},"Now that your Formspree ID is configured, let us test the form.",[1150,7522,7523,7528,7531,7563],{},[511,7524,2524,7525,792],{},[503,7526,7527],{},"http:\u002F\u002Flocalhost:3000\u002Fcontact",[511,7529,7530],{},"Scroll down to the contact form. You should see fields for Full Name, Work Email Address, Inquiry Subject, and Your Message.",[511,7532,7533,7534],{},"Fill in the form with test data. For example:\n",[508,7535,7536,7542,7551,7557],{},[511,7537,7538,7541],{},[484,7539,7540],{},"Full Name:"," Test User",[511,7543,7544,2265,7547],{},[484,7545,7546],{},"Work Email Address:",[2267,7548,7550],{"href":7549},"mailto:test@example.com","test@example.com",[511,7552,7553,7556],{},[484,7554,7555],{},"Inquiry Subject:"," Testing the contact form",[511,7558,7559,7562],{},[484,7560,7561],{},"Your Message:"," This is a test message to verify that Formspree is working correctly.",[511,7564,1166,7565,792],{},[484,7566,7567],{},"Send Message",[480,7569,7570],{},"If everything is configured correctly, you will see a success message: \"Thank you! Your message has been sent. We will reply within 24 hours.\"",[480,7572,7573],{},"Now check the email inbox you configured in Formspree. You should receive an email with the test submission data. If you do not see it, check your spam folder.",[495,7575,7577],{"id":7576},"understanding-how-the-form-works","Understanding How the Form Works",[480,7579,7580,7581,7583],{},"The contact form in Nuxas is a client-side form. When you click ",[484,7582,7567],{},", the following happens:",[1150,7585,7586,7589,7596,7599],{},[511,7587,7588],{},"The form data is validated in the browser. If any field is empty or invalid, an error message appears and the form is not submitted.",[511,7590,7591,7592,7595],{},"If validation passes, the form data is sent to Formspree's servers using a ",[503,7593,7594],{},"fetch"," request.",[511,7597,7598],{},"Formspree receives the data, stores it, and forwards it to your email address.",[511,7600,7601],{},"Formspree returns a success response, and Nuxas shows the success message.",[480,7603,7604],{},"No data passes through your own server. This means you do not need to worry about server-side validation, database storage, or email delivery. Formspree handles all of that.",[495,7606,7608],{"id":7607},"customizing-the-form-fields","Customizing the Form Fields",[480,7610,7611,7612,7615],{},"The contact form fields are defined in ",[503,7613,7614],{},"content\u002Fcontact.md",", not in the component. This means you can customize the form labels, placeholders, and error messages without touching any Vue code.",[480,7617,7618,7619,7621,7622,7449],{},"If you are using Decap CMS, open the ",[484,7620,2074],{}," collection and edit the fields directly. If you are using the Code Only edition, edit ",[503,7623,7614],{},[480,7625,3692,7626,7629],{},[503,7627,7628],{},"form.fields"," section looks like this:",[550,7631,7633],{"className":552,"code":7632,"language":554,"meta":555,"style":555},"form:\n  fields:\n    - name: name\n      label: Full Name\n      placeholder: e.g. Linus Torvalds\n      type: text\n      required: true\n      errorMessage: Please enter your full name (minimum 2 characters).\n",[503,7634,7635,7642,7649,7660,7670,7680,7690,7700],{"__ignoreMap":555},[559,7636,7637,7640],{"class":561,"line":562},[559,7638,7639],{"class":572},"form",[559,7641,657],{"class":576},[559,7643,7644,7647],{"class":561,"line":569},[559,7645,7646],{"class":572},"  fields",[559,7648,657],{"class":576},[559,7650,7651,7653,7655,7657],{"class":561,"line":584},[559,7652,5324],{"class":576},[559,7654,3612],{"class":572},[559,7656,577],{"class":576},[559,7658,7659],{"class":580},"name\n",[559,7661,7662,7665,7667],{"class":561,"line":595},[559,7663,7664],{"class":572},"      label",[559,7666,577],{"class":576},[559,7668,7669],{"class":580},"Full Name\n",[559,7671,7672,7675,7677],{"class":561,"line":607},[559,7673,7674],{"class":572},"      placeholder",[559,7676,577],{"class":576},[559,7678,7679],{"class":580},"e.g. Linus Torvalds\n",[559,7681,7682,7685,7687],{"class":561,"line":618},[559,7683,7684],{"class":572},"      type",[559,7686,577],{"class":576},[559,7688,7689],{"class":580},"text\n",[559,7691,7692,7695,7697],{"class":561,"line":629},[559,7693,7694],{"class":572},"      required",[559,7696,577],{"class":576},[559,7698,7699],{"class":603},"true\n",[559,7701,7702,7705,7707],{"class":561,"line":640},[559,7703,7704],{"class":572},"      errorMessage",[559,7706,577],{"class":576},[559,7708,7709],{"class":580},"Please enter your full name (minimum 2 characters).\n",[480,7711,7712],{},"Each field has:",[508,7714,7715,7722,7729,7737,7752,7760],{},[511,7716,7717,7721],{},[484,7718,7719],{},[503,7720,3612],{}," — the internal name of the field. This is what Formspree receives.",[511,7723,7724,7728],{},[484,7725,7726],{},[503,7727,5076],{}," — the text shown above the input.",[511,7730,7731,7736],{},[484,7732,7733],{},[503,7734,7735],{},"placeholder"," — the hint text inside the input.",[511,7738,7739,6911,7744,779,7746,5683,7749,792],{},[484,7740,7741],{},[503,7742,7743],{},"type",[503,7745,1315],{},[503,7747,7748],{},"email",[503,7750,7751],{},"textarea",[511,7753,7754,7759],{},[484,7755,7756],{},[503,7757,7758],{},"required"," — whether the field is mandatory.",[511,7761,7762,7767],{},[484,7763,7764],{},[503,7765,7766],{},"errorMessage"," — the message shown if validation fails.",[480,7769,7770,7771,7773],{},"To add a new field, add a new item to the list. To remove a field, delete its item. Keep in mind that Formspree will receive whatever fields you define, so make sure the ",[503,7772,3612],{}," values are meaningful.",[495,7775,7777],{"id":7776},"customizing-the-success-and-error-messages","Customizing the Success and Error Messages",[480,7779,7780,7781,3075],{},"The success message, validation error message, and network error message are also defined in ",[503,7782,7614],{},[550,7784,7786],{"className":552,"code":7785,"language":554,"meta":555,"style":555},"form:\n  alerts:\n    success: Thank you! Your message has been sent. We will reply within 24 hours.\n    validationError: Please resolve the highlighted errors before submitting.\n    networkError: Network error. Please check your connection or contact us directly via email.\n",[503,7787,7788,7794,7801,7811,7821],{"__ignoreMap":555},[559,7789,7790,7792],{"class":561,"line":562},[559,7791,7639],{"class":572},[559,7793,657],{"class":576},[559,7795,7796,7799],{"class":561,"line":569},[559,7797,7798],{"class":572},"  alerts",[559,7800,657],{"class":576},[559,7802,7803,7806,7808],{"class":561,"line":584},[559,7804,7805],{"class":572},"    success",[559,7807,577],{"class":576},[559,7809,7810],{"class":580},"Thank you! Your message has been sent. We will reply within 24 hours.\n",[559,7812,7813,7816,7818],{"class":561,"line":595},[559,7814,7815],{"class":572},"    validationError",[559,7817,577],{"class":576},[559,7819,7820],{"class":580},"Please resolve the highlighted errors before submitting.\n",[559,7822,7823,7826,7828],{"class":561,"line":607},[559,7824,7825],{"class":572},"    networkError",[559,7827,577],{"class":576},[559,7829,7830],{"class":580},"Network error. Please check your connection or contact us directly via email.\n",[480,7832,7833],{},"You can change these messages to match your brand voice. For example, if you want a more casual tone:",[550,7835,7837],{"className":552,"code":7836,"language":554,"meta":555,"style":555},"form:\n  alerts:\n    success: Got it! We will get back to you within a day.\n    validationError: Almost there — please fix the highlighted fields.\n    networkError: Something went wrong. Please try again or email us directly.\n",[503,7838,7839,7845,7851,7860,7869],{"__ignoreMap":555},[559,7840,7841,7843],{"class":561,"line":562},[559,7842,7639],{"class":572},[559,7844,657],{"class":576},[559,7846,7847,7849],{"class":561,"line":569},[559,7848,7798],{"class":572},[559,7850,657],{"class":576},[559,7852,7853,7855,7857],{"class":561,"line":584},[559,7854,7805],{"class":572},[559,7856,577],{"class":576},[559,7858,7859],{"class":580},"Got it! We will get back to you within a day.\n",[559,7861,7862,7864,7866],{"class":561,"line":595},[559,7863,7815],{"class":572},[559,7865,577],{"class":576},[559,7867,7868],{"class":580},"Almost there — please fix the highlighted fields.\n",[559,7870,7871,7873,7875],{"class":561,"line":607},[559,7872,7825],{"class":572},[559,7874,577],{"class":576},[559,7876,7877],{"class":580},"Something went wrong. Please try again or email us directly.\n",[495,7879,7881],{"id":7880},"a-note-on-spam-protection","A Note on Spam Protection",[480,7883,7884,7885,7888],{},"Formspree includes built-in spam protection. The Nuxas contact form already includes a honeypot field (",[503,7886,7887],{},"_gotcha",") that is hidden from real users but visible to bots. If a bot fills it in, Formspree will reject the submission.",[480,7890,7891],{},"If you want additional protection, you can enable reCAPTCHA in your Formspree dashboard. This requires a Google reCAPTCHA site key, which you can get for free from Google. The process is beyond the scope of this chapter, but Formspree's documentation explains it clearly.",[495,7893,7895],{"id":7894},"troubleshooting","Troubleshooting",[732,7897,7899],{"id":7898},"issue-contact-form-is-not-configured","Issue: \"Contact form is not configured\"",[480,7901,7902,7903,7906,7907,7909,7910,7912],{},"This message appears if the ",[503,7904,7905],{},"formspreeId"," field is empty or still set to ",[503,7908,225],{},". Check ",[503,7911,4902],{}," or the CMS Global Site Config, and make sure your actual Formspree ID is saved.",[732,7914,7916],{"id":7915},"issue-the-form-submits-but-no-email-arrives","Issue: The form submits but no email arrives",[480,7918,7919],{},"Check the following:",[1150,7921,7922,7925,7928],{},[511,7923,7924],{},"The email address in your Formspree form settings is correct.",[511,7926,7927],{},"The submission appears in your Formspree dashboard. If it does, Formspree received the data but failed to forward it. Check your spam folder.",[511,7929,7930],{},"Your Formspree account is verified. Unverified accounts cannot receive submissions.",[732,7932,7934],{"id":7933},"issue-the-form-shows-an-error-on-submission","Issue: The form shows an error on submission",[480,7936,7937],{},"Check the browser's developer console for error details. Common causes include:",[508,7939,7940,7943,7946],{},[511,7941,7942],{},"A typo in the Formspree ID.",[511,7944,7945],{},"A network issue.",[511,7947,7948],{},"Formspree's free tier limit exceeded (50 submissions per month).",[495,7950,1704],{"id":1703},[480,7952,7953,7954,7957],{},"In the next chapter, we will customize the ",[484,7955,7956],{},"404 Error Page"," — the page visitors see when they land on a URL that does not exist. This is a small but important detail that improves the user experience and keeps visitors on your site.",[480,7959,1714],{},[1716,7961,6625],{},{"title":555,"searchDepth":584,"depth":584,"links":7963},[7964],{"id":7249,"depth":569,"text":7244,"children":7965},[7966,7967,7968,7969,7973,7974,7975,7976,7977,7978,7983],{"id":7268,"depth":584,"text":7269},{"id":7301,"depth":584,"text":7302},{"id":7333,"depth":584,"text":7334},{"id":7395,"depth":584,"text":7396,"children":7970},[7971,7972],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":7516,"depth":584,"text":7517},{"id":7576,"depth":584,"text":7577},{"id":7607,"depth":584,"text":7608},{"id":7776,"depth":584,"text":7777},{"id":7880,"depth":584,"text":7881},{"id":7894,"depth":584,"text":7895,"children":7979},[7980,7981,7982],{"id":7898,"depth":595,"text":7899},{"id":7915,"depth":595,"text":7916},{"id":7933,"depth":595,"text":7934},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to setting up the contact form in Nuxas. Learn how to create a Formspree account, get your form ID, and connect it to your site through Decap CMS or by editing files directly.",{},"\u002Fdocs\u002F10-contact",{"title":7244,"description":7984},"docs\u002F10-contact","kwaP-5fFTOFe2tljKlGcBBN6xYVD_edrJqb72iEnOf8",{"id":7991,"title":7992,"badge":471,"body":7993,"description":8658,"extension":1763,"meta":8659,"navigation":167,"order":669,"path":8660,"section":6,"seo":8661,"stem":8662,"__hash__":8663},"docs\u002Fdocs\u002F11-404.md","Customizing the 404 Error Page",{"type":473,"value":7994,"toc":8638},[7995,7998,8005,8008,8012,8019,8022,8036,8039,8043,8046,8048,8055,8064,8066,8073,8077,8083,8224,8226,8290,8294,8299,8323,8326,8330,8333,8496,8499,8503,8506,8512,8525,8531,8535,8549,8555,8561,8565,8569,8578,8591,8595,8607,8611,8623,8625,8630,8633,8635],[476,7996,7992],{"id":7997},"customizing-the-404-error-page",[480,7999,8000,8001,8004],{},"In the previous chapter, we set up the contact form with Formspree. Now we will customize the ",[484,8002,8003],{},"404 error page"," — the page visitors see when they land on a URL that does not exist.",[480,8006,8007],{},"A well-designed 404 page does more than apologize. It guides lost visitors back to the content they were looking for, reducing bounce rates and keeping them on your site. Nuxas includes a clean, friendly 404 page out of the box, and this chapter shows you how to customize it.",[495,8009,8011],{"id":8010},"what-is-a-404-error","What Is a 404 Error?",[480,8013,8014,8015,8018],{},"When a visitor requests a page that does not exist, the server responds with a status code called ",[484,8016,8017],{},"404 Not Found",". This tells the browser that the page could not be found. Nuxt automatically shows the 404 page whenever a visitor lands on a URL that does not match any route in your project.",[480,8020,8021],{},"Common reasons a visitor might land on a 404 page:",[508,8023,8024,8027,8030,8033],{},[511,8025,8026],{},"They mistyped a URL.",[511,8028,8029],{},"They clicked a broken link from another site.",[511,8031,8032],{},"A page they bookmarked has been deleted or renamed.",[511,8034,8035],{},"They manually changed the URL in the address bar.",[480,8037,8038],{},"A good 404 page acknowledges the error and offers clear next steps.",[495,8040,8042],{"id":8041},"how-to-edit-the-404-page","How to Edit the 404 Page",[480,8044,8045],{},"As with the previous chapters, the way you edit depends on your edition.",[732,8047,1148],{"id":1147},[480,8049,1154,8050,4929,8052,8054],{},[503,8051,1157],{},[484,8053,2080],{},". You will see a form with every field in the 404 configuration.",[480,8056,8057,8058,4946,8060,8063],{},"Edit any value, then click ",[484,8059,1252],{},[503,8061,8062],{},"content\u002F404.md",", and the Nuxt development server reloads the page automatically.",[732,8065,1265],{"id":1264},[480,8067,1154,8068,8070,8071,792],{},[503,8069,8062],{}," in VS Code. The file is small — just a few lines of frontmatter. Edit any value, then save with ",[484,8072,1299],{},[495,8074,8076],{"id":8075},"understanding-the-404-configuration","Understanding the 404 Configuration",[480,8078,8079,8080,8082],{},"The 404 page configuration lives in ",[503,8081,8062],{},". It has five fields:",[550,8084,8086],{"className":552,"code":8085,"language":554,"meta":555,"style":555},"title: 404 — Route Not Found | NuxtSass Starter\ndescription: The page or endpoint you requested does not exist on NuxtSass Starter. Return to the homepage, browse the Nuxt templates, or read the engineering blog.\nbadge: \"404\"\nheading: Route Not Found in Nitro Dispatcher\nintro: The page or endpoint you are looking for has been moved, renamed, or never committed to the router. Double-check the URL or return to our core directories below.\nlinks:\n  - label: Return to Homepage\n    to: \u002F\n    variant: primary\n  - label: Browse Templates\n    to: \u002Fproducts\n    variant: secondary\n  - label: Read Our Blog\n    to: \u002Fblog\n    variant: ghost\n",[503,8087,8088,8097,8106,8115,8124,8133,8139,8150,8158,8168,8179,8187,8196,8207,8215],{"__ignoreMap":555},[559,8089,8090,8092,8094],{"class":561,"line":562},[559,8091,573],{"class":572},[559,8093,577],{"class":576},[559,8095,8096],{"class":580},"404 — Route Not Found | NuxtSass Starter\n",[559,8098,8099,8101,8103],{"class":561,"line":569},[559,8100,587],{"class":572},[559,8102,577],{"class":576},[559,8104,8105],{"class":580},"The page or endpoint you requested does not exist on NuxtSass Starter. Return to the homepage, browse the Nuxt templates, or read the engineering blog.\n",[559,8107,8108,8110,8112],{"class":561,"line":584},[559,8109,695],{"class":572},[559,8111,577],{"class":576},[559,8113,8114],{"class":580},"\"404\"\n",[559,8116,8117,8119,8121],{"class":561,"line":595},[559,8118,6797],{"class":572},[559,8120,577],{"class":576},[559,8122,8123],{"class":580},"Route Not Found in Nitro Dispatcher\n",[559,8125,8126,8128,8130],{"class":561,"line":607},[559,8127,6807],{"class":572},[559,8129,577],{"class":576},[559,8131,8132],{"class":580},"The page or endpoint you are looking for has been moved, renamed, or never committed to the router. Double-check the URL or return to our core directories below.\n",[559,8134,8135,8137],{"class":561,"line":618},[559,8136,1054],{"class":572},[559,8138,657],{"class":576},[559,8140,8141,8143,8145,8147],{"class":561,"line":629},[559,8142,663],{"class":576},[559,8144,5076],{"class":572},[559,8146,577],{"class":576},[559,8148,8149],{"class":580},"Return to Homepage\n",[559,8151,8152,8154,8156],{"class":561,"line":640},[559,8153,5086],{"class":572},[559,8155,577],{"class":576},[559,8157,5091],{"class":580},[559,8159,8160,8163,8165],{"class":561,"line":651},[559,8161,8162],{"class":572},"    variant",[559,8164,577],{"class":576},[559,8166,8167],{"class":580},"primary\n",[559,8169,8170,8172,8174,8176],{"class":561,"line":660},[559,8171,663],{"class":576},[559,8173,5076],{"class":572},[559,8175,577],{"class":576},[559,8177,8178],{"class":580},"Browse Templates\n",[559,8180,8181,8183,8185],{"class":561,"line":669},[559,8182,5086],{"class":572},[559,8184,577],{"class":576},[559,8186,5111],{"class":580},[559,8188,8189,8191,8193],{"class":561,"line":676},[559,8190,8162],{"class":572},[559,8192,577],{"class":576},[559,8194,8195],{"class":580},"secondary\n",[559,8197,8198,8200,8202,8204],{"class":561,"line":684},[559,8199,663],{"class":576},[559,8201,5076],{"class":572},[559,8203,577],{"class":576},[559,8205,8206],{"class":580},"Read Our Blog\n",[559,8208,8209,8211,8213],{"class":561,"line":692},[559,8210,5086],{"class":572},[559,8212,577],{"class":576},[559,8214,5131],{"class":580},[559,8216,8217,8219,8221],{"class":561,"line":703},[559,8218,8162],{"class":572},[559,8220,577],{"class":576},[559,8222,8223],{"class":580},"ghost\n",[480,8225,6845],{},[508,8227,8228,8235,8242,8259,8268,8275],{},[511,8229,8230,8234],{},[484,8231,8232],{},[503,8233,573],{}," — the browser tab title and the SEO title. It appears in search engine results, though 404 pages are usually not indexed.",[511,8236,8237,8241],{},[484,8238,8239],{},[503,8240,587],{}," — the SEO description. Like the title, it is rarely shown, but it is good practice to fill it in.",[511,8243,8244,8248,8249,8252,8253,823,8256,792],{},[484,8245,8246],{},[503,8247,695],{}," — the large number or short text at the top of the page. In the default config, it is ",[503,8250,8251],{},"\"404\"",". You can change it to something like ",[503,8254,8255],{},"\"Oops\"",[503,8257,8258],{},"\"Lost?\"",[511,8260,8261,6875,8265,8267],{},[484,8262,8263],{},[503,8264,6797],{},[503,8266,739],{},". The default is \"Route Not Found in Nitro Dispatcher\". You can change it to something more friendly like \"We Could Not Find That Page\".",[511,8269,8270,8274],{},[484,8271,8272],{},[503,8273,6807],{}," — a paragraph below the heading, explaining what happened and what to do next.",[511,8276,8277,8281,8282,6280,8284,8286,8287,792],{},[484,8278,8279],{},[503,8280,1054],{}," — a list of buttons below the intro. Each button has a ",[503,8283,5076],{},[503,8285,5187],{}," (the URL), and a ",[503,8288,8289],{},"variant",[495,8291,8293],{"id":8292},"understanding-the-link-variants","Understanding the Link Variants",[480,8295,3692,8296,8298],{},[503,8297,1054],{}," section supports three variants:",[508,8300,8301,8308,8315],{},[511,8302,8303,8307],{},[484,8304,8305],{},[503,8306,50],{}," — a filled button in the brand color. Use this for the most important action, usually \"Return to Homepage\".",[511,8309,8310,8314],{},[484,8311,8312],{},[503,8313,54],{}," — a glass button with a subtle border. Use this for secondary actions, like \"Browse Templates\".",[511,8316,8317,8322],{},[484,8318,8319],{},[503,8320,8321],{},"ghost"," — a text-only button. Use this for tertiary actions, like \"Read Our Blog\".",[480,8324,8325],{},"You can have as many links as you want. A common pattern is one primary link (homepage), one secondary link (products or services), and one ghost link (blog or contact).",[495,8327,8329],{"id":8328},"an-example-a-friendlier-404-page","An Example: A Friendlier 404 Page",[480,8331,8332],{},"Here is an example of a 404 configuration with a friendlier tone:",[550,8334,8336],{"className":552,"code":8335,"language":554,"meta":555,"style":555},"title: Page Not Found — My SaaS\ndescription: The page you are looking for does not exist. Return to the homepage or browse our latest articles.\nbadge: \"Oops\"\nheading: We Could Not Find That Page\nintro: It looks like the page you are looking for has been moved, renamed, or never existed. Do not worry — here are some helpful links to get you back on track.\nlinks:\n  - label: Go to Homepage\n    to: \u002F\n    variant: primary\n  - label: Browse Products\n    to: \u002Fproducts\n    variant: secondary\n  - label: Read Our Blog\n    to: \u002Fblog\n    variant: ghost\n  - label: Contact Us\n    to: \u002Fcontact\n    variant: ghost\n",[503,8337,8338,8347,8356,8365,8374,8383,8389,8400,8408,8416,8427,8435,8443,8453,8461,8469,8480,8488],{"__ignoreMap":555},[559,8339,8340,8342,8344],{"class":561,"line":562},[559,8341,573],{"class":572},[559,8343,577],{"class":576},[559,8345,8346],{"class":580},"Page Not Found — My SaaS\n",[559,8348,8349,8351,8353],{"class":561,"line":569},[559,8350,587],{"class":572},[559,8352,577],{"class":576},[559,8354,8355],{"class":580},"The page you are looking for does not exist. Return to the homepage or browse our latest articles.\n",[559,8357,8358,8360,8362],{"class":561,"line":584},[559,8359,695],{"class":572},[559,8361,577],{"class":576},[559,8363,8364],{"class":580},"\"Oops\"\n",[559,8366,8367,8369,8371],{"class":561,"line":595},[559,8368,6797],{"class":572},[559,8370,577],{"class":576},[559,8372,8373],{"class":580},"We Could Not Find That Page\n",[559,8375,8376,8378,8380],{"class":561,"line":607},[559,8377,6807],{"class":572},[559,8379,577],{"class":576},[559,8381,8382],{"class":580},"It looks like the page you are looking for has been moved, renamed, or never existed. Do not worry — here are some helpful links to get you back on track.\n",[559,8384,8385,8387],{"class":561,"line":618},[559,8386,1054],{"class":572},[559,8388,657],{"class":576},[559,8390,8391,8393,8395,8397],{"class":561,"line":629},[559,8392,663],{"class":576},[559,8394,5076],{"class":572},[559,8396,577],{"class":576},[559,8398,8399],{"class":580},"Go to Homepage\n",[559,8401,8402,8404,8406],{"class":561,"line":640},[559,8403,5086],{"class":572},[559,8405,577],{"class":576},[559,8407,5091],{"class":580},[559,8409,8410,8412,8414],{"class":561,"line":651},[559,8411,8162],{"class":572},[559,8413,577],{"class":576},[559,8415,8167],{"class":580},[559,8417,8418,8420,8422,8424],{"class":561,"line":660},[559,8419,663],{"class":576},[559,8421,5076],{"class":572},[559,8423,577],{"class":576},[559,8425,8426],{"class":580},"Browse Products\n",[559,8428,8429,8431,8433],{"class":561,"line":669},[559,8430,5086],{"class":572},[559,8432,577],{"class":576},[559,8434,5111],{"class":580},[559,8436,8437,8439,8441],{"class":561,"line":676},[559,8438,8162],{"class":572},[559,8440,577],{"class":576},[559,8442,8195],{"class":580},[559,8444,8445,8447,8449,8451],{"class":561,"line":684},[559,8446,663],{"class":576},[559,8448,5076],{"class":572},[559,8450,577],{"class":576},[559,8452,8206],{"class":580},[559,8454,8455,8457,8459],{"class":561,"line":692},[559,8456,5086],{"class":572},[559,8458,577],{"class":576},[559,8460,5131],{"class":580},[559,8462,8463,8465,8467],{"class":561,"line":703},[559,8464,8162],{"class":572},[559,8466,577],{"class":576},[559,8468,8223],{"class":580},[559,8470,8471,8473,8475,8477],{"class":561,"line":714},[559,8472,663],{"class":576},[559,8474,5076],{"class":572},[559,8476,577],{"class":576},[559,8478,8479],{"class":580},"Contact Us\n",[559,8481,8482,8484,8486],{"class":561,"line":725},[559,8483,5086],{"class":572},[559,8485,577],{"class":576},[559,8487,5171],{"class":580},[559,8489,8490,8492,8494],{"class":561,"line":1529},[559,8491,8162],{"class":572},[559,8493,577],{"class":576},[559,8495,8223],{"class":580},[480,8497,8498],{},"This configuration has a warmer tone, four links instead of three, and a more descriptive intro. Feel free to adapt it to your brand voice.",[495,8500,8502],{"id":8501},"testing-the-404-page","Testing the 404 Page",[480,8504,8505],{},"To see the 404 page in action, open your browser and go to a URL that does not exist. For example:",[550,8507,8510],{"className":8508,"code":8509,"language":1315},[1313],"http:\u002F\u002Flocalhost:3000\u002Fthis-page-does-not-exist\n",[503,8511,8509],{"__ignoreMap":555},[480,8513,8514,8515,8517,8518,779,8520,4042,8522,8524],{},"You should see the 404 page with your customized content. If you see a generic error page instead, check that ",[503,8516,8062],{}," is saved correctly and that the ",[503,8519,6797],{},[503,8521,6807],{},[503,8523,1054],{}," fields are valid YAML.",[480,8526,8527,8528,8530],{},"If you are editing through the CMS, remember to click ",[484,8529,1252],{}," after every change.",[495,8532,8534],{"id":8533},"how-nuxt-handles-the-404-page","How Nuxt Handles the 404 Page",[480,8536,8537,8538,8541,8542,8545,8546,8548],{},"Nuxt has a special file called ",[503,8539,8540],{},"app\u002Ferror.vue"," that handles all errors, including 404 errors. When a visitor lands on a nonexistent URL, Nuxt calls ",[503,8543,8544],{},"error.vue"," with a status code of 404. The component reads the 404 configuration from ",[503,8547,8062],{}," and renders it.",[480,8550,8551,8552,8554],{},"If you want to customize the error page further — for example, to show a different message for 500 errors — you can edit ",[503,8553,8540],{},". The file has logic to distinguish between 404 errors and other errors, and to show different content for each.",[480,8556,8557,8558,8560],{},"For most users, editing ",[503,8559,8062],{}," is enough. The component handles the rest.",[495,8562,8564],{"id":8563},"common-mistakes","Common Mistakes",[732,8566,8568],{"id":8567},"mistake-1-forgetting-to-quote-the-badge","Mistake 1: Forgetting to quote the badge",[480,8570,3692,8571,8573,8574,8577],{},[503,8572,695],{}," field is a string. If you set it to ",[503,8575,8576],{},"404"," without quotes, YAML will interpret it as a number. Nuxt expects a string, so the page may fail to render. Always quote the badge:",[550,8579,8581],{"className":552,"code":8580,"language":554,"meta":555,"style":555},"badge: \"404\"\n",[503,8582,8583],{"__ignoreMap":555},[559,8584,8585,8587,8589],{"class":561,"line":562},[559,8586,695],{"class":572},[559,8588,577],{"class":576},[559,8590,8114],{"class":580},[732,8592,8594],{"id":8593},"mistake-2-missing-a-required-field","Mistake 2: Missing a required field",[480,8596,8597,8598,8600,8601,8603,8604,8606],{},"Every field in ",[503,8599,8062],{}," is required. If you delete a field, the page may fail to render. If you want to remove a field, check ",[503,8602,4308],{}," to see whether it is optional. The ",[503,8605,1054],{}," array is required, but it can be empty if you do not want any buttons.",[732,8608,8610],{"id":8609},"mistake-3-invalid-link-variant","Mistake 3: Invalid link variant",[480,8612,3692,8613,8615,8616,779,8618,5683,8620,8622],{},[503,8614,8289],{}," field must be one of ",[503,8617,50],{},[503,8619,54],{},[503,8621,8321],{},". If you use a different value, the button will render with default styling, which may look inconsistent.",[495,8624,1704],{"id":1703},[480,8626,1707,8627,8629],{},[484,8628,486],{}," — creating, reading, updating, and deleting them. This is the largest chapter in the documentation, because blog posts have the most fields. We will cover the entire process from start to finish, with examples and screenshots-in-words.",[480,8631,8632],{},"If you purchased the Code + Decap CMS edition, you will learn how to manage blog posts through the CMS dashboard. If you purchased the Code Only edition, you will learn how to edit Markdown files directly.",[480,8634,1714],{},[1716,8636,8637],{},"html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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);}",{"title":555,"searchDepth":584,"depth":584,"links":8639},[8640],{"id":7997,"depth":569,"text":7992,"children":8641},[8642,8643,8647,8648,8649,8650,8651,8652,8657],{"id":8010,"depth":584,"text":8011},{"id":8041,"depth":584,"text":8042,"children":8644},[8645,8646],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":8075,"depth":584,"text":8076},{"id":8292,"depth":584,"text":8293},{"id":8328,"depth":584,"text":8329},{"id":8501,"depth":584,"text":8502},{"id":8533,"depth":584,"text":8534},{"id":8563,"depth":584,"text":8564,"children":8653},[8654,8655,8656],{"id":8567,"depth":595,"text":8568},{"id":8593,"depth":595,"text":8594},{"id":8609,"depth":595,"text":8610},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to customizing the 404 error page in Nuxas. Learn how to edit the error message, the heading, and the return links through Decap CMS or by editing the 404.md file directly.",{},"\u002Fdocs\u002F11-404",{"title":7992,"description":8658},"docs\u002F11-404","W9oYB4Lirf_gpzlf3WpXkw4Ntcj_mi8yVNGFkLcAOrA",{"id":469,"title":470,"badge":471,"body":8665,"description":1762,"extension":1763,"meta":9587,"navigation":167,"order":676,"path":1765,"section":6,"seo":9588,"stem":1767,"__hash__":1768},{"type":473,"value":8666,"toc":9544},[8667,8669,8673,8675,8677,8679,8683,8697,8699,8701,8707,8709,8831,8833,8835,8839,8843,8845,8847,8851,8853,8857,8861,8863,8875,8879,8881,8883,8885,8887,8891,8893,8899,8903,8905,8911,8915,8917,8925,8929,8931,8933,8937,8939,8943,8949,8953,8955,8959,8961,8967,8983,8985,8987,9003,9005,9011,9019,9021,9027,9059,9061,9065,9073,9075,9077,9097,9099,9103,9111,9113,9117,9125,9127,9129,9199,9205,9207,9231,9233,9237,9242,9244,9260,9262,9264,9282,9284,9296,9298,9300,9318,9320,9332,9334,9336,9532,9534,9536,9540,9542],[476,8668,470],{"id":478},[480,8670,482,8671,487],{},[484,8672,486],{},[480,8674,490],{},[480,8676,493],{},[495,8678,498],{"id":497},[480,8680,501,8681,506],{},[503,8682,505],{},[508,8684,8685,8691],{},[511,8686,8687,516,8689],{},[503,8688,515],{},[503,8690,519],{},[511,8692,8693,516,8695],{},[503,8694,524],{},[503,8696,527],{},[480,8698,530],{},[495,8700,534],{"id":533},[480,8702,537,8703,541,8705,545],{},[503,8704,540],{},[484,8706,544],{},[480,8708,548],{},[550,8710,8711],{"className":552,"code":553,"language":554,"meta":555,"style":555},[503,8712,8713,8717,8725,8733,8741,8749,8757,8765,8773,8779,8785,8791,8797,8803,8811,8819,8827],{"__ignoreMap":555},[559,8714,8715],{"class":561,"line":562},[559,8716,566],{"class":565},[559,8718,8719,8721,8723],{"class":561,"line":569},[559,8720,573],{"class":572},[559,8722,577],{"class":576},[559,8724,581],{"class":580},[559,8726,8727,8729,8731],{"class":561,"line":584},[559,8728,587],{"class":572},[559,8730,577],{"class":576},[559,8732,592],{"class":580},[559,8734,8735,8737,8739],{"class":561,"line":595},[559,8736,598],{"class":572},[559,8738,577],{"class":576},[559,8740,604],{"class":603},[559,8742,8743,8745,8747],{"class":561,"line":607},[559,8744,610],{"class":572},[559,8746,577],{"class":576},[559,8748,615],{"class":580},[559,8750,8751,8753,8755],{"class":561,"line":618},[559,8752,621],{"class":572},[559,8754,577],{"class":576},[559,8756,626],{"class":580},[559,8758,8759,8761,8763],{"class":561,"line":629},[559,8760,632],{"class":572},[559,8762,577],{"class":576},[559,8764,637],{"class":580},[559,8766,8767,8769,8771],{"class":561,"line":640},[559,8768,643],{"class":572},[559,8770,577],{"class":576},[559,8772,648],{"class":580},[559,8774,8775,8777],{"class":561,"line":651},[559,8776,654],{"class":572},[559,8778,657],{"class":576},[559,8780,8781,8783],{"class":561,"line":660},[559,8782,663],{"class":576},[559,8784,666],{"class":580},[559,8786,8787,8789],{"class":561,"line":669},[559,8788,663],{"class":576},[559,8790,615],{"class":580},[559,8792,8793,8795],{"class":561,"line":676},[559,8794,663],{"class":576},[559,8796,681],{"class":580},[559,8798,8799,8801],{"class":561,"line":684},[559,8800,663],{"class":576},[559,8802,689],{"class":580},[559,8804,8805,8807,8809],{"class":561,"line":692},[559,8806,695],{"class":572},[559,8808,577],{"class":576},[559,8810,700],{"class":580},[559,8812,8813,8815,8817],{"class":561,"line":703},[559,8814,706],{"class":572},[559,8816,577],{"class":576},[559,8818,711],{"class":580},[559,8820,8821,8823,8825],{"class":561,"line":714},[559,8822,717],{"class":572},[559,8824,577],{"class":576},[559,8826,722],{"class":580},[559,8828,8829],{"class":561,"line":725},[559,8830,566],{"class":565},[480,8832,730],{},[732,8834,573],{"id":573},[480,8836,736,8837,740],{},[503,8838,739],{},[480,8840,8841,746],{},[484,8842,745],{},[732,8844,587],{"id":587},[480,8846,751],{},[480,8848,8849,756],{},[484,8850,745],{},[732,8852,598],{"id":598},[480,8854,761,8855,765],{},[503,8856,764],{},[480,8858,8859,770],{},[484,8860,745],{},[732,8862,610],{"id":610},[480,8864,775,8865,779,8867,779,8869,779,8871,779,8873,792],{},[503,8866,778],{},[503,8868,782],{},[503,8870,785],{},[503,8872,788],{},[503,8874,791],{},[480,8876,8877,797],{},[484,8878,745],{},[732,8880,621],{"id":621},[480,8882,802],{},[732,8884,632],{"id":805},[480,8886,808],{},[480,8888,8889,813],{},[484,8890,745],{},[732,8892,643],{"id":816},[480,8894,819,8895,823,8897,792],{},[503,8896,822],{},[503,8898,826],{},[480,8900,8901,831],{},[484,8902,745],{},[732,8904,654],{"id":654},[480,8906,836,8907,839,8909,792],{},[503,8908,73],{},[503,8910,842],{},[480,8912,8913,847],{},[484,8914,745],{},[732,8916,695],{"id":695},[480,8918,852,8919,779,8921,779,8923,792],{},[503,8920,855],{},[503,8922,858],{},[503,8924,788],{},[480,8926,8927,865],{},[484,8928,745],{},[732,8930,706],{"id":706},[480,8932,870],{},[480,8934,8935,875],{},[484,8936,745],{},[732,8938,717],{"id":878},[480,8940,881,8941,885],{},[503,8942,884],{},[480,8944,888,8945,892,8947,896],{},[503,8946,891],{},[503,8948,895],{},[480,8950,8951,901],{},[484,8952,745],{},[495,8954,905],{"id":904},[480,8956,908,8957,912],{},[484,8958,911],{},[732,8960,916],{"id":915},[480,8962,919,8963,923,8965,927],{},[503,8964,922],{},[503,8966,926],{},[550,8968,8969],{"className":930,"code":931,"language":932,"meta":555,"style":555},[503,8970,8971,8975,8979],{"__ignoreMap":555},[559,8972,8973],{"class":561,"line":562},[559,8974,939],{},[559,8976,8977],{"class":561,"line":569},[559,8978,944],{"emptyLinePlaceholder":167},[559,8980,8981],{"class":561,"line":584},[559,8982,949],{},[732,8984,953],{"id":952},[480,8986,956],{},[550,8988,8989],{"className":930,"code":959,"language":932,"meta":555,"style":555},[503,8990,8991,8995,8999],{"__ignoreMap":555},[559,8992,8993],{"class":561,"line":562},[559,8994,966],{},[559,8996,8997],{"class":561,"line":569},[559,8998,944],{"emptyLinePlaceholder":167},[559,9000,9001],{"class":561,"line":584},[559,9002,975],{},[732,9004,979],{"id":978},[480,9006,919,9007,985,9009,989],{},[503,9008,984],{},[503,9010,988],{},[550,9012,9013],{"className":930,"code":992,"language":932,"meta":555,"style":555},[503,9014,9015],{"__ignoreMap":555},[559,9016,9017],{"class":561,"line":562},[559,9018,992],{},[732,9020,1002],{"id":1001},[480,9022,919,9023,1008,9025,1012],{},[503,9024,1007],{},[503,9026,1011],{},[550,9028,9029],{"className":930,"code":1015,"language":932,"meta":555,"style":555},[503,9030,9031,9035,9039,9043,9047,9051,9055],{"__ignoreMap":555},[559,9032,9033],{"class":561,"line":562},[559,9034,1022],{},[559,9036,9037],{"class":561,"line":569},[559,9038,1027],{},[559,9040,9041],{"class":561,"line":584},[559,9042,1032],{},[559,9044,9045],{"class":561,"line":595},[559,9046,944],{"emptyLinePlaceholder":167},[559,9048,9049],{"class":561,"line":607},[559,9050,1041],{},[559,9052,9053],{"class":561,"line":618},[559,9054,1046],{},[559,9056,9057],{"class":561,"line":629},[559,9058,1051],{},[732,9060,1055],{"id":1054},[480,9062,919,9063,1061],{},[503,9064,1060],{},[550,9066,9067],{"className":930,"code":1064,"language":932,"meta":555,"style":555},[503,9068,9069],{"__ignoreMap":555},[559,9070,9071],{"class":561,"line":562},[559,9072,1064],{},[732,9074,1074],{"id":1073},[480,9076,1077],{},[550,9078,9079],{"className":930,"code":1080,"language":932,"meta":555,"style":555},[503,9080,9081,9085,9089,9093],{"__ignoreMap":555},[559,9082,9083],{"class":561,"line":562},[559,9084,1087],{},[559,9086,9087],{"class":561,"line":569},[559,9088,1092],{},[559,9090,9091],{"class":561,"line":584},[559,9092,1097],{},[559,9094,9095],{"class":561,"line":595},[559,9096,1102],{},[732,9098,1106],{"id":1105},[480,9100,919,9101,1112],{},[503,9102,1111],{},[550,9104,9105],{"className":930,"code":1115,"language":932,"meta":555,"style":555},[503,9106,9107],{"__ignoreMap":555},[559,9108,9109],{"class":561,"line":562},[559,9110,1115],{},[732,9112,1125],{"id":1124},[480,9114,919,9115,1131],{},[503,9116,1130],{},[550,9118,9119],{"className":930,"code":1134,"language":932,"meta":555,"style":555},[503,9120,9121],{"__ignoreMap":555},[559,9122,9123],{"class":561,"line":562},[559,9124,1134],{},[495,9126,1144],{"id":1143},[732,9128,1148],{"id":1147},[1150,9130,9131,9135,9139,9143,9195],{},[511,9132,1154,9133,792],{},[503,9134,1157],{},[511,9136,1160,9137,792],{},[484,9138,1163],{},[511,9140,1166,9141,1170],{},[484,9142,1169],{},[511,9144,1173,9145],{},[508,9146,9147,9151,9155,9159,9163,9167,9171,9175,9179,9183,9187,9191],{},[511,9148,9149,1181],{},[484,9150,1180],{},[511,9152,9153,1187],{},[484,9154,1186],{},[511,9156,9157,1193],{},[484,9158,1192],{},[511,9160,9161,1199],{},[484,9162,1198],{},[511,9164,9165,1205],{},[484,9166,1204],{},[511,9168,9169,1211],{},[484,9170,1210],{},[511,9172,9173,1217],{},[484,9174,1216],{},[511,9176,9177,1223],{},[484,9178,1222],{},[511,9180,9181,1229],{},[484,9182,1228],{},[511,9184,9185,1235],{},[484,9186,1234],{},[511,9188,9189,1241],{},[484,9190,1240],{},[511,9192,9193,1247],{},[484,9194,1246],{},[511,9196,1166,9197,1170],{},[484,9198,1252],{},[480,9200,1255,9201,1258,9203,792],{},[503,9202,505],{},[503,9204,1261],{},[732,9206,1265],{"id":1264},[1150,9208,9209,9213,9217,9221,9223,9225,9227],{},[511,9210,1270,9211,1273],{},[503,9212,505],{},[511,9214,1276,9215,792],{},[484,9216,1279],{},[511,9218,1282,9219,792],{},[503,9220,1261],{},[511,9222,1287],{},[511,9224,1290],{},[511,9226,1293],{},[511,9228,1296,9229,792],{},[484,9230,1299],{},[495,9232,1303],{"id":1302},[480,9234,1306,9235,1309],{},[503,9236,31],{},[550,9238,9240],{"className":9239,"code":1314,"language":1315},[1313],[503,9241,1314],{"__ignoreMap":555},[480,9243,1320],{},[508,9245,9246,9248,9250,9252,9254,9256],{},[511,9247,1325],{},[511,9249,1328],{},[511,9251,1331],{},[511,9253,1334],{},[511,9255,1337],{},[511,9257,1340,9258,1343],{},[503,9259,717],{},[495,9261,1347],{"id":1346},[732,9263,1148],{"id":1350},[1150,9265,9266,9270,9274,9276,9278],{},[511,9267,1154,9268,792],{},[503,9269,1157],{},[511,9271,1160,9272,792],{},[484,9273,1163],{},[511,9275,1363],{},[511,9277,1366],{},[511,9279,1166,9280,792],{},[484,9281,1252],{},[732,9283,1265],{"id":1373},[1150,9285,9286,9290,9292],{},[511,9287,1378,9288,792],{},[503,9289,505],{},[511,9291,1383],{},[511,9293,1296,9294,792],{},[484,9295,1299],{},[495,9297,1391],{"id":1390},[732,9299,1148],{"id":1394},[1150,9301,9302,9306,9310,9312,9316],{},[511,9303,1154,9304,792],{},[503,9305,1157],{},[511,9307,1160,9308,792],{},[484,9309,1163],{},[511,9311,1407],{},[511,9313,1410,9314,792],{},[484,9315,1413],{},[511,9317,1416],{},[732,9319,1265],{"id":1419},[1150,9321,9322,9326,9330],{},[511,9323,1270,9324,1273],{},[503,9325,505],{},[511,9327,1428,9328,792],{},[484,9329,1413],{},[511,9331,1416],{},[495,9333,1436],{"id":1435},[480,9335,1439],{},[550,9337,9338],{"className":930,"code":1442,"language":932,"meta":555,"style":555},[503,9339,9340,9344,9348,9352,9356,9360,9364,9368,9372,9376,9380,9384,9388,9392,9396,9400,9404,9408,9412,9416,9420,9424,9428,9432,9436,9440,9444,9448,9452,9456,9460,9464,9468,9472,9476,9480,9484,9488,9492,9496,9500,9504,9508,9512,9516,9520,9524,9528],{"__ignoreMap":555},[559,9341,9342],{"class":561,"line":562},[559,9343,566],{},[559,9345,9346],{"class":561,"line":569},[559,9347,1453],{},[559,9349,9350],{"class":561,"line":584},[559,9351,1458],{},[559,9353,9354],{"class":561,"line":595},[559,9355,1463],{},[559,9357,9358],{"class":561,"line":607},[559,9359,1468],{},[559,9361,9362],{"class":561,"line":618},[559,9363,1473],{},[559,9365,9366],{"class":561,"line":629},[559,9367,1478],{},[559,9369,9370],{"class":561,"line":640},[559,9371,1483],{},[559,9373,9374],{"class":561,"line":651},[559,9375,1488],{},[559,9377,9378],{"class":561,"line":660},[559,9379,1493],{},[559,9381,9382],{"class":561,"line":669},[559,9383,1498],{},[559,9385,9386],{"class":561,"line":676},[559,9387,1503],{},[559,9389,9390],{"class":561,"line":684},[559,9391,1508],{},[559,9393,9394],{"class":561,"line":692},[559,9395,1513],{},[559,9397,9398],{"class":561,"line":703},[559,9399,1518],{},[559,9401,9402],{"class":561,"line":714},[559,9403,566],{},[559,9405,9406],{"class":561,"line":725},[559,9407,944],{"emptyLinePlaceholder":167},[559,9409,9410],{"class":561,"line":1529},[559,9411,1532],{},[559,9413,9414],{"class":561,"line":1535},[559,9415,944],{"emptyLinePlaceholder":167},[559,9417,9418],{"class":561,"line":1540},[559,9419,1543],{},[559,9421,9422],{"class":561,"line":1546},[559,9423,944],{"emptyLinePlaceholder":167},[559,9425,9426],{"class":561,"line":1551},[559,9427,1554],{},[559,9429,9430],{"class":561,"line":1557},[559,9431,944],{"emptyLinePlaceholder":167},[559,9433,9434],{"class":561,"line":1562},[559,9435,1565],{},[559,9437,9438],{"class":561,"line":1568},[559,9439,944],{"emptyLinePlaceholder":167},[559,9441,9442],{"class":561,"line":1573},[559,9443,1576],{},[559,9445,9446],{"class":561,"line":1579},[559,9447,944],{"emptyLinePlaceholder":167},[559,9449,9450],{"class":561,"line":1584},[559,9451,1587],{},[559,9453,9454],{"class":561,"line":1590},[559,9455,944],{"emptyLinePlaceholder":167},[559,9457,9458],{"class":561,"line":1595},[559,9459,1598],{},[559,9461,9462],{"class":561,"line":1601},[559,9463,944],{"emptyLinePlaceholder":167},[559,9465,9466],{"class":561,"line":1606},[559,9467,1609],{},[559,9469,9470],{"class":561,"line":1612},[559,9471,944],{"emptyLinePlaceholder":167},[559,9473,9474],{"class":561,"line":1617},[559,9475,1620],{},[559,9477,9478],{"class":561,"line":1623},[559,9479,944],{"emptyLinePlaceholder":167},[559,9481,9482],{"class":561,"line":1628},[559,9483,1631],{},[559,9485,9486],{"class":561,"line":1634},[559,9487,944],{"emptyLinePlaceholder":167},[559,9489,9490],{"class":561,"line":1639},[559,9491,1642],{},[559,9493,9494],{"class":561,"line":1645},[559,9495,944],{"emptyLinePlaceholder":167},[559,9497,9498],{"class":561,"line":1650},[559,9499,1653],{},[559,9501,9502],{"class":561,"line":1656},[559,9503,944],{"emptyLinePlaceholder":167},[559,9505,9506],{"class":561,"line":1661},[559,9507,1664],{},[559,9509,9510],{"class":561,"line":1667},[559,9511,944],{"emptyLinePlaceholder":167},[559,9513,9514],{"class":561,"line":1672},[559,9515,1675],{},[559,9517,9518],{"class":561,"line":1678},[559,9519,944],{"emptyLinePlaceholder":167},[559,9521,9522],{"class":561,"line":1683},[559,9523,1686],{},[559,9525,9526],{"class":561,"line":1689},[559,9527,944],{"emptyLinePlaceholder":167},[559,9529,9530],{"class":561,"line":1694},[559,9531,1697],{},[480,9533,1700],{},[495,9535,1704],{"id":1703},[480,9537,1707,9538,1711],{},[484,9539,1710],{},[480,9541,1714],{},[1716,9543,1718],{},{"title":555,"searchDepth":584,"depth":584,"links":9545},[9546],{"id":478,"depth":569,"text":470,"children":9547},[9548,9549,9562,9572,9576,9577,9581,9585,9586],{"id":497,"depth":584,"text":498},{"id":533,"depth":584,"text":534,"children":9550},[9551,9552,9553,9554,9555,9556,9557,9558,9559,9560,9561],{"id":573,"depth":595,"text":573},{"id":587,"depth":595,"text":587},{"id":598,"depth":595,"text":598},{"id":610,"depth":595,"text":610},{"id":621,"depth":595,"text":621},{"id":805,"depth":595,"text":632},{"id":816,"depth":595,"text":643},{"id":654,"depth":595,"text":654},{"id":695,"depth":595,"text":695},{"id":706,"depth":595,"text":706},{"id":878,"depth":595,"text":717},{"id":904,"depth":584,"text":905,"children":9563},[9564,9565,9566,9567,9568,9569,9570,9571],{"id":915,"depth":595,"text":916},{"id":952,"depth":595,"text":953},{"id":978,"depth":595,"text":979},{"id":1001,"depth":595,"text":1002},{"id":1054,"depth":595,"text":1055},{"id":1073,"depth":595,"text":1074},{"id":1105,"depth":595,"text":1106},{"id":1124,"depth":595,"text":1125},{"id":1143,"depth":584,"text":1144,"children":9573},[9574,9575],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":1302,"depth":584,"text":1303},{"id":1346,"depth":584,"text":1347,"children":9578},[9579,9580],{"id":1350,"depth":595,"text":1148},{"id":1373,"depth":595,"text":1265},{"id":1390,"depth":584,"text":1391,"children":9582},[9583,9584],{"id":1394,"depth":595,"text":1148},{"id":1419,"depth":595,"text":1265},{"id":1435,"depth":584,"text":1436},{"id":1703,"depth":584,"text":1704},{},{"title":470,"description":1762},{"id":9590,"title":9591,"badge":471,"body":9592,"description":10900,"extension":1763,"meta":10901,"navigation":167,"order":684,"path":10902,"section":6,"seo":10903,"stem":10904,"__hash__":10905},"docs\u002Fdocs\u002F13-product-crud.md","Managing Products",{"type":473,"value":9593,"toc":10862},[9594,9597,9603,9610,9613,9617,9623,9639,9642,9646,9652,9655,9993,9995,9997,10000,10005,10007,10016,10026,10028,10031,10044,10047,10057,10067,10069,10072,10077,10079,10082,10087,10089,10092,10113,10116,10118,10121,10126,10128,10139,10144,10146,10149,10154,10156,10166,10171,10173,10179,10184,10186,10189,10194,10197,10207,10212,10215,10218,10223,10225,10228,10233,10307,10310,10314,10316,10425,10430,10432,10457,10461,10467,10473,10476,10499,10503,10505,10524,10526,10539,10543,10545,10564,10566,10579,10581,10584,10850,10852,10858,10860],[476,9595,9591],{"id":9596},"managing-products",[480,9598,9599,9600,9602],{},"In the previous chapter, we managed blog posts. Now we will manage ",[484,9601,1710],{}," — the items you sell on your site.",[480,9604,9605,9606,9609],{},"Products are different from blog posts in one key way: they are ",[484,9607,9608],{},"commercial",". Each product has a price, a purchase URL, and a gallery of images. The product detail page is designed to convert visitors into buyers, so every field matters.",[480,9611,9612],{},"This chapter walks you through the entire lifecycle of a product, from creation to deletion.",[495,9614,9616],{"id":9615},"where-products-live","Where Products Live",[480,9618,9619,9620,9622],{},"All products live in ",[503,9621,4412],{},". Each product is a separate Markdown file. The filename becomes the URL slug for the product. For example:",[508,9624,9625,9632],{},[511,9626,9627,516,9630],{},[503,9628,9629],{},"content\u002Fproducts\u002Fnuxas-code.md",[503,9631,232],{},[511,9633,9634,516,9637],{},[503,9635,9636],{},"content\u002Fproducts\u002Fnuxas-cms.md",[503,9638,234],{},[480,9640,9641],{},"Filenames should be lowercase, with hyphens instead of spaces. Keep them short and descriptive.",[495,9643,9645],{"id":9644},"understanding-the-product-frontmatter","Understanding the Product Frontmatter",[480,9647,9648,9649,9651],{},"Every product file starts with a block of YAML between two ",[503,9650,540],{}," lines. This is the frontmatter. It defines the product's metadata: the title, price, features, gallery, and purchase URL.",[480,9653,9654],{},"Here is a complete example of a product frontmatter:",[550,9656,9658],{"className":552,"code":9657,"language":554,"meta":555,"style":555},"---\ntitle: Nuxas — Nuxt 4 SaaS Starter (Code Only)\nbadge: Code Only Edition\nprice: 59\npriceLabel: one-time\ndescription: The complete Nuxt 4 SaaS starter — Nitro engine, strict TypeScript, Stripe-ready architecture, dark mode, accessible components, and a full SEO pipeline. Full source ownership, no CMS, no lock-in.\nexcerpt: Launch your SaaS in days with a clean, production-grade Nuxt 4 foundation.\nicon: layers\ncover: https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1555066931-4365d14bab8c?auto=format&fit=crop&w=1200&q=80\ngallery:\n  - image: https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1467232004584-a241de8bcf5d?auto=format&fit=crop&w=1200&q=80\n    title: No-Code Admin Dashboard\n    desc: Edit blog, products, and site content without touching code.\n  - image: https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1551288059-bebda4e38f71?auto=format&fit=crop&w=1200&q=80\n    title: Git-Based Content Workflow\n    desc: Every edit is a commit — automatic audit trail, easy rollback.\nfeatures:\n  - Full Nuxt 4 + Nitro source repository\n  - 100% strict TypeScript across client and server\n  - Dark and light theme with zero flash of unstyled content\n  - Stripe and Lemon Squeezy integration ready\n  - WCAG AA accessible components\n  - Lifetime updates, no recurring fees\nspecs:\n  - label: Core Framework\n    value: Nuxt 4.14+ (Vue 3.5+, Composition API)\n  - label: Server Engine\n    value: Nitro with universal deploy targets\n  - label: Language\n    value: 100% strict TypeScript\n  - label: Styling\n    value: Custom CSS tokens, dark and light mode\n  - label: License\n    value: Single commercial project\npopular: false\norder: 1\npurchaseLabel: Buy Nuxas Code Only\npurchaseUrl: https:\u002F\u002Fcreativitaz.gumroad.com\u002Fl\u002Fnuxas\n---\n",[503,9659,9660,9664,9673,9681,9689,9697,9706,9715,9724,9733,9740,9751,9761,9771,9782,9791,9800,9806,9812,9819,9826,9833,9840,9847,9854,9865,9875,9886,9895,9906,9914,9925,9934,9945,9954,9962,9971,9980,9989],{"__ignoreMap":555},[559,9661,9662],{"class":561,"line":562},[559,9663,566],{"class":565},[559,9665,9666,9668,9670],{"class":561,"line":569},[559,9667,573],{"class":572},[559,9669,577],{"class":576},[559,9671,9672],{"class":580},"Nuxas — Nuxt 4 SaaS Starter (Code Only)\n",[559,9674,9675,9677,9679],{"class":561,"line":584},[559,9676,695],{"class":572},[559,9678,577],{"class":576},[559,9680,5903],{"class":580},[559,9682,9683,9685,9687],{"class":561,"line":595},[559,9684,6020],{"class":572},[559,9686,577],{"class":576},[559,9688,5913],{"class":603},[559,9690,9691,9693,9695],{"class":561,"line":607},[559,9692,6028],{"class":572},[559,9694,577],{"class":576},[559,9696,5923],{"class":580},[559,9698,9699,9701,9703],{"class":561,"line":618},[559,9700,587],{"class":572},[559,9702,577],{"class":576},[559,9704,9705],{"class":580},"The complete Nuxt 4 SaaS starter — Nitro engine, strict TypeScript, Stripe-ready architecture, dark mode, accessible components, and a full SEO pipeline. Full source ownership, no CMS, no lock-in.\n",[559,9707,9708,9710,9712],{"class":561,"line":629},[559,9709,6036],{"class":572},[559,9711,577],{"class":576},[559,9713,9714],{"class":580},"Launch your SaaS in days with a clean, production-grade Nuxt 4 foundation.\n",[559,9716,9717,9719,9721],{"class":561,"line":640},[559,9718,5647],{"class":572},[559,9720,577],{"class":576},[559,9722,9723],{"class":580},"layers\n",[559,9725,9726,9728,9730],{"class":561,"line":651},[559,9727,706],{"class":572},[559,9729,577],{"class":576},[559,9731,9732],{"class":580},"https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1555066931-4365d14bab8c?auto=format&fit=crop&w=1200&q=80\n",[559,9734,9735,9738],{"class":561,"line":660},[559,9736,9737],{"class":572},"gallery",[559,9739,657],{"class":576},[559,9741,9742,9744,9746,9748],{"class":561,"line":669},[559,9743,663],{"class":576},[559,9745,5477],{"class":572},[559,9747,577],{"class":576},[559,9749,9750],{"class":580},"https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1467232004584-a241de8bcf5d?auto=format&fit=crop&w=1200&q=80\n",[559,9752,9753,9756,9758],{"class":561,"line":676},[559,9754,9755],{"class":572},"    title",[559,9757,577],{"class":576},[559,9759,9760],{"class":580},"No-Code Admin Dashboard\n",[559,9762,9763,9766,9768],{"class":561,"line":684},[559,9764,9765],{"class":572},"    desc",[559,9767,577],{"class":576},[559,9769,9770],{"class":580},"Edit blog, products, and site content without touching code.\n",[559,9772,9773,9775,9777,9779],{"class":561,"line":692},[559,9774,663],{"class":576},[559,9776,5477],{"class":572},[559,9778,577],{"class":576},[559,9780,9781],{"class":580},"https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1551288059-bebda4e38f71?auto=format&fit=crop&w=1200&q=80\n",[559,9783,9784,9786,9788],{"class":561,"line":703},[559,9785,9755],{"class":572},[559,9787,577],{"class":576},[559,9789,9790],{"class":580},"Git-Based Content Workflow\n",[559,9792,9793,9795,9797],{"class":561,"line":714},[559,9794,9765],{"class":572},[559,9796,577],{"class":576},[559,9798,9799],{"class":580},"Every edit is a commit — automatic audit trail, easy rollback.\n",[559,9801,9802,9804],{"class":561,"line":725},[559,9803,5594],{"class":572},[559,9805,657],{"class":576},[559,9807,9808,9810],{"class":561,"line":1529},[559,9809,663],{"class":576},[559,9811,5958],{"class":580},[559,9813,9814,9816],{"class":561,"line":1535},[559,9815,663],{"class":576},[559,9817,9818],{"class":580},"100% strict TypeScript across client and server\n",[559,9820,9821,9823],{"class":561,"line":1540},[559,9822,663],{"class":576},[559,9824,9825],{"class":580},"Dark and light theme with zero flash of unstyled content\n",[559,9827,9828,9830],{"class":561,"line":1546},[559,9829,663],{"class":576},[559,9831,9832],{"class":580},"Stripe and Lemon Squeezy integration ready\n",[559,9834,9835,9837],{"class":561,"line":1551},[559,9836,663],{"class":576},[559,9838,9839],{"class":580},"WCAG AA accessible components\n",[559,9841,9842,9844],{"class":561,"line":1557},[559,9843,663],{"class":576},[559,9845,9846],{"class":580},"Lifetime updates, no recurring fees\n",[559,9848,9849,9852],{"class":561,"line":1562},[559,9850,9851],{"class":572},"specs",[559,9853,657],{"class":576},[559,9855,9856,9858,9860,9862],{"class":561,"line":1568},[559,9857,663],{"class":576},[559,9859,5076],{"class":572},[559,9861,577],{"class":576},[559,9863,9864],{"class":580},"Core Framework\n",[559,9866,9867,9870,9872],{"class":561,"line":1573},[559,9868,9869],{"class":572},"    value",[559,9871,577],{"class":576},[559,9873,9874],{"class":580},"Nuxt 4.14+ (Vue 3.5+, Composition API)\n",[559,9876,9877,9879,9881,9883],{"class":561,"line":1579},[559,9878,663],{"class":576},[559,9880,5076],{"class":572},[559,9882,577],{"class":576},[559,9884,9885],{"class":580},"Server Engine\n",[559,9887,9888,9890,9892],{"class":561,"line":1584},[559,9889,9869],{"class":572},[559,9891,577],{"class":576},[559,9893,9894],{"class":580},"Nitro with universal deploy targets\n",[559,9896,9897,9899,9901,9903],{"class":561,"line":1590},[559,9898,663],{"class":576},[559,9900,5076],{"class":572},[559,9902,577],{"class":576},[559,9904,9905],{"class":580},"Language\n",[559,9907,9908,9910,9912],{"class":561,"line":1595},[559,9909,9869],{"class":572},[559,9911,577],{"class":576},[559,9913,5965],{"class":580},[559,9915,9916,9918,9920,9922],{"class":561,"line":1601},[559,9917,663],{"class":576},[559,9919,5076],{"class":572},[559,9921,577],{"class":576},[559,9923,9924],{"class":580},"Styling\n",[559,9926,9927,9929,9931],{"class":561,"line":1606},[559,9928,9869],{"class":572},[559,9930,577],{"class":576},[559,9932,9933],{"class":580},"Custom CSS tokens, dark and light mode\n",[559,9935,9936,9938,9940,9942],{"class":561,"line":1612},[559,9937,663],{"class":576},[559,9939,5076],{"class":572},[559,9941,577],{"class":576},[559,9943,9944],{"class":580},"License\n",[559,9946,9947,9949,9951],{"class":561,"line":1617},[559,9948,9869],{"class":572},[559,9950,577],{"class":576},[559,9952,9953],{"class":580},"Single commercial project\n",[559,9955,9956,9958,9960],{"class":561,"line":1623},[559,9957,6044],{"class":572},[559,9959,577],{"class":576},[559,9961,5943],{"class":603},[559,9963,9964,9966,9968],{"class":561,"line":1628},[559,9965,7070],{"class":572},[559,9967,577],{"class":576},[559,9969,9970],{"class":603},"1\n",[559,9972,9973,9976,9978],{"class":561,"line":1634},[559,9974,9975],{"class":572},"purchaseLabel",[559,9977,577],{"class":576},[559,9979,5975],{"class":580},[559,9981,9982,9985,9987],{"class":561,"line":1639},[559,9983,9984],{"class":572},"purchaseUrl",[559,9986,577],{"class":576},[559,9988,5995],{"class":580},[559,9990,9991],{"class":561,"line":1645},[559,9992,566],{"class":565},[480,9994,730],{},[732,9996,573],{"id":573},[480,9998,9999],{},"The product title. It appears on the product card, on the detail page, and in the browser tab.",[480,10001,10002,10004],{},[484,10003,745],{}," Keep it descriptive but concise. \"Nuxas — Nuxt 4 SaaS Starter (Code Only)\" is better than \"Nuxas\".",[732,10006,695],{"id":695},[480,10008,10009,10010,779,10012,779,10014,792],{},"A short label that appears above the title on the product card. Examples: ",[503,10011,149],{},[503,10013,145],{},[503,10015,177],{},[480,10017,10018,10020,10021,10023,10024,792],{},[484,10019,745],{}," If you want to highlight a product, set its badge to \"Most Popular\" and its ",[503,10022,6044],{}," field to ",[503,10025,3451],{},[732,10027,6020],{"id":6020},[480,10029,10030],{},"The numeric price of the product. This is used in the pricing display, the structured data, and the product card.",[480,10032,10033,10035,10036,10039,10040,10043],{},[484,10034,745],{}," Use a number, not a string. ",[503,10037,10038],{},"59"," is correct; ",[503,10041,10042],{},"\"59\""," is not.",[732,10045,6028],{"id":10046},"pricelabel",[480,10048,10049,10050,779,10052,779,10054,792],{},"A short string that appears next to the price. Examples: ",[503,10051,151],{},[503,10053,179],{},[503,10055,10056],{},"per month",[480,10058,10059,10061,10062,10064,10065,792],{},[484,10060,745],{}," For one-time purchases, use ",[503,10063,151],{},". For services that start at a certain price, use ",[503,10066,179],{},[732,10068,587],{"id":587},[480,10070,10071],{},"A full description of the product. It appears on the detail page, below the title.",[480,10073,10074,10076],{},[484,10075,745],{}," Be specific. Mention what is included, what technologies are used, and what makes the product unique.",[732,10078,6036],{"id":6036},[480,10080,10081],{},"A short summary of the product. It appears on the product card and in the related products section.",[480,10083,10084,10086],{},[484,10085,745],{}," Keep it under 160 characters. The excerpt is often the first thing visitors read.",[732,10088,5647],{"id":5647},[480,10090,10091],{},"A short name that identifies the product's icon. The available icons are:",[508,10093,10094,10099,10104,10108],{},[511,10095,10096],{},[503,10097,10098],{},"layers",[511,10100,10101],{},[503,10102,10103],{},"settings",[511,10105,10106],{},[503,10107,503],{},[511,10109,10110],{},[503,10111,10112],{},"cpu",[480,10114,10115],{},"The icon appears on the product card, above the title. If you use a name that is not in the list, the card will show a default icon.",[732,10117,706],{"id":706},[480,10119,10120],{},"The URL of the cover image. It appears on the product card and at the top of the detail page.",[480,10122,10123,10125],{},[484,10124,745],{}," Use a 16:9 aspect ratio image at least 1200 pixels wide. Unsplash is a good source for free images.",[732,10127,9737],{"id":9737},[480,10129,10130,10131,10133,10134,5689,10136,10138],{},"An array of gallery items. Each item has an ",[503,10132,5477],{}," (the URL), a ",[503,10135,573],{},[503,10137,5692],{},". The gallery appears on the detail page, with thumbnail navigation.",[480,10140,10141,10143],{},[484,10142,745],{}," Use 3 to 5 gallery items. Too few and the gallery looks empty; too many and visitors will not scroll through all of them.",[732,10145,5594],{"id":5594},[480,10147,10148],{},"A list of features. Each feature is a short sentence. The features appear on the detail page, under \"What is Included\", and on the product card (only the first three).",[480,10150,10151,10153],{},[484,10152,745],{}," Use 4 to 6 features. Each feature should be a benefit, not a technical specification.",[732,10155,9851],{"id":9851},[480,10157,10158,10159,10161,10162,10165],{},"A list of technical specifications. Each spec has a ",[503,10160,5076],{}," and a ",[503,10163,10164],{},"value",". The specs appear on the detail page, in a table.",[480,10167,10168,10170],{},[484,10169,745],{}," Use 4 to 6 specs. The label should be a category (e.g., \"Core Framework\"), and the value should be specific (e.g., \"Nuxt 4.14+\").",[732,10172,6044],{"id":6044},[480,10174,10175,10176,10178],{},"A boolean. If ",[503,10177,3451],{},", the product card is highlighted with a \"Most Popular\" badge.",[480,10180,10181,10183],{},[484,10182,745],{}," Only mark one product as popular. If you mark multiple, the badge loses its impact.",[732,10185,7070],{"id":7070},[480,10187,10188],{},"A number that determines the product's position on the products page. Lower numbers appear first.",[480,10190,10191,10193],{},[484,10192,745],{}," Use increments of 1 (1, 2, 3, etc.). If you want to insert a product between two existing ones, use a decimal (e.g., 1.5).",[732,10195,9975],{"id":10196},"purchaselabel",[480,10198,10199,10200,779,10202,779,10204,792],{},"The text on the purchase button. Examples: ",[503,10201,161],{},[503,10203,188],{},[503,10205,10206],{},"Get the Template",[480,10208,10209,10211],{},[484,10210,745],{}," Keep it action-oriented. \"Buy\" and \"Get\" convert better than \"Purchase\".",[732,10213,9984],{"id":10214},"purchaseurl",[480,10216,10217],{},"The URL the purchase button points to. This is usually a Gumroad or Fiverr link.",[480,10219,10220,10222],{},[484,10221,745],{}," Test the link before publishing. A broken purchase link is the fastest way to lose a sale.",[495,10224,905],{"id":904},[480,10226,10227],{},"Below the frontmatter, the body of the product is written in Markdown. The body appears on the detail page, below the specs and features. Use it to explain the product in more depth: what it includes, who it is for, and why someone should buy it.",[480,10229,10230,10231,3075],{},"Here is an example body for ",[503,10232,7137],{},[550,10234,10236],{"className":930,"code":10235,"language":932,"meta":555,"style":555},"Nuxas Code Only is a production-ready Nuxt 4 foundation for SaaS products. Everything you need to start building — without bloat, without unnecessary dependencies, and without monthly fees.\n\nYou get full access to the source repository, including the Nitro API structure, strict TypeScript configuration, a dark and light theming system with zero flash of unstyled content, and accessible components that already pass WCAG AA.\n\n## Why developers choose Nuxas\n\nMost Nuxt boilerplates force you into their own abstractions. Nuxas does the opposite: idiomatic Nuxt code that reads like it was written by a senior engineer — easy to read, easy to change, easy to maintain.\n\n- **Zero lock-in**: fork, modify, and deploy to Vercel, Cloudflare, or Netlify as you wish.\n- **Full ownership**: one payment, lifetime updates.\n- **Production-grade**: 14ms TTFB on the edge, Lighthouse 99+, no hydration mismatches.\n\n## Who it is for\n\nFreelancers and solo founders who want to launch a SaaS in days, not months. If you want to edit content without touching code, consider the [Nuxas + Decap CMS edition](\u002Fproducts\u002Fnuxas-cms) — an upgrade that gives you a no-code admin dashboard.\n",[503,10237,10238,10243,10247,10252,10256,10261,10265,10270,10274,10279,10284,10289,10293,10298,10302],{"__ignoreMap":555},[559,10239,10240],{"class":561,"line":562},[559,10241,10242],{},"Nuxas Code Only is a production-ready Nuxt 4 foundation for SaaS products. Everything you need to start building — without bloat, without unnecessary dependencies, and without monthly fees.\n",[559,10244,10245],{"class":561,"line":569},[559,10246,944],{"emptyLinePlaceholder":167},[559,10248,10249],{"class":561,"line":584},[559,10250,10251],{},"You get full access to the source repository, including the Nitro API structure, strict TypeScript configuration, a dark and light theming system with zero flash of unstyled content, and accessible components that already pass WCAG AA.\n",[559,10253,10254],{"class":561,"line":595},[559,10255,944],{"emptyLinePlaceholder":167},[559,10257,10258],{"class":561,"line":607},[559,10259,10260],{},"## Why developers choose Nuxas\n",[559,10262,10263],{"class":561,"line":618},[559,10264,944],{"emptyLinePlaceholder":167},[559,10266,10267],{"class":561,"line":629},[559,10268,10269],{},"Most Nuxt boilerplates force you into their own abstractions. Nuxas does the opposite: idiomatic Nuxt code that reads like it was written by a senior engineer — easy to read, easy to change, easy to maintain.\n",[559,10271,10272],{"class":561,"line":640},[559,10273,944],{"emptyLinePlaceholder":167},[559,10275,10276],{"class":561,"line":651},[559,10277,10278],{},"- **Zero lock-in**: fork, modify, and deploy to Vercel, Cloudflare, or Netlify as you wish.\n",[559,10280,10281],{"class":561,"line":660},[559,10282,10283],{},"- **Full ownership**: one payment, lifetime updates.\n",[559,10285,10286],{"class":561,"line":669},[559,10287,10288],{},"- **Production-grade**: 14ms TTFB on the edge, Lighthouse 99+, no hydration mismatches.\n",[559,10290,10291],{"class":561,"line":676},[559,10292,944],{"emptyLinePlaceholder":167},[559,10294,10295],{"class":561,"line":684},[559,10296,10297],{},"## Who it is for\n",[559,10299,10300],{"class":561,"line":692},[559,10301,944],{"emptyLinePlaceholder":167},[559,10303,10304],{"class":561,"line":703},[559,10305,10306],{},"Freelancers and solo founders who want to launch a SaaS in days, not months. If you want to edit content without touching code, consider the [Nuxas + Decap CMS edition](\u002Fproducts\u002Fnuxas-cms) — an upgrade that gives you a no-code admin dashboard.\n",[480,10308,10309],{},"The body can be as long as you want. Use headings, paragraphs, lists, and internal links to make it readable.",[495,10311,10313],{"id":10312},"creating-a-new-product","Creating a New Product",[732,10315,1148],{"id":1147},[1150,10317,10318,10322,10326,10331,10421],{},[511,10319,1154,10320,792],{},[503,10321,1157],{},[511,10323,1160,10324,792],{},[484,10325,27],{},[511,10327,1166,10328,1170],{},[484,10329,10330],{},"New Product",[511,10332,1173,10333],{},[508,10334,10335,10340,10344,10349,10355,10360,10366,10372,10376,10382,10388,10394,10400,10405,10410,10416],{},[511,10336,10337,10339],{},[484,10338,1180],{}," — the product title.",[511,10341,10342,1229],{},[484,10343,1228],{},[511,10345,10346,6021],{},[484,10347,10348],{},"Price",[511,10350,10351,10354],{},[484,10352,10353],{},"Price Label"," — a string like \"one-time\".",[511,10356,10357,10359],{},[484,10358,1186],{}," — a full description.",[511,10361,10362,10365],{},[484,10363,10364],{},"Excerpt"," — a short summary.",[511,10367,10368,10371],{},[484,10369,10370],{},"Icon"," — one of the available icon names.",[511,10373,10374,1235],{},[484,10375,1234],{},[511,10377,10378,10381],{},[484,10379,10380],{},"Gallery"," — add 3 to 5 items, each with an image, title, and description.",[511,10383,10384,10387],{},[484,10385,10386],{},"Features"," — add 4 to 6 feature strings.",[511,10389,10390,10393],{},[484,10391,10392],{},"Specs"," — add 4 to 6 specs, each with a label and value.",[511,10395,10396,10399],{},[484,10397,10398],{},"Popular"," — toggle on if you want to highlight the product.",[511,10401,10402,6021],{},[484,10403,10404],{},"Order",[511,10406,10407,6060],{},[484,10408,10409],{},"Purchase Label",[511,10411,10412,10415],{},[484,10413,10414],{},"Purchase URL"," — the Gumroad or Fiverr link.",[511,10417,10418,10420],{},[484,10419,1246],{}," — the product body in Markdown.",[511,10422,1166,10423,1170],{},[484,10424,1252],{},[480,10426,1255,10427,10429],{},[503,10428,4412],{}," with a slug derived from the title.",[732,10431,1265],{"id":1264},[1150,10433,10434,10438,10442,10447,10449,10451,10453],{},[511,10435,1270,10436,1273],{},[503,10437,4412],{},[511,10439,1276,10440,792],{},[484,10441,1279],{},[511,10443,1282,10444,792],{},[503,10445,10446],{},"my-new-product.md",[511,10448,1287],{},[511,10450,1290],{},[511,10452,1293],{},[511,10454,1296,10455,792],{},[484,10456,1299],{},[495,10458,10460],{"id":10459},"reading-a-product","Reading a Product",[480,10462,10463,10464,10466],{},"To view a product on your local site, navigate to ",[503,10465,28],{}," and click on a product. Or go directly to the product URL:",[550,10468,10471],{"className":10469,"code":10470,"language":1315},[1313],"http:\u002F\u002Flocalhost:3000\u002Fproducts\u002Fnuxas-code\n",[503,10472,10470],{"__ignoreMap":555},[480,10474,10475],{},"The product detail page shows:",[508,10477,10478,10481,10484,10487,10490,10493,10496],{},[511,10479,10480],{},"The gallery at the top, with thumbnail navigation.",[511,10482,10483],{},"The badge, title, description, and price.",[511,10485,10486],{},"The purchase button.",[511,10488,10489],{},"The technical specs table.",[511,10491,10492],{},"The features list.",[511,10494,10495],{},"The product body in Markdown.",[511,10497,10498],{},"Related products at the bottom.",[495,10500,10502],{"id":10501},"updating-a-product","Updating a Product",[732,10504,1148],{"id":1350},[1150,10506,10507,10511,10515,10518,10520],{},[511,10508,1154,10509,792],{},[503,10510,1157],{},[511,10512,1160,10513,792],{},[484,10514,27],{},[511,10516,10517],{},"Click the product you want to edit.",[511,10519,1366],{},[511,10521,1166,10522,792],{},[484,10523,1252],{},[732,10525,1265],{"id":1373},[1150,10527,10528,10533,10535],{},[511,10529,10530,10531,792],{},"Open the product file in ",[503,10532,4412],{},[511,10534,1383],{},[511,10536,1296,10537,792],{},[484,10538,1299],{},[495,10540,10542],{"id":10541},"deleting-a-product","Deleting a Product",[732,10544,1148],{"id":1394},[1150,10546,10547,10551,10555,10558,10562],{},[511,10548,1154,10549,792],{},[503,10550,1157],{},[511,10552,1160,10553,792],{},[484,10554,27],{},[511,10556,10557],{},"Click the product you want to delete.",[511,10559,1410,10560,792],{},[484,10561,1413],{},[511,10563,1416],{},[732,10565,1265],{"id":1419},[1150,10567,10568,10572,10577],{},[511,10569,1270,10570,1273],{},[503,10571,4412],{},[511,10573,10574,10575,792],{},"Right-click the product file and choose ",[484,10576,1413],{},[511,10578,1416],{},[495,10580,1436],{"id":1435},[480,10582,10583],{},"Here is a complete product, ready to copy and adapt:",[550,10585,10587],{"className":930,"code":10586,"language":932,"meta":555,"style":555},"---\ntitle: My SaaS Template\nbadge: Best Seller\nprice: 39\npriceLabel: one-time\ndescription: A production-ready SaaS template built with Nuxt 4. Includes authentication, billing, a dashboard, and a full SEO pipeline.\nexcerpt: Launch your SaaS in days, not months.\nicon: layers\ncover: https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1555066931-4365d14bab8c?auto=format&fit=crop&w=1200&q=80\ngallery:\n  - image: https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1555066931-4365d14bab8c?auto=format&fit=crop&w=1200&q=80\n    title: Dashboard\n    desc: A fully responsive dashboard with dark mode.\n  - image: https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1551288059-bebda4e38f71?auto=format&fit=crop&w=1200&q=80\n    title: Billing\n    desc: Stripe integration with subscription management.\nfeatures:\n  - Full Nuxt 4 source code\n  - 100% strict TypeScript\n  - Dark and light theme\n  - Stripe integration\n  - WCAG AA accessible\n  - Lifetime updates\nspecs:\n  - label: Framework\n    value: Nuxt 4.14+\n  - label: Language\n    value: TypeScript\n  - label: Styling\n    value: Custom CSS tokens\n  - label: License\n    value: Single commercial project\npopular: true\norder: 1\npurchaseLabel: Buy Now\npurchaseUrl: https:\u002F\u002Fexample.com\u002Fbuy\n---\n\nThis is a complete SaaS template built with Nuxt 4. Everything you need to launch a product, without the boilerplate.\n\n## What is included\n\n- Full source code\n- Authentication\n- Billing\n- Dashboard\n- SEO pipeline\n\n## Who it is for\n\nFounders who want to ship fast without sacrificing code quality.\n\n**[Buy Now →](https:\u002F\u002Fexample.com\u002Fbuy)**\n",[503,10588,10589,10593,10598,10603,10608,10613,10618,10623,10628,10633,10638,10643,10648,10653,10658,10663,10668,10673,10678,10683,10688,10693,10698,10703,10708,10713,10718,10723,10728,10733,10738,10743,10748,10753,10758,10763,10768,10772,10776,10781,10785,10790,10794,10799,10804,10809,10814,10819,10823,10828,10833,10839,10844],{"__ignoreMap":555},[559,10590,10591],{"class":561,"line":562},[559,10592,566],{},[559,10594,10595],{"class":561,"line":569},[559,10596,10597],{},"title: My SaaS Template\n",[559,10599,10600],{"class":561,"line":584},[559,10601,10602],{},"badge: Best Seller\n",[559,10604,10605],{"class":561,"line":595},[559,10606,10607],{},"price: 39\n",[559,10609,10610],{"class":561,"line":607},[559,10611,10612],{},"priceLabel: one-time\n",[559,10614,10615],{"class":561,"line":618},[559,10616,10617],{},"description: A production-ready SaaS template built with Nuxt 4. Includes authentication, billing, a dashboard, and a full SEO pipeline.\n",[559,10619,10620],{"class":561,"line":629},[559,10621,10622],{},"excerpt: Launch your SaaS in days, not months.\n",[559,10624,10625],{"class":561,"line":640},[559,10626,10627],{},"icon: layers\n",[559,10629,10630],{"class":561,"line":651},[559,10631,10632],{},"cover: https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1555066931-4365d14bab8c?auto=format&fit=crop&w=1200&q=80\n",[559,10634,10635],{"class":561,"line":660},[559,10636,10637],{},"gallery:\n",[559,10639,10640],{"class":561,"line":669},[559,10641,10642],{},"  - image: https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1555066931-4365d14bab8c?auto=format&fit=crop&w=1200&q=80\n",[559,10644,10645],{"class":561,"line":676},[559,10646,10647],{},"    title: Dashboard\n",[559,10649,10650],{"class":561,"line":684},[559,10651,10652],{},"    desc: A fully responsive dashboard with dark mode.\n",[559,10654,10655],{"class":561,"line":692},[559,10656,10657],{},"  - image: https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1551288059-bebda4e38f71?auto=format&fit=crop&w=1200&q=80\n",[559,10659,10660],{"class":561,"line":703},[559,10661,10662],{},"    title: Billing\n",[559,10664,10665],{"class":561,"line":714},[559,10666,10667],{},"    desc: Stripe integration with subscription management.\n",[559,10669,10670],{"class":561,"line":725},[559,10671,10672],{},"features:\n",[559,10674,10675],{"class":561,"line":1529},[559,10676,10677],{},"  - Full Nuxt 4 source code\n",[559,10679,10680],{"class":561,"line":1535},[559,10681,10682],{},"  - 100% strict TypeScript\n",[559,10684,10685],{"class":561,"line":1540},[559,10686,10687],{},"  - Dark and light theme\n",[559,10689,10690],{"class":561,"line":1546},[559,10691,10692],{},"  - Stripe integration\n",[559,10694,10695],{"class":561,"line":1551},[559,10696,10697],{},"  - WCAG AA accessible\n",[559,10699,10700],{"class":561,"line":1557},[559,10701,10702],{},"  - Lifetime updates\n",[559,10704,10705],{"class":561,"line":1562},[559,10706,10707],{},"specs:\n",[559,10709,10710],{"class":561,"line":1568},[559,10711,10712],{},"  - label: Framework\n",[559,10714,10715],{"class":561,"line":1573},[559,10716,10717],{},"    value: Nuxt 4.14+\n",[559,10719,10720],{"class":561,"line":1579},[559,10721,10722],{},"  - label: Language\n",[559,10724,10725],{"class":561,"line":1584},[559,10726,10727],{},"    value: TypeScript\n",[559,10729,10730],{"class":561,"line":1590},[559,10731,10732],{},"  - label: Styling\n",[559,10734,10735],{"class":561,"line":1595},[559,10736,10737],{},"    value: Custom CSS tokens\n",[559,10739,10740],{"class":561,"line":1601},[559,10741,10742],{},"  - label: License\n",[559,10744,10745],{"class":561,"line":1606},[559,10746,10747],{},"    value: Single commercial project\n",[559,10749,10750],{"class":561,"line":1612},[559,10751,10752],{},"popular: true\n",[559,10754,10755],{"class":561,"line":1617},[559,10756,10757],{},"order: 1\n",[559,10759,10760],{"class":561,"line":1623},[559,10761,10762],{},"purchaseLabel: Buy Now\n",[559,10764,10765],{"class":561,"line":1628},[559,10766,10767],{},"purchaseUrl: https:\u002F\u002Fexample.com\u002Fbuy\n",[559,10769,10770],{"class":561,"line":1634},[559,10771,566],{},[559,10773,10774],{"class":561,"line":1639},[559,10775,944],{"emptyLinePlaceholder":167},[559,10777,10778],{"class":561,"line":1645},[559,10779,10780],{},"This is a complete SaaS template built with Nuxt 4. Everything you need to launch a product, without the boilerplate.\n",[559,10782,10783],{"class":561,"line":1650},[559,10784,944],{"emptyLinePlaceholder":167},[559,10786,10787],{"class":561,"line":1656},[559,10788,10789],{},"## What is included\n",[559,10791,10792],{"class":561,"line":1661},[559,10793,944],{"emptyLinePlaceholder":167},[559,10795,10796],{"class":561,"line":1667},[559,10797,10798],{},"- Full source code\n",[559,10800,10801],{"class":561,"line":1672},[559,10802,10803],{},"- Authentication\n",[559,10805,10806],{"class":561,"line":1678},[559,10807,10808],{},"- Billing\n",[559,10810,10811],{"class":561,"line":1683},[559,10812,10813],{},"- Dashboard\n",[559,10815,10816],{"class":561,"line":1689},[559,10817,10818],{},"- SEO pipeline\n",[559,10820,10821],{"class":561,"line":1694},[559,10822,944],{"emptyLinePlaceholder":167},[559,10824,10826],{"class":561,"line":10825},49,[559,10827,10297],{},[559,10829,10831],{"class":561,"line":10830},50,[559,10832,944],{"emptyLinePlaceholder":167},[559,10834,10836],{"class":561,"line":10835},51,[559,10837,10838],{},"Founders who want to ship fast without sacrificing code quality.\n",[559,10840,10842],{"class":561,"line":10841},52,[559,10843,944],{"emptyLinePlaceholder":167},[559,10845,10847],{"class":561,"line":10846},53,[559,10848,10849],{},"**[Buy Now →](https:\u002F\u002Fexample.com\u002Fbuy)**\n",[495,10851,1704],{"id":1703},[480,10853,1707,10854,10857],{},[484,10855,10856],{},"static pages"," — pages like About, Privacy, and Terms that are not blog posts or products. These pages are simpler than blog posts and products, but they still support rich content.",[480,10859,1714],{},[1716,10861,1718],{},{"title":555,"searchDepth":584,"depth":584,"links":10863},[10864],{"id":9596,"depth":569,"text":9591,"children":10865},[10866,10867,10884,10885,10889,10890,10894,10898,10899],{"id":9615,"depth":584,"text":9616},{"id":9644,"depth":584,"text":9645,"children":10868},[10869,10870,10871,10872,10873,10874,10875,10876,10877,10878,10879,10880,10881,10882,10883],{"id":573,"depth":595,"text":573},{"id":695,"depth":595,"text":695},{"id":6020,"depth":595,"text":6020},{"id":10046,"depth":595,"text":6028},{"id":587,"depth":595,"text":587},{"id":6036,"depth":595,"text":6036},{"id":5647,"depth":595,"text":5647},{"id":706,"depth":595,"text":706},{"id":9737,"depth":595,"text":9737},{"id":5594,"depth":595,"text":5594},{"id":9851,"depth":595,"text":9851},{"id":6044,"depth":595,"text":6044},{"id":7070,"depth":595,"text":7070},{"id":10196,"depth":595,"text":9975},{"id":10214,"depth":595,"text":9984},{"id":904,"depth":584,"text":905},{"id":10312,"depth":584,"text":10313,"children":10886},[10887,10888],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":10459,"depth":584,"text":10460},{"id":10501,"depth":584,"text":10502,"children":10891},[10892,10893],{"id":1350,"depth":595,"text":1148},{"id":1373,"depth":595,"text":1265},{"id":10541,"depth":584,"text":10542,"children":10895},[10896,10897],{"id":1394,"depth":595,"text":1148},{"id":1419,"depth":595,"text":1265},{"id":1435,"depth":584,"text":1436},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to creating, reading, updating, and deleting products in Nuxas. Learn every frontmatter field, how to add gallery images, and how to connect each product to a purchase URL.",{},"\u002Fdocs\u002F13-product-crud",{"title":9591,"description":10900},"docs\u002F13-product-crud","NRrPgn3Vav7BFoUEMG2LEqeEzbgowYFHhrgGvuMJxVY",{"id":10907,"title":10908,"badge":471,"body":10909,"description":12168,"extension":1763,"meta":12169,"navigation":167,"order":692,"path":12170,"section":6,"seo":12171,"stem":12172,"__hash__":12173},"docs\u002Fdocs\u002F14-static-page-crud.md","Managing Static Pages",{"type":473,"value":10910,"toc":12137},[10911,10914,10920,10923,10926,10930,10937,10962,10964,10984,10988,10994,11000,11440,11442,11444,11447,11452,11454,11457,11462,11464,11475,11480,11482,11487,11492,11494,11497,11502,11506,11521,11526,11530,11552,11557,11561,11574,11579,11581,11584,11587,11684,11686,11690,11692,11765,11769,11771,11796,11800,11803,11809,11812,11834,11838,11840,11859,11861,11874,11878,11880,11899,11901,11914,11918,11921,12120,12123,12125,12132,12134],[476,10912,10908],{"id":10913},"managing-static-pages",[480,10915,10916,10917,10919],{},"In the previous chapter, we managed products. Now we will manage ",[484,10918,10856],{}," — pages like About, Privacy, Terms of Service, and any other page that is not a blog post, a product, or part of the main site structure.",[480,10921,10922],{},"Static pages are the simplest content type in Nuxas. They have fewer fields than blog posts and products, and they do not have a gallery or a purchase URL. But they are just as important: they build trust, satisfy legal requirements, and answer common questions.",[480,10924,10925],{},"This chapter walks you through the entire lifecycle of a static page.",[495,10927,10929],{"id":10928},"where-static-pages-live","Where Static Pages Live",[480,10931,10932,10933,10936],{},"All static pages live in ",[503,10934,10935],{},"content\u002Fpages\u002F",". Each page is a separate Markdown file. The filename becomes the URL slug for the page. For example:",[508,10938,10939,10946,10954],{},[511,10940,10941,516,10944],{},[503,10942,10943],{},"content\u002Fpages\u002Fabout.md",[503,10945,25],{},[511,10947,10948,516,10951],{},[503,10949,10950],{},"content\u002Fpages\u002Fprivacy.md",[503,10952,10953],{},"\u002Fprivacy",[511,10955,10956,516,10959],{},[503,10957,10958],{},"content\u002Fpages\u002Fterms.md",[503,10960,10961],{},"\u002Fterms",[480,10963,9641],{},[480,10965,10966,10969,10970,10972,10973,3706,10976,10979,10980,10983],{},[484,10967,10968],{},"Note:"," Nuxas rewrites the URL of every page in ",[503,10971,10935],{}," from ",[503,10974,10975],{},"\u002Fpages\u002F[slug]",[503,10977,10978],{},"\u002F[slug]",". This is done through a Nuxt configuration called ",[503,10981,10982],{},"pages:extend",". You do not need to do anything — the rewrite is automatic.",[495,10985,10987],{"id":10986},"understanding-the-static-page-frontmatter","Understanding the Static Page Frontmatter",[480,10989,10990,10991,10993],{},"Every static page starts with a block of YAML between two ",[503,10992,540],{}," lines. This is the frontmatter. It defines the page metadata: the title, description, heading, and optional sections like stats, pillars, and team.",[480,10995,10996,10997,10999],{},"Here is a complete example of a static page frontmatter (from ",[503,10998,10943],{},"):",[550,11001,11003],{"className":552,"code":11002,"language":554,"meta":555,"style":555},"---\ntitle: About NuxtSass Starter — Engineering Ethos Behind the Nuxt 4 SaaS Template\ndescription: Discover why we built NuxtSass Starter, the production-grade Nuxt 4 SaaS template. Idiomatic Nuxt code, zero bloat, WCAG AA accessibility, and a workflow designed for founders who ship.\ntag: Engineering Ethos\nheading: Crafted for Builders Who Respect Nuxt Craftsmanship\nintro: We built NuxtSass Starter because we were exhausted by bloated starter kits that required two weeks of deleting code before you could start building.\nstats:\n  - value: 90+\n    label: Lighthouse Score\n  - value: 14ms\n    label: Average TTFB\n  - value: 45+\n    label: Pre-Built Composables\n  - value: 1,200+\n    label: Active Founders\npillarsTag: Guiding Principles\npillarsTitle: The Four Pillars of NuxtSass\npillars:\n  - icon: check\n    title: \"1. Nuxt Idiomatic\"\n    desc: Zero invented abstractions. We write composables the way the Nuxt team designed them.\n  - icon: slash\n    title: \"2. Zero Hidden Bloat\"\n    desc: No monolithic runtime baggage. Every package included has a specific, documented purpose.\n  - icon: shield\n    title: \"3. Accessibility First\"\n    desc: Full keyboard accessibility, contrast standards, and proper ARIA semantics.\n  - icon: star\n    title: \"4. Production Rigor\"\n    desc: Tested against real payment failure edge-cases and multi-tenant schema isolation.\nteamTag: Core Maintainers\nteamTitle: Engineered by Practitioners\nteamDesc: Meet the engineers maintaining and constantly updating the codebase.\nteam:\n  - initials: AV\n    name: Alex Vance\n    role: Architecture & Nitro Engine\n    bio: Former full-stack lead at edge cloud startups; 8 years building production Vue and Nuxt apps.\n  - initials: EK\n    name: Elena Kostas\n    role: Security & Billing Systems\n    bio: Stripe certified developer specializing in billing workflows, webhook resiliency, and authorization.\n  - initials: SC\n    name: Sarah Chen\n    role: UI\u002FUX & Design System\n    bio: Design technologist passionate about WCAG AA accessibility, fluid typography, and zero-flicker themes.\n---\n",[503,11004,11005,11009,11018,11027,11036,11045,11054,11061,11072,11081,11091,11100,11110,11119,11130,11139,11149,11159,11166,11177,11186,11195,11206,11215,11224,11235,11244,11253,11264,11273,11282,11292,11302,11312,11319,11330,11340,11350,11360,11371,11380,11389,11398,11409,11418,11427,11436],{"__ignoreMap":555},[559,11006,11007],{"class":561,"line":562},[559,11008,566],{"class":565},[559,11010,11011,11013,11015],{"class":561,"line":569},[559,11012,573],{"class":572},[559,11014,577],{"class":576},[559,11016,11017],{"class":580},"About NuxtSass Starter — Engineering Ethos Behind the Nuxt 4 SaaS Template\n",[559,11019,11020,11022,11024],{"class":561,"line":584},[559,11021,587],{"class":572},[559,11023,577],{"class":576},[559,11025,11026],{"class":580},"Discover why we built NuxtSass Starter, the production-grade Nuxt 4 SaaS template. Idiomatic Nuxt code, zero bloat, WCAG AA accessibility, and a workflow designed for founders who ship.\n",[559,11028,11029,11031,11033],{"class":561,"line":595},[559,11030,6787],{"class":572},[559,11032,577],{"class":576},[559,11034,11035],{"class":580},"Engineering Ethos\n",[559,11037,11038,11040,11042],{"class":561,"line":607},[559,11039,6797],{"class":572},[559,11041,577],{"class":576},[559,11043,11044],{"class":580},"Crafted for Builders Who Respect Nuxt Craftsmanship\n",[559,11046,11047,11049,11051],{"class":561,"line":618},[559,11048,6807],{"class":572},[559,11050,577],{"class":576},[559,11052,11053],{"class":580},"We built NuxtSass Starter because we were exhausted by bloated starter kits that required two weeks of deleting code before you could start building.\n",[559,11055,11056,11059],{"class":561,"line":629},[559,11057,11058],{"class":572},"stats",[559,11060,657],{"class":576},[559,11062,11063,11065,11067,11069],{"class":561,"line":640},[559,11064,663],{"class":576},[559,11066,10164],{"class":572},[559,11068,577],{"class":576},[559,11070,11071],{"class":580},"90+\n",[559,11073,11074,11076,11078],{"class":561,"line":651},[559,11075,5274],{"class":572},[559,11077,577],{"class":576},[559,11079,11080],{"class":580},"Lighthouse Score\n",[559,11082,11083,11085,11087,11089],{"class":561,"line":660},[559,11084,663],{"class":576},[559,11086,10164],{"class":572},[559,11088,577],{"class":576},[559,11090,5546],{"class":580},[559,11092,11093,11095,11097],{"class":561,"line":669},[559,11094,5274],{"class":572},[559,11096,577],{"class":576},[559,11098,11099],{"class":580},"Average TTFB\n",[559,11101,11102,11104,11106,11108],{"class":561,"line":676},[559,11103,663],{"class":576},[559,11105,10164],{"class":572},[559,11107,577],{"class":576},[559,11109,5567],{"class":580},[559,11111,11112,11114,11116],{"class":561,"line":684},[559,11113,5274],{"class":572},[559,11115,577],{"class":576},[559,11117,11118],{"class":580},"Pre-Built Composables\n",[559,11120,11121,11123,11125,11127],{"class":561,"line":692},[559,11122,663],{"class":576},[559,11124,10164],{"class":572},[559,11126,577],{"class":576},[559,11128,11129],{"class":580},"1,200+\n",[559,11131,11132,11134,11136],{"class":561,"line":703},[559,11133,5274],{"class":572},[559,11135,577],{"class":576},[559,11137,11138],{"class":580},"Active Founders\n",[559,11140,11141,11144,11146],{"class":561,"line":714},[559,11142,11143],{"class":572},"pillarsTag",[559,11145,577],{"class":576},[559,11147,11148],{"class":580},"Guiding Principles\n",[559,11150,11151,11154,11156],{"class":561,"line":725},[559,11152,11153],{"class":572},"pillarsTitle",[559,11155,577],{"class":576},[559,11157,11158],{"class":580},"The Four Pillars of NuxtSass\n",[559,11160,11161,11164],{"class":561,"line":1529},[559,11162,11163],{"class":572},"pillars",[559,11165,657],{"class":576},[559,11167,11168,11170,11172,11174],{"class":561,"line":1535},[559,11169,663],{"class":576},[559,11171,5647],{"class":572},[559,11173,577],{"class":576},[559,11175,11176],{"class":580},"check\n",[559,11178,11179,11181,11183],{"class":561,"line":1540},[559,11180,9755],{"class":572},[559,11182,577],{"class":576},[559,11184,11185],{"class":580},"\"1. Nuxt Idiomatic\"\n",[559,11187,11188,11190,11192],{"class":561,"line":1546},[559,11189,9765],{"class":572},[559,11191,577],{"class":576},[559,11193,11194],{"class":580},"Zero invented abstractions. We write composables the way the Nuxt team designed them.\n",[559,11196,11197,11199,11201,11203],{"class":561,"line":1551},[559,11198,663],{"class":576},[559,11200,5647],{"class":572},[559,11202,577],{"class":576},[559,11204,11205],{"class":580},"slash\n",[559,11207,11208,11210,11212],{"class":561,"line":1557},[559,11209,9755],{"class":572},[559,11211,577],{"class":576},[559,11213,11214],{"class":580},"\"2. Zero Hidden Bloat\"\n",[559,11216,11217,11219,11221],{"class":561,"line":1562},[559,11218,9765],{"class":572},[559,11220,577],{"class":576},[559,11222,11223],{"class":580},"No monolithic runtime baggage. Every package included has a specific, documented purpose.\n",[559,11225,11226,11228,11230,11232],{"class":561,"line":1568},[559,11227,663],{"class":576},[559,11229,5647],{"class":572},[559,11231,577],{"class":576},[559,11233,11234],{"class":580},"shield\n",[559,11236,11237,11239,11241],{"class":561,"line":1573},[559,11238,9755],{"class":572},[559,11240,577],{"class":576},[559,11242,11243],{"class":580},"\"3. Accessibility First\"\n",[559,11245,11246,11248,11250],{"class":561,"line":1579},[559,11247,9765],{"class":572},[559,11249,577],{"class":576},[559,11251,11252],{"class":580},"Full keyboard accessibility, contrast standards, and proper ARIA semantics.\n",[559,11254,11255,11257,11259,11261],{"class":561,"line":1584},[559,11256,663],{"class":576},[559,11258,5647],{"class":572},[559,11260,577],{"class":576},[559,11262,11263],{"class":580},"star\n",[559,11265,11266,11268,11270],{"class":561,"line":1590},[559,11267,9755],{"class":572},[559,11269,577],{"class":576},[559,11271,11272],{"class":580},"\"4. Production Rigor\"\n",[559,11274,11275,11277,11279],{"class":561,"line":1595},[559,11276,9765],{"class":572},[559,11278,577],{"class":576},[559,11280,11281],{"class":580},"Tested against real payment failure edge-cases and multi-tenant schema isolation.\n",[559,11283,11284,11287,11289],{"class":561,"line":1601},[559,11285,11286],{"class":572},"teamTag",[559,11288,577],{"class":576},[559,11290,11291],{"class":580},"Core Maintainers\n",[559,11293,11294,11297,11299],{"class":561,"line":1606},[559,11295,11296],{"class":572},"teamTitle",[559,11298,577],{"class":576},[559,11300,11301],{"class":580},"Engineered by Practitioners\n",[559,11303,11304,11307,11309],{"class":561,"line":1612},[559,11305,11306],{"class":572},"teamDesc",[559,11308,577],{"class":576},[559,11310,11311],{"class":580},"Meet the engineers maintaining and constantly updating the codebase.\n",[559,11313,11314,11317],{"class":561,"line":1617},[559,11315,11316],{"class":572},"team",[559,11318,657],{"class":576},[559,11320,11321,11323,11325,11327],{"class":561,"line":1623},[559,11322,663],{"class":576},[559,11324,6183],{"class":572},[559,11326,577],{"class":576},[559,11328,11329],{"class":580},"AV\n",[559,11331,11332,11335,11337],{"class":561,"line":1628},[559,11333,11334],{"class":572},"    name",[559,11336,577],{"class":576},[559,11338,11339],{"class":580},"Alex Vance\n",[559,11341,11342,11345,11347],{"class":561,"line":1634},[559,11343,11344],{"class":572},"    role",[559,11346,577],{"class":576},[559,11348,11349],{"class":580},"Architecture & Nitro Engine\n",[559,11351,11352,11355,11357],{"class":561,"line":1639},[559,11353,11354],{"class":572},"    bio",[559,11356,577],{"class":576},[559,11358,11359],{"class":580},"Former full-stack lead at edge cloud startups; 8 years building production Vue and Nuxt apps.\n",[559,11361,11362,11364,11366,11368],{"class":561,"line":1645},[559,11363,663],{"class":576},[559,11365,6183],{"class":572},[559,11367,577],{"class":576},[559,11369,11370],{"class":580},"EK\n",[559,11372,11373,11375,11377],{"class":561,"line":1650},[559,11374,11334],{"class":572},[559,11376,577],{"class":576},[559,11378,11379],{"class":580},"Elena Kostas\n",[559,11381,11382,11384,11386],{"class":561,"line":1656},[559,11383,11344],{"class":572},[559,11385,577],{"class":576},[559,11387,11388],{"class":580},"Security & Billing Systems\n",[559,11390,11391,11393,11395],{"class":561,"line":1661},[559,11392,11354],{"class":572},[559,11394,577],{"class":576},[559,11396,11397],{"class":580},"Stripe certified developer specializing in billing workflows, webhook resiliency, and authorization.\n",[559,11399,11400,11402,11404,11406],{"class":561,"line":1667},[559,11401,663],{"class":576},[559,11403,6183],{"class":572},[559,11405,577],{"class":576},[559,11407,11408],{"class":580},"SC\n",[559,11410,11411,11413,11415],{"class":561,"line":1672},[559,11412,11334],{"class":572},[559,11414,577],{"class":576},[559,11416,11417],{"class":580},"Sarah Chen\n",[559,11419,11420,11422,11424],{"class":561,"line":1678},[559,11421,11344],{"class":572},[559,11423,577],{"class":576},[559,11425,11426],{"class":580},"UI\u002FUX & Design System\n",[559,11428,11429,11431,11433],{"class":561,"line":1683},[559,11430,11354],{"class":572},[559,11432,577],{"class":576},[559,11434,11435],{"class":580},"Design technologist passionate about WCAG AA accessibility, fluid typography, and zero-flicker themes.\n",[559,11437,11438],{"class":561,"line":1689},[559,11439,566],{"class":565},[480,11441,730],{},[732,11443,573],{"id":573},[480,11445,11446],{},"The page title. It appears in the browser tab and in search engine results.",[480,11448,11449,11451],{},[484,11450,745],{}," Keep it under 60 characters for best SEO.",[732,11453,587],{"id":587},[480,11455,11456],{},"A one-sentence summary of the page. It appears in search engine results and social media previews.",[480,11458,11459,11461],{},[484,11460,745],{}," Keep it between 120 and 160 characters.",[732,11463,6787],{"id":6787},[480,11465,11466,11467,779,11470,779,11473,792],{},"A small label that appears above the heading. Examples: ",[503,11468,11469],{},"Engineering Ethos",[503,11471,11472],{},"Legal",[503,11474,2134],{},[480,11476,11477,11479],{},[484,11478,745],{}," Use the tag to categorize the page. For an About page, \"Engineering Ethos\" is appropriate. For a Privacy policy, \"Legal\" is appropriate.",[732,11481,6797],{"id":6797},[480,11483,11484,11485,792],{},"The main heading of the page, rendered as an ",[503,11486,739],{},[480,11488,11489,11491],{},[484,11490,745],{}," Make it descriptive and engaging. \"Crafted for Builders Who Respect Nuxt Craftsmanship\" is better than \"About\".",[732,11493,6807],{"id":6807},[480,11495,11496],{},"A paragraph below the heading, explaining what the page is about.",[480,11498,11499,11501],{},[484,11500,745],{}," The intro should be one or two sentences. The rest of the content goes in the body.",[732,11503,11505],{"id":11504},"stats-optional","stats (optional)",[480,11507,11508,11509,11511,11512,823,11515,11517,11518,11520],{},"An array of statistics. Each stat has a ",[503,11510,10164],{}," (a short string like ",[503,11513,11514],{},"90+",[503,11516,84],{},") and a ",[503,11519,5076],{}," (a short description). Stats are rendered as a grid of cards below the intro.",[480,11522,11523,11525],{},[484,11524,745],{}," Use 3 to 4 stats. Too few and the section looks empty; too many and the numbers lose impact.",[732,11527,11529],{"id":11528},"pillarstag-pillarstitle-pillars-optional","pillarsTag, pillarsTitle, pillars (optional)",[480,11531,11532,11533,11535,11536,779,11539,779,11542,779,11544,5686,11547,5689,11549,11551],{},"A section of \"pillars\" — values, principles, or key features. Each pillar has an ",[503,11534,5647],{}," (one of ",[503,11537,11538],{},"check",[503,11540,11541],{},"slash",[503,11543,109],{},[503,11545,11546],{},"star",[503,11548,573],{},[503,11550,5692],{},". Pillars are rendered as a grid of cards.",[480,11553,11554,11556],{},[484,11555,745],{}," Use 4 pillars for best layout. Each pillar should be a distinct principle or feature.",[732,11558,11560],{"id":11559},"teamtag-teamtitle-teamdesc-team-optional","teamTag, teamTitle, teamDesc, team (optional)",[480,11562,11563,11564,779,11566,779,11568,4042,11570,11573],{},"A section of team members. Each member has ",[503,11565,6183],{},[503,11567,3612],{},[503,11569,6189],{},[503,11571,11572],{},"bio",". Team members are rendered as a grid of cards with avatars.",[480,11575,11576,11578],{},[484,11577,745],{}," Use 3 team members for best layout. Include real photos or initials.",[495,11580,905],{"id":904},[480,11582,11583],{},"Below the frontmatter, the body of the page is written in Markdown. The body appears below the intro and any optional sections.",[480,11585,11586],{},"Here is an example body for an About page:",[550,11588,11590],{"className":930,"code":11589,"language":932,"meta":555,"style":555},"## Our Story: The Problem with Traditional Boilerplates\n\nWhen Nuxt 4 released with its revolutionary Nitro engine, the developer experience for full-stack Vue applications took a massive leap forward. Yet, the ecosystem remained flooded with templates ported haphazardly from other frameworks, laden with outdated dependencies, obscure abstractions, and fragile state hydration.\n\nIn late 2024, our team of veteran Vue core contributors and indie founders decided to design a definitive starter: one that embraces idiomatic Nuxt patterns, adheres strictly to web standards, and stays lean enough to adapt to any business model.\n\n## Why Most Nuxt Themes Fail Their Buyers\n\nWe audited dozens of commercial Nuxt themes before writing a single line of Nuxas. The same failures repeated:\n\n- **Ports from React with no understanding of Vue's reactivity model.**\n- **SEO as an afterthought.**\n- **Bloated dependency trees.**\n- **Zero accessibility.**\n\nNuxas was built as a direct answer to each of those failures.\n\n## What We Believe\n\nWe believe a template should not obscure the framework. It should teach idiomatic patterns while removing friction. We believe performance and accessibility are not premium features — they are the baseline. And we believe you should own what you build, not rent it.\n",[503,11591,11592,11597,11601,11606,11610,11615,11619,11624,11628,11633,11637,11642,11647,11652,11657,11661,11666,11670,11675,11679],{"__ignoreMap":555},[559,11593,11594],{"class":561,"line":562},[559,11595,11596],{},"## Our Story: The Problem with Traditional Boilerplates\n",[559,11598,11599],{"class":561,"line":569},[559,11600,944],{"emptyLinePlaceholder":167},[559,11602,11603],{"class":561,"line":584},[559,11604,11605],{},"When Nuxt 4 released with its revolutionary Nitro engine, the developer experience for full-stack Vue applications took a massive leap forward. Yet, the ecosystem remained flooded with templates ported haphazardly from other frameworks, laden with outdated dependencies, obscure abstractions, and fragile state hydration.\n",[559,11607,11608],{"class":561,"line":595},[559,11609,944],{"emptyLinePlaceholder":167},[559,11611,11612],{"class":561,"line":607},[559,11613,11614],{},"In late 2024, our team of veteran Vue core contributors and indie founders decided to design a definitive starter: one that embraces idiomatic Nuxt patterns, adheres strictly to web standards, and stays lean enough to adapt to any business model.\n",[559,11616,11617],{"class":561,"line":618},[559,11618,944],{"emptyLinePlaceholder":167},[559,11620,11621],{"class":561,"line":629},[559,11622,11623],{},"## Why Most Nuxt Themes Fail Their Buyers\n",[559,11625,11626],{"class":561,"line":640},[559,11627,944],{"emptyLinePlaceholder":167},[559,11629,11630],{"class":561,"line":651},[559,11631,11632],{},"We audited dozens of commercial Nuxt themes before writing a single line of Nuxas. The same failures repeated:\n",[559,11634,11635],{"class":561,"line":660},[559,11636,944],{"emptyLinePlaceholder":167},[559,11638,11639],{"class":561,"line":669},[559,11640,11641],{},"- **Ports from React with no understanding of Vue's reactivity model.**\n",[559,11643,11644],{"class":561,"line":676},[559,11645,11646],{},"- **SEO as an afterthought.**\n",[559,11648,11649],{"class":561,"line":684},[559,11650,11651],{},"- **Bloated dependency trees.**\n",[559,11653,11654],{"class":561,"line":692},[559,11655,11656],{},"- **Zero accessibility.**\n",[559,11658,11659],{"class":561,"line":703},[559,11660,944],{"emptyLinePlaceholder":167},[559,11662,11663],{"class":561,"line":714},[559,11664,11665],{},"Nuxas was built as a direct answer to each of those failures.\n",[559,11667,11668],{"class":561,"line":725},[559,11669,944],{"emptyLinePlaceholder":167},[559,11671,11672],{"class":561,"line":1529},[559,11673,11674],{},"## What We Believe\n",[559,11676,11677],{"class":561,"line":1535},[559,11678,944],{"emptyLinePlaceholder":167},[559,11680,11681],{"class":561,"line":1540},[559,11682,11683],{},"We believe a template should not obscure the framework. It should teach idiomatic patterns while removing friction. We believe performance and accessibility are not premium features — they are the baseline. And we believe you should own what you build, not rent it.\n",[480,11685,10309],{},[495,11687,11689],{"id":11688},"creating-a-new-static-page","Creating a New Static Page",[732,11691,1148],{"id":1147},[1150,11693,11694,11698,11702,11707,11761],{},[511,11695,1154,11696,792],{},[503,11697,1157],{},[511,11699,1160,11700,792],{},[484,11701,4733],{},[511,11703,1166,11704,1170],{},[484,11705,11706],{},"New Static Page",[511,11708,1173,11709],{},[508,11710,11711,11716,11720,11726,11732,11738,11743,11749,11755],{},[511,11712,11713,11715],{},[484,11714,1180],{}," — the page title.",[511,11717,11718,10365],{},[484,11719,1186],{},[511,11721,11722,11725],{},[484,11723,11724],{},"Tag"," — a category label.",[511,11727,11728,11731],{},[484,11729,11730],{},"Heading"," — the main heading.",[511,11733,11734,11737],{},[484,11735,11736],{},"Intro"," — a paragraph.",[511,11739,11740,11742],{},[484,11741,1246],{}," — the page content in Markdown.",[511,11744,11745,11748],{},[484,11746,11747],{},"Stats"," — optional, add statistics.",[511,11750,11751,11754],{},[484,11752,11753],{},"Pillars"," — optional, add pillars.",[511,11756,11757,11760],{},[484,11758,11759],{},"Team"," — optional, add team members.",[511,11762,1166,11763,1170],{},[484,11764,1252],{},[480,11766,1255,11767,10429],{},[503,11768,10935],{},[732,11770,1265],{"id":1264},[1150,11772,11773,11777,11781,11786,11788,11790,11792],{},[511,11774,1270,11775,1273],{},[503,11776,10935],{},[511,11778,1276,11779,792],{},[484,11780,1279],{},[511,11782,1282,11783,792],{},[503,11784,11785],{},"privacy.md",[511,11787,1287],{},[511,11789,1290],{},[511,11791,1293],{},[511,11793,1296,11794,792],{},[484,11795,1299],{},[495,11797,11799],{"id":11798},"reading-a-static-page","Reading a Static Page",[480,11801,11802],{},"To view a static page on your local site, go directly to the page URL:",[550,11804,11807],{"className":11805,"code":11806,"language":1315},[1313],"http:\u002F\u002Flocalhost:3000\u002Fabout\nhttp:\u002F\u002Flocalhost:3000\u002Fprivacy\nhttp:\u002F\u002Flocalhost:3000\u002Fterms\n",[503,11808,11806],{"__ignoreMap":555},[480,11810,11811],{},"The page shows:",[508,11813,11814,11817,11820,11823,11826,11829],{},[511,11815,11816],{},"The tag, heading, and intro at the top.",[511,11818,11819],{},"The body in Markdown.",[511,11821,11822],{},"Stats (if defined).",[511,11824,11825],{},"Pillars (if defined).",[511,11827,11828],{},"Team (if defined).",[511,11830,11831,11832,1343],{},"A call-to-action band at the bottom (if defined in ",[503,11833,4174],{},[495,11835,11837],{"id":11836},"updating-a-static-page","Updating a Static Page",[732,11839,1148],{"id":1350},[1150,11841,11842,11846,11850,11853,11855],{},[511,11843,1154,11844,792],{},[503,11845,1157],{},[511,11847,1160,11848,792],{},[484,11849,4733],{},[511,11851,11852],{},"Click the page you want to edit.",[511,11854,1366],{},[511,11856,1166,11857,792],{},[484,11858,1252],{},[732,11860,1265],{"id":1373},[1150,11862,11863,11868,11870],{},[511,11864,11865,11866,792],{},"Open the page file in ",[503,11867,10935],{},[511,11869,1383],{},[511,11871,1296,11872,792],{},[484,11873,1299],{},[495,11875,11877],{"id":11876},"deleting-a-static-page","Deleting a Static Page",[732,11879,1148],{"id":1394},[1150,11881,11882,11886,11890,11893,11897],{},[511,11883,1154,11884,792],{},[503,11885,1157],{},[511,11887,1160,11888,792],{},[484,11889,4733],{},[511,11891,11892],{},"Click the page you want to delete.",[511,11894,1410,11895,792],{},[484,11896,1413],{},[511,11898,1416],{},[732,11900,1265],{"id":1419},[1150,11902,11903,11907,11912],{},[511,11904,1270,11905,1273],{},[503,11906,10935],{},[511,11908,11909,11910,792],{},"Right-click the page file and choose ",[484,11911,1413],{},[511,11913,1416],{},[495,11915,11917],{"id":11916},"a-complete-example-privacy-policy","A Complete Example: Privacy Policy",[480,11919,11920],{},"Here is a complete Privacy Policy page, ready to copy and adapt:",[550,11922,11924],{"className":930,"code":11923,"language":932,"meta":555,"style":555},"---\ntitle: Privacy Policy — My SaaS\ndescription: Our privacy policy explains what data we collect, how we use it, and how we protect it.\ntag: Legal\nheading: Privacy Policy\nintro: Your privacy matters. This page explains what data we collect, how we use it, and how we protect it.\n---\n\n## What We Collect\n\nWe collect the minimum amount of data necessary to run our service:\n\n- **Account information** — your name and email address, provided when you create an account.\n- **Payment information** — processed by Stripe. We do not store your card details.\n- **Usage data** — anonymous analytics about how you use the site.\n\n## How We Use Your Data\n\nWe use your data to:\n\n- Provide and improve the service.\n- Send transactional emails (receipts, password resets).\n- Respond to your support requests.\n\nWe do not sell your data. We do not share it with third parties except where required to provide the service (e.g., Stripe for payments).\n\n## Your Rights\n\nYou have the right to:\n\n- Access your data.\n- Correct your data.\n- Delete your data.\n- Export your data.\n\nTo exercise any of these rights, contact us at [support@example.com](mailto:support@example.com).\n\n## Changes to This Policy\n\nWe may update this policy from time to time. When we do, we will notify you by email.\n\n_Last updated: January 2026._\n",[503,11925,11926,11930,11935,11940,11945,11950,11955,11959,11963,11968,11972,11977,11981,11986,11991,11996,12000,12005,12009,12014,12018,12023,12028,12033,12037,12042,12046,12051,12055,12060,12064,12069,12074,12079,12084,12088,12093,12097,12102,12106,12111,12115],{"__ignoreMap":555},[559,11927,11928],{"class":561,"line":562},[559,11929,566],{},[559,11931,11932],{"class":561,"line":569},[559,11933,11934],{},"title: Privacy Policy — My SaaS\n",[559,11936,11937],{"class":561,"line":584},[559,11938,11939],{},"description: Our privacy policy explains what data we collect, how we use it, and how we protect it.\n",[559,11941,11942],{"class":561,"line":595},[559,11943,11944],{},"tag: Legal\n",[559,11946,11947],{"class":561,"line":607},[559,11948,11949],{},"heading: Privacy Policy\n",[559,11951,11952],{"class":561,"line":618},[559,11953,11954],{},"intro: Your privacy matters. This page explains what data we collect, how we use it, and how we protect it.\n",[559,11956,11957],{"class":561,"line":629},[559,11958,566],{},[559,11960,11961],{"class":561,"line":640},[559,11962,944],{"emptyLinePlaceholder":167},[559,11964,11965],{"class":561,"line":651},[559,11966,11967],{},"## What We Collect\n",[559,11969,11970],{"class":561,"line":660},[559,11971,944],{"emptyLinePlaceholder":167},[559,11973,11974],{"class":561,"line":669},[559,11975,11976],{},"We collect the minimum amount of data necessary to run our service:\n",[559,11978,11979],{"class":561,"line":676},[559,11980,944],{"emptyLinePlaceholder":167},[559,11982,11983],{"class":561,"line":684},[559,11984,11985],{},"- **Account information** — your name and email address, provided when you create an account.\n",[559,11987,11988],{"class":561,"line":692},[559,11989,11990],{},"- **Payment information** — processed by Stripe. We do not store your card details.\n",[559,11992,11993],{"class":561,"line":703},[559,11994,11995],{},"- **Usage data** — anonymous analytics about how you use the site.\n",[559,11997,11998],{"class":561,"line":714},[559,11999,944],{"emptyLinePlaceholder":167},[559,12001,12002],{"class":561,"line":725},[559,12003,12004],{},"## How We Use Your Data\n",[559,12006,12007],{"class":561,"line":1529},[559,12008,944],{"emptyLinePlaceholder":167},[559,12010,12011],{"class":561,"line":1535},[559,12012,12013],{},"We use your data to:\n",[559,12015,12016],{"class":561,"line":1540},[559,12017,944],{"emptyLinePlaceholder":167},[559,12019,12020],{"class":561,"line":1546},[559,12021,12022],{},"- Provide and improve the service.\n",[559,12024,12025],{"class":561,"line":1551},[559,12026,12027],{},"- Send transactional emails (receipts, password resets).\n",[559,12029,12030],{"class":561,"line":1557},[559,12031,12032],{},"- Respond to your support requests.\n",[559,12034,12035],{"class":561,"line":1562},[559,12036,944],{"emptyLinePlaceholder":167},[559,12038,12039],{"class":561,"line":1568},[559,12040,12041],{},"We do not sell your data. We do not share it with third parties except where required to provide the service (e.g., Stripe for payments).\n",[559,12043,12044],{"class":561,"line":1573},[559,12045,944],{"emptyLinePlaceholder":167},[559,12047,12048],{"class":561,"line":1579},[559,12049,12050],{},"## Your Rights\n",[559,12052,12053],{"class":561,"line":1584},[559,12054,944],{"emptyLinePlaceholder":167},[559,12056,12057],{"class":561,"line":1590},[559,12058,12059],{},"You have the right to:\n",[559,12061,12062],{"class":561,"line":1595},[559,12063,944],{"emptyLinePlaceholder":167},[559,12065,12066],{"class":561,"line":1601},[559,12067,12068],{},"- Access your data.\n",[559,12070,12071],{"class":561,"line":1606},[559,12072,12073],{},"- Correct your data.\n",[559,12075,12076],{"class":561,"line":1612},[559,12077,12078],{},"- Delete your data.\n",[559,12080,12081],{"class":561,"line":1617},[559,12082,12083],{},"- Export your data.\n",[559,12085,12086],{"class":561,"line":1623},[559,12087,944],{"emptyLinePlaceholder":167},[559,12089,12090],{"class":561,"line":1628},[559,12091,12092],{},"To exercise any of these rights, contact us at [support@example.com](mailto:support@example.com).\n",[559,12094,12095],{"class":561,"line":1634},[559,12096,944],{"emptyLinePlaceholder":167},[559,12098,12099],{"class":561,"line":1639},[559,12100,12101],{},"## Changes to This Policy\n",[559,12103,12104],{"class":561,"line":1645},[559,12105,944],{"emptyLinePlaceholder":167},[559,12107,12108],{"class":561,"line":1650},[559,12109,12110],{},"We may update this policy from time to time. When we do, we will notify you by email.\n",[559,12112,12113],{"class":561,"line":1656},[559,12114,944],{"emptyLinePlaceholder":167},[559,12116,12117],{"class":561,"line":1661},[559,12118,12119],{},"_Last updated: January 2026._\n",[480,12121,12122],{},"This example has a complete frontmatter, a body with sections for what is collected, how it is used, rights, and changes. Copy it, change the values, and you have a Privacy Policy page.",[495,12124,1704],{"id":1703},[480,12126,12127,12128,12131],{},"In the next chapter, we will do a ",[484,12129,12130],{},"pre-push check"," — a set of things to verify before you push your code to GitHub and deploy to production. This is a short but important chapter. It will save you from embarrassing mistakes like broken links, missing images, or incorrect URLs.",[480,12133,1714],{},[1716,12135,12136],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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);}",{"title":555,"searchDepth":584,"depth":584,"links":12138},[12139],{"id":10913,"depth":569,"text":10908,"children":12140},[12141,12142,12152,12153,12157,12158,12162,12166,12167],{"id":10928,"depth":584,"text":10929},{"id":10986,"depth":584,"text":10987,"children":12143},[12144,12145,12146,12147,12148,12149,12150,12151],{"id":573,"depth":595,"text":573},{"id":587,"depth":595,"text":587},{"id":6787,"depth":595,"text":6787},{"id":6797,"depth":595,"text":6797},{"id":6807,"depth":595,"text":6807},{"id":11504,"depth":595,"text":11505},{"id":11528,"depth":595,"text":11529},{"id":11559,"depth":595,"text":11560},{"id":904,"depth":584,"text":905},{"id":11688,"depth":584,"text":11689,"children":12154},[12155,12156],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":11798,"depth":584,"text":11799},{"id":11836,"depth":584,"text":11837,"children":12159},[12160,12161],{"id":1350,"depth":595,"text":1148},{"id":1373,"depth":595,"text":1265},{"id":11876,"depth":584,"text":11877,"children":12163},[12164,12165],{"id":1394,"depth":595,"text":1148},{"id":1419,"depth":595,"text":1265},{"id":11916,"depth":584,"text":11917},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to creating, reading, updating, and deleting static pages in Nuxas. Learn how to add About pages, Privacy policies, Terms of Service, and any other page your site needs.",{},"\u002Fdocs\u002F14-static-page-crud",{"title":10908,"description":12168},"docs\u002F14-static-page-crud","m349C7DFA3zQf9pDUCq6alZ6I2N59ZZ80TzFzE8CVWw",{"id":12175,"title":12176,"badge":12177,"body":12178,"description":12782,"extension":1763,"meta":12783,"navigation":167,"order":703,"path":12784,"section":6,"seo":12785,"stem":12786,"__hash__":12787},"docs\u002Fdocs\u002F15-pre-push.md","Pre-Push Checklist Before Going Live","Deployment",{"type":473,"value":12179,"toc":12758},[12180,12183,12186,12189,12193,12196,12199,12203,12208,12257,12260,12264,12267,12270,12285,12288,12292,12298,12312,12315,12332,12336,12342,12356,12359,12376,12380,12388,12399,12403,12408,12419,12423,12429,12440,12444,12450,12461,12465,12477,12483,12487,12495,12498,12502,12508,12511,12522,12533,12537,12540,12551,12554,12558,12561,12575,12578,12582,12596,12599,12613,12616,12620,12627,12630,12650,12653,12657,12662,12674,12677,12681,12684,12693,12696,12719,12722,12726,12729,12743,12746,12748,12751,12754,12756],[476,12181,12176],{"id":12182},"pre-push-checklist-before-going-live",[480,12184,12185],{},"In the previous chapter, we managed static pages. Now we are approaching the moment where your site goes from \"running on my computer\" to \"live on the internet.\" This is exciting, but it is also where small mistakes become public.",[480,12187,12188],{},"This chapter is a checklist. It is shorter than the previous chapters, but every item on it matters. Work through it slowly, one item at a time. If you skip this step, you may discover problems after your site is already live — and fixing them in production is always more stressful than fixing them locally.",[495,12190,12192],{"id":12191},"why-a-checklist","Why a Checklist?",[480,12194,12195],{},"When you have been working on a project for hours, it becomes hard to see the small mistakes. You have read the same text so many times that typos blur into correctness. A checklist forces you to look at each part of the site with fresh eyes, one at a time.",[480,12197,12198],{},"The items below are ordered from most visible to least visible. Start at the top, work your way down, and do not skip any item.",[495,12200,12202],{"id":12201},"_1-the-homepage","1. The Homepage",[480,12204,1154,12205,12207],{},[503,12206,3123],{}," in your browser. Check each section from top to bottom:",[508,12209,12210,12216,12222,12227,12233,12239,12245,12251],{},[511,12211,12212,12215],{},[484,12213,12214],{},"Hero section"," — is the headline correct? Is the subtitle free of typos? Do the two buttons point to the right pages?",[511,12217,12218,12221],{},[484,12219,12220],{},"Social proof"," — are the four statistics accurate? Do they reflect your actual numbers, or are they still placeholders?",[511,12223,12224,12226],{},[484,12225,10386],{}," — do the six feature cards describe features you actually offer? Are the icons appropriate?",[511,12228,12229,12232],{},[484,12230,12231],{},"Steps"," — do the three steps match the actual process a customer goes through?",[511,12234,12235,12238],{},[484,12236,12237],{},"Pricing"," — are the prices correct? Do the buttons point to the right purchase URLs?",[511,12240,12241,12244],{},[484,12242,12243],{},"Testimonials"," — are the quotes real? If they are placeholders, either replace them with real testimonials or remove the section entirely.",[511,12246,12247,12250],{},[484,12248,12249],{},"Final call-to-action"," — does the button point to the right page?",[511,12252,12253,12256],{},[484,12254,12255],{},"Footer"," — are the links correct? Do the social icons point to your actual profiles?",[480,12258,12259],{},"If any section is still placeholder text, fix it now. It is better to remove a section entirely than to leave placeholder text on a live site.",[495,12261,12263],{"id":12262},"_2-the-navigation","2. The Navigation",[480,12265,12266],{},"Click every link in the header navigation. Each one should take you to the correct page. Then click every link in the footer. Then open the mobile drawer (resize your browser to a narrow width) and click every link there.",[480,12268,12269],{},"Common issues to look for:",[508,12271,12272,12279,12282],{},[511,12273,12274,12275,12278],{},"A link that points to ",[503,12276,12277],{},"#"," instead of a real page.",[511,12280,12281],{},"A link that points to a page you have not created yet.",[511,12283,12284],{},"A link that points to the wrong page (e.g., \"About\" pointing to \"Contact\").",[480,12286,12287],{},"Fix any broken links before proceeding.",[495,12289,12291],{"id":12290},"_3-the-products-page","3. The Products Page",[480,12293,1154,12294,12297],{},[503,12295,12296],{},"http:\u002F\u002Flocalhost:3000\u002Fproducts",". Check each product card:",[508,12299,12300,12303,12306,12309],{},[511,12301,12302],{},"Is the cover image loading? If it shows a broken image icon, the URL is wrong.",[511,12304,12305],{},"Is the price correct?",[511,12307,12308],{},"Does the \"View Details\" button work?",[511,12310,12311],{},"Does the card show the first three features correctly?",[480,12313,12314],{},"Then click into each product detail page and check:",[508,12316,12317,12320,12323,12326,12329],{},[511,12318,12319],{},"Does the gallery load and switch images correctly?",[511,12321,12322],{},"Does the purchase button point to the right URL?",[511,12324,12325],{},"Are the specs and features displayed correctly?",[511,12327,12328],{},"Does the body text read well?",[511,12330,12331],{},"Do the related products at the bottom appear?",[495,12333,12335],{"id":12334},"_4-the-blog-page","4. The Blog Page",[480,12337,1154,12338,12341],{},[503,12339,12340],{},"http:\u002F\u002Flocalhost:3000\u002Fblog",". Check each blog post card:",[508,12343,12344,12347,12350,12353],{},[511,12345,12346],{},"Is the cover image loading?",[511,12348,12349],{},"Is the date formatted correctly?",[511,12351,12352],{},"Is the category badge visible?",[511,12354,12355],{},"Does clicking the card open the post?",[480,12357,12358],{},"Then open each blog post and check:",[508,12360,12361,12364,12367,12370],{},[511,12362,12363],{},"Does the post body render correctly, including code blocks and images?",[511,12365,12366],{},"Do the tags at the bottom appear?",[511,12368,12369],{},"Does the previous\u002Fnext navigation work?",[511,12371,12372,12373,12375],{},"If the post has a ",[503,12374,717],{},", does the call-to-action band appear at the bottom?",[495,12377,12379],{"id":12378},"_5-the-static-pages","5. The Static Pages",[480,12381,1154,12382,779,12385,12387],{},[503,12383,12384],{},"http:\u002F\u002Flocalhost:3000\u002Fabout",[503,12386,10953],{},", and any other static pages you have created. Check:",[508,12389,12390,12393,12396],{},[511,12391,12392],{},"Does the tag, heading, and intro render correctly?",[511,12394,12395],{},"Do the stats, pillars, and team sections (if defined) appear?",[511,12397,12398],{},"Does the body read well?",[495,12400,12402],{"id":12401},"_6-the-contact-page","6. The Contact Page",[480,12404,1154,12405,12407],{},[503,12406,7527],{},". Submit a test message using the form. Check:",[508,12409,12410,12413,12416],{},[511,12411,12412],{},"Does the success message appear?",[511,12414,12415],{},"Does the message arrive in your Formspree inbox?",[511,12417,12418],{},"Do the validation errors appear when you submit an empty form?",[495,12420,12422],{"id":12421},"_7-the-404-page","7. The 404 Page",[480,12424,1154,12425,12428],{},[503,12426,12427],{},"http:\u002F\u002Flocalhost:3000\u002Fthis-page-does-not-exist",". Check:",[508,12430,12431,12434,12437],{},[511,12432,12433],{},"Does the 404 page appear?",[511,12435,12436],{},"Are the heading, intro, and buttons correct?",[511,12438,12439],{},"Do the buttons work?",[495,12441,12443],{"id":12442},"_8-the-documentation","8. The Documentation",[480,12445,12446,12447,12428],{},"If you are using the documentation feature, open ",[503,12448,12449],{},"http:\u002F\u002Flocalhost:3000\u002Fdocs",[508,12451,12452,12455,12458],{},[511,12453,12454],{},"Does the sidebar appear with all chapters?",[511,12456,12457],{},"Does clicking a chapter open the correct page?",[511,12459,12460],{},"Do the previous\u002Fnext links at the bottom work?",[495,12462,12464],{"id":12463},"_9-the-site-url","9. The Site URL",[480,12466,1154,12467,12469,12470,12472,12473,823,12475,792],{},[503,12468,2811],{}," and check the ",[503,12471,3695],{}," field. It should be your actual production domain, not ",[503,12474,3606],{},[503,12476,9],{},[480,12478,12479,12480,12482],{},"If you have not registered a domain yet, you can leave it as a placeholder for now, but remember to update it before deploying. An incorrect ",[503,12481,3695],{}," will cause your sitemap and canonical tags to point to the wrong place.",[495,12484,12486],{"id":12485},"_10-the-favicon","10. The Favicon",[480,12488,1154,12489,12491,12492,12494],{},[503,12490,3123],{}," and look at the browser tab. Does the favicon appear? If it shows a default Nuxt icon or a blank square, you need to replace ",[503,12493,4231],{}," with your own.",[480,12496,12497],{},"The favicon is a small detail, but it makes a big difference in how professional your site looks. It appears in browser tabs, bookmarks, and history.",[495,12499,12501],{"id":12500},"_11-the-open-graph-image","11. The Open Graph Image",[480,12503,1154,12504,12507],{},[503,12505,12506],{},"https:\u002F\u002Fwww.opengraph.xyz\u002F"," in your browser. Paste your local URL (or your production URL if you have deployed) and click \"Check.\" This tool previews how your site will appear when shared on social media.",[480,12509,12510],{},"Check:",[508,12512,12513,12516,12519],{},[511,12514,12515],{},"Does the title and description appear correctly?",[511,12517,12518],{},"Does the image appear correctly?",[511,12520,12521],{},"Does the URL appear correctly?",[480,12523,12524,12525,12528,12529,12532],{},"If the image is missing or broken, check the ",[503,12526,12527],{},"ogImage"," field in your page meta. You may need to add a ",[503,12530,12531],{},"public\u002Fog-image.png"," file and reference it.",[495,12534,12536],{"id":12535},"_12-the-theme-toggle","12. The Theme Toggle",[480,12538,12539],{},"Click the theme toggle in the header. Check:",[508,12541,12542,12545,12548],{},[511,12543,12544],{},"Does the site switch from dark to light mode?",[511,12546,12547],{},"Is the change persisted when you refresh the page?",[511,12549,12550],{},"Do all sections look correct in both modes?",[480,12552,12553],{},"If any section looks broken in one of the modes, fix it now. It is easier to fix locally than to discover a broken section after launch.",[495,12555,12557],{"id":12556},"_13-the-mobile-view","13. The Mobile View",[480,12559,12560],{},"Resize your browser to a narrow width (around 375 pixels, which is the width of a typical phone). Check every page:",[508,12562,12563,12566,12569,12572],{},[511,12564,12565],{},"Does the layout stack correctly?",[511,12567,12568],{},"Are the buttons large enough to tap?",[511,12570,12571],{},"Does the mobile drawer open and close correctly?",[511,12573,12574],{},"Is the text readable?",[480,12576,12577],{},"Most of your visitors will be on mobile, so this check is essential.",[495,12579,12581],{"id":12580},"_14-the-lighthouse-score","14. The Lighthouse Score",[480,12583,12584,12585,12588,12589,12592,12593,792],{},"Open Chrome DevTools (press F12). Click the ",[484,12586,12587],{},"Lighthouse"," tab. Select ",[484,12590,12591],{},"Mobile"," and all categories. Click ",[484,12594,12595],{},"Analyze page load",[480,12597,12598],{},"The Lighthouse score measures performance, accessibility, best practices, and SEO. Aim for:",[508,12600,12601,12604,12607,12610],{},[511,12602,12603],{},"Performance: 90 or higher",[511,12605,12606],{},"Accessibility: 95 or higher",[511,12608,12609],{},"Best Practices: 95 or higher",[511,12611,12612],{},"SEO: 95 or higher",[480,12614,12615],{},"If any category is below these targets, the report shows specific issues with specific fixes. Address the most impactful ones first — usually image optimization and accessibility labels.",[495,12617,12619],{"id":12618},"_15-the-console","15. The Console",[480,12621,12622,12623,12626],{},"Open Chrome DevTools (press F12) and click the ",[484,12624,12625],{},"Console"," tab. Refresh the page. Check for red error messages.",[480,12628,12629],{},"Common issues:",[508,12631,12632,12638,12644],{},[511,12633,12634,12637],{},[503,12635,12636],{},"Failed to load resource"," — an image or font is missing.",[511,12639,12640,12643],{},[503,12641,12642],{},"Uncaught TypeError"," — a JavaScript error in a component.",[511,12645,12646,12649],{},[503,12647,12648],{},"Hydration mismatch"," — a difference between the server-rendered HTML and the client-rendered HTML.",[480,12651,12652],{},"Fix any red errors before proceeding. Yellow warnings are usually less critical, but worth investigating.",[495,12654,12656],{"id":12655},"_16-the-env-file","16. The .env File",[480,12658,1270,12659,12661],{},[503,12660,3347],{}," file. Check:",[508,12663,12664,12671],{},[511,12665,12666,12667,12670],{},"Is the ",[503,12668,12669],{},"NUXT_CONTACT_FORMSPREE_ID"," set to your actual ID?",[511,12672,12673],{},"Are the other values correct?",[480,12675,12676],{},"If any value is a placeholder, fix it now. You will need to set these values in your hosting provider's dashboard during deployment. Having them correct locally is a good check that you know what they should be.",[495,12678,12680],{"id":12679},"_17-the-git-status","17. The Git Status",[480,12682,12683],{},"Open a terminal in VS Code. Run:",[550,12685,12687],{"className":2586,"code":12686,"language":2578,"meta":555,"style":555},"git status\n",[503,12688,12689],{"__ignoreMap":555},[559,12690,12691],{"class":561,"line":562},[559,12692,12686],{},[480,12694,12695],{},"You will see a list of files that have been modified or added since the last commit. Check that:",[508,12697,12698,12706,12712],{},[511,12699,12700,12701,12703,12704,1343],{},"You are not about to commit ",[503,12702,2989],{}," (it should be in ",[503,12705,3822],{},[511,12707,12700,12708,12703,12710,1343],{},[503,12709,3347],{},[503,12711,3822],{},[511,12713,12700,12714,12703,12717,1343],{},[503,12715,12716],{},".nuxt",[503,12718,3822],{},[480,12720,12721],{},"If any of these appear in the list, do not commit them. They contain sensitive information or large files that do not belong in Git.",[495,12723,12725],{"id":12724},"_18-the-final-review","18. The Final Review",[480,12727,12728],{},"Take a step back and look at your site as if you were a first-time visitor. Ask yourself:",[508,12730,12731,12734,12737,12740],{},[511,12732,12733],{},"Does the site feel professional?",[511,12735,12736],{},"Is the value proposition clear?",[511,12738,12739],{},"Are the calls-to-action obvious?",[511,12741,12742],{},"Does anything look unfinished or out of place?",[480,12744,12745],{},"If something feels off, trust your instinct and fix it. The best sites are not the ones with the most features — they are the ones that feel polished and intentional.",[495,12747,1704],{"id":1703},[480,12749,12750],{},"In the next chapter, we will push your code to GitHub. This is the first step toward deployment. We will cover creating a GitHub account, creating a repository, and pushing your local code to the remote repository.",[480,12752,12753],{},"If you already have a GitHub account, you can skim the first part of the next chapter and focus on the repository setup.",[480,12755,1714],{},[1716,12757,2936],{},{"title":555,"searchDepth":584,"depth":584,"links":12759},[12760],{"id":12182,"depth":569,"text":12176,"children":12761},[12762,12763,12764,12765,12766,12767,12768,12769,12770,12771,12772,12773,12774,12775,12776,12777,12778,12779,12780,12781],{"id":12191,"depth":584,"text":12192},{"id":12201,"depth":584,"text":12202},{"id":12262,"depth":584,"text":12263},{"id":12290,"depth":584,"text":12291},{"id":12334,"depth":584,"text":12335},{"id":12378,"depth":584,"text":12379},{"id":12401,"depth":584,"text":12402},{"id":12421,"depth":584,"text":12422},{"id":12442,"depth":584,"text":12443},{"id":12463,"depth":584,"text":12464},{"id":12485,"depth":584,"text":12486},{"id":12500,"depth":584,"text":12501},{"id":12535,"depth":584,"text":12536},{"id":12556,"depth":584,"text":12557},{"id":12580,"depth":584,"text":12581},{"id":12618,"depth":584,"text":12619},{"id":12655,"depth":584,"text":12656},{"id":12679,"depth":584,"text":12680},{"id":12724,"depth":584,"text":12725},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly checklist to review before you push your Nuxas project to GitHub and deploy it to production. Catch broken links, missing images, and configuration mistakes before your visitors do.",{},"\u002Fdocs\u002F15-pre-push",{"title":12176,"description":12782},"docs\u002F15-pre-push","4zDKv0ogR6sr8_tLP2LYL9pccxg60c8SdrVpa47H1DU",{"id":12789,"title":12790,"badge":12177,"body":12791,"description":13294,"extension":1763,"meta":13295,"navigation":167,"order":714,"path":13296,"section":6,"seo":13297,"stem":13298,"__hash__":13299},"docs\u002Fdocs\u002F16-github.md","Pushing Your Code to GitHub",{"type":473,"value":12792,"toc":13281},[12793,12796,12799,12802,12805,12809,12812,12846,12849,12853,12856,12914,12917,12921,12928,12931,12940,12946,12953,12962,12965,12980,12983,12987,12990,12993,13002,13018,13021,13029,13040,13043,13052,13058,13062,13065,13071,13074,13083,13086,13089,13098,13112,13116,13123,13126,13186,13189,13192,13196,13199,13202,13216,13222,13225,13243,13246,13250,13253,13266,13269,13271,13274,13277,13279],[476,12794,12790],{"id":12795},"pushing-your-code-to-github",[480,12797,12798],{},"In the previous chapter, we worked through the pre-push checklist. Now it is time to push your code to GitHub.",[480,12800,12801],{},"GitHub is a platform for hosting Git repositories. A repository is a folder that contains your project's files and the complete history of every change ever made to them. When you push your code to GitHub, you create a remote copy of your project that lives on the internet. This remote copy is what you will connect to Netlify, Vercel, or any other hosting provider in the next chapter.",[480,12803,12804],{},"This chapter walks you through the entire process, from creating a GitHub account to pushing your first commit. We will also cover the OAuth setup that Decap CMS needs for the cloud mode.",[495,12806,12808],{"id":12807},"part-1-creating-a-github-account","Part 1 — Creating a GitHub Account",[480,12810,12811],{},"If you already have a GitHub account, you can skip to Part 2.",[1150,12813,12814,12820,12827,12830,12833,12836,12839],{},[511,12815,2524,12816,792],{},[2267,12817,12818],{"href":12818,"rel":12819},"https:\u002F\u002Fgithub.com",[2270],[511,12821,12822,12823,12826],{},"Click the ",[484,12824,12825],{},"Sign up"," button in the top right corner.",[511,12828,12829],{},"Fill in your email address, a password, and a username. Your username will appear in your repository URL, so choose something professional.",[511,12831,12832],{},"Complete the verification puzzle.",[511,12834,12835],{},"Check your email inbox. GitHub will send you a verification code. Enter it on the signup page.",[511,12837,12838],{},"On the next screen, you can skip the personalization questions or answer them. They do not affect your ability to use GitHub.",[511,12840,12841,12842,12845],{},"Choose the ",[484,12843,12844],{},"Free"," plan. It includes everything you need for Nuxas: unlimited public and private repositories, unlimited collaborators, and GitHub Actions.",[480,12847,12848],{},"Once you are logged in, you will land on your GitHub dashboard. This is where your repositories will appear.",[495,12850,12852],{"id":12851},"part-2-creating-a-new-repository","Part 2 — Creating a New Repository",[480,12854,12855],{},"Now let us create a repository for your Nuxas project.",[1150,12857,12858,12867,12904,12909],{},[511,12859,12860,12861,12863,12864,7350],{},"In the top right corner of GitHub, click the ",[484,12862,4606],{}," icon, then choose ",[484,12865,12866],{},"New repository",[511,12868,12869,12870],{},"On the \"Create a new repository\" page, fill in the following:\n",[508,12871,12872,12885,12890],{},[511,12873,12874,12877,12878,823,12881,12884],{},[484,12875,12876],{},"Repository name"," — a short, descriptive name. For example, ",[503,12879,12880],{},"my-saas",[503,12882,12883],{},"nuxas-project",". Use lowercase letters and hyphens.",[511,12886,12887,12889],{},[484,12888,1186],{}," — optional. A one-sentence summary of your project.",[511,12891,12892,12895,12896,12899,12900,12903],{},[484,12893,12894],{},"Visibility"," — choose ",[484,12897,12898],{},"Private"," if you do not want your code to be public. Choose ",[484,12901,12902],{},"Public"," if you want to share it. For a commercial SaaS, Private is usually the right choice.",[511,12905,12906,12908],{},[484,12907,2481],{}," Do not check any of the initialization options (README, .gitignore, license). You already have these files in your local project. Checking them will cause a merge conflict when you push .",[511,12910,1166,12911,792],{},[484,12912,12913],{},"Create repository",[480,12915,12916],{},"GitHub will create the repository and show you a page with setup instructions. You can ignore those instructions for now — we will use our own commands in the next step.",[495,12918,12920],{"id":12919},"part-3-preparing-your-local-project-for-git","Part 3 — Preparing Your Local Project for Git",[480,12922,12923,12924,12927],{},"Before you can push, your local project needs to be initialized as a Git repository. If you downloaded Nuxas from Gumroad, it may already include a ",[503,12925,12926],{},".git"," folder. If it does, you can skip this step. If it does not, follow these steps.",[480,12929,12930],{},"Open a terminal in VS Code. Make sure you are in the project root folder. Run:",[550,12932,12934],{"className":2586,"code":12933,"language":2578,"meta":555,"style":555},"git init\n",[503,12935,12936],{"__ignoreMap":555},[559,12937,12938],{"class":561,"line":562},[559,12939,12933],{},[480,12941,12942,12943,12945],{},"This creates a hidden ",[503,12944,12926],{}," folder in your project. You will not see it in VS Code's file explorer unless you enable hidden files. That is fine — Git manages it automatically.",[480,12947,12948,12949,12952],{},"Next, set the default branch name to ",[503,12950,12951],{},"main",". This is the modern convention, and it is what GitHub expects.",[550,12954,12956],{"className":2586,"code":12955,"language":2578,"meta":555,"style":555},"git branch -M main\n",[503,12957,12958],{"__ignoreMap":555},[559,12959,12960],{"class":561,"line":562},[559,12961,12955],{},[480,12963,12964],{},"Now, configure your Git identity. This is the name and email that will appear on every commit you make.",[550,12966,12968],{"className":2586,"code":12967,"language":2578,"meta":555,"style":555},"git config user.name \"Your Name\"\ngit config user.email \"your-email@example.com\"\n",[503,12969,12970,12975],{"__ignoreMap":555},[559,12971,12972],{"class":561,"line":562},[559,12973,12974],{},"git config user.name \"Your Name\"\n",[559,12976,12977],{"class":561,"line":569},[559,12978,12979],{},"git config user.email \"your-email@example.com\"\n",[480,12981,12982],{},"Replace the values with your own name and email. Use the same email you used to sign up for GitHub.",[495,12984,12986],{"id":12985},"part-4-adding-and-committing-your-files","Part 4 — Adding and Committing Your Files",[480,12988,12989],{},"Now you need to tell Git which files to include in your first commit.",[480,12991,12992],{},"Run:",[550,12994,12996],{"className":2586,"code":12995,"language":2578,"meta":555,"style":555},"git add .\n",[503,12997,12998],{"__ignoreMap":555},[559,12999,13000],{"class":561,"line":562},[559,13001,12995],{},[480,13003,13004,13005,13007,13008,13010,13011,779,13013,779,13015,13017],{},"This adds every file in your project to the staging area, except for files listed in ",[503,13006,3822],{},". Nuxt's default ",[503,13009,3822],{}," excludes ",[503,13012,2989],{},[503,13014,12716],{},[503,13016,3347],{},", and other files that should not be committed.",[480,13019,13020],{},"To verify what is staged, run:",[550,13022,13023],{"className":2586,"code":12686,"language":2578,"meta":555,"style":555},[503,13024,13025],{"__ignoreMap":555},[559,13026,13027],{"class":561,"line":562},[559,13028,12686],{},[480,13030,13031,13032,2146,13034,13036,13037,13039],{},"You will see a list of files in green. These are the files that will be committed. Check that ",[503,13033,2989],{},[503,13035,3347],{}," are not in the list. If they are, your ",[503,13038,3822],{}," is not working correctly, and you should fix it before proceeding.",[480,13041,13042],{},"Now create your first commit:",[550,13044,13046],{"className":2586,"code":13045,"language":2578,"meta":555,"style":555},"git commit -m \"Initial commit: Nuxas project\"\n",[503,13047,13048],{"__ignoreMap":555},[559,13049,13050],{"class":561,"line":562},[559,13051,13045],{},[480,13053,3692,13054,13057],{},[503,13055,13056],{},"-m"," flag lets you provide a commit message. Keep it short and descriptive. This message will appear in the repository's history.",[495,13059,13061],{"id":13060},"part-5-connecting-to-github-and-pushing","Part 5 — Connecting to GitHub and Pushing",[480,13063,13064],{},"Your local repository needs to know where the remote repository is. GitHub showed you the remote URL after creating the repository. It looks like this:",[550,13066,13069],{"className":13067,"code":13068,"language":1315},[1313],"https:\u002F\u002Fgithub.com\u002Fyour-username\u002Fyour-repo-name.git\n",[503,13070,13068],{"__ignoreMap":555},[480,13072,13073],{},"Copy that URL. Then run:",[550,13075,13077],{"className":2586,"code":13076,"language":2578,"meta":555,"style":555},"git remote add origin https:\u002F\u002Fgithub.com\u002Fyour-username\u002Fyour-repo-name.git\n",[503,13078,13079],{"__ignoreMap":555},[559,13080,13081],{"class":561,"line":562},[559,13082,13076],{},[480,13084,13085],{},"Replace the URL with your actual repository URL.",[480,13087,13088],{},"Now push your commit to GitHub:",[550,13090,13092],{"className":2586,"code":13091,"language":2578,"meta":555,"style":555},"git push -u origin main\n",[503,13093,13094],{"__ignoreMap":555},[559,13095,13096],{"class":561,"line":562},[559,13097,13091],{},[480,13099,3692,13100,13103,13104,13107,13108,13111],{},[503,13101,13102],{},"-u"," flag sets ",[503,13105,13106],{},"origin main"," as the default upstream for future pushes. After the first push, you can simply run ",[503,13109,13110],{},"git push"," without arguments.",[495,13113,13115],{"id":13114},"part-6-authentication","Part 6 — Authentication",[480,13117,13118,13119,13122],{},"When you push for the first time, Git will ask for your credentials. GitHub no longer accepts passwords for Git operations. You need to use a ",[484,13120,13121],{},"Personal Access Token"," instead .",[480,13124,13125],{},"Here is how to create one:",[1150,13127,13128,13131,13136,13142,13150,13158,13164,13167,13178,13183],{},[511,13129,13130],{},"Go to GitHub and click your profile picture in the top right corner.",[511,13132,3768,13133,792],{},[484,13134,13135],{},"Settings",[511,13137,13138,13139,792],{},"In the left sidebar, scroll down to ",[484,13140,13141],{},"Developer settings",[511,13143,1166,13144,2675,13147,792],{},[484,13145,13146],{},"Personal access tokens",[484,13148,13149],{},"Tokens (classic)",[511,13151,1166,13152,2675,13155,792],{},[484,13153,13154],{},"Generate new token",[484,13156,13157],{},"Generate new token (classic)",[511,13159,13160,13161,792],{},"Give the token a name, for example ",[503,13162,13163],{},"Nuxas Local",[511,13165,13166],{},"Set an expiration date. 90 days is a reasonable default.",[511,13168,13169,13170,13173,13174,13177],{},"Under ",[484,13171,13172],{},"Scopes",", check the ",[484,13175,13176],{},"repo"," checkbox. This gives the token permission to read and write to your repositories.",[511,13179,1166,13180,792],{},[484,13181,13182],{},"Generate token",[511,13184,13185],{},"Copy the token immediately. You will not be able to see it again.",[480,13187,13188],{},"When Git asks for your password during the push, paste the token instead of your GitHub password. Your username is your GitHub username.",[480,13190,13191],{},"After the push succeeds, open your repository on GitHub. You should see all your project files listed.",[495,13193,13195],{"id":13194},"part-7-preparing-decap-cms-oauth-cloud-mode","Part 7 — Preparing Decap CMS OAuth (Cloud Mode)",[480,13197,13198],{},"If you purchased the Code + Decap CMS edition, you will eventually need to configure OAuth so that Decap CMS can authenticate users in the cloud mode. This is not needed for local development — the local mode works without OAuth. But you will need it after deploying to Netlify.",[480,13200,13201],{},"Decap CMS uses a backend to authenticate users. There are two common backends:",[1150,13203,13204,13210],{},[511,13205,13206,13209],{},[484,13207,13208],{},"Git Gateway"," — Netlify's service that lets Decap CMS users log in with Netlify Identity, without needing a GitHub account .",[511,13211,13212,13215],{},[484,13213,13214],{},"GitHub backend"," — Decap CMS users log in directly with their GitHub account. This requires an OAuth app .",[480,13217,13218,13219,13221],{},"For most Nuxas users, ",[484,13220,13208],{}," is the simpler choice. It does not require your editors to have GitHub accounts, and it is fully managed by Netlify. We will enable Git Gateway in the Netlify deployment chapter.",[480,13223,13224],{},"If you prefer the GitHub backend, you will need to create a GitHub OAuth app. The process is:",[1150,13226,13227,13230,13237,13240],{},[511,13228,13229],{},"Go to GitHub Settings → Developer settings → OAuth Apps → New OAuth App.",[511,13231,13232,13233,13236],{},"Fill in the application name, homepage URL (your site's URL), and authorization callback URL (usually ",[503,13234,13235],{},"https:\u002F\u002Fapi.netlify.com\u002Fauth\u002Fdone"," for Netlify-hosted sites).",[511,13238,13239],{},"Copy the Client ID and generate a Client Secret.",[511,13241,13242],{},"Add these to your Netlify environment variables.",[480,13244,13245],{},"The exact steps depend on your deployment platform. For Netlify, the Git Gateway approach is simpler and does not require an OAuth app. We will cover it in the next chapter.",[495,13247,13249],{"id":13248},"part-8-verifying-the-push","Part 8 — Verifying the Push",[480,13251,13252],{},"After the push succeeds, go to your repository on GitHub. Check that:",[508,13254,13255,13258,13261],{},[511,13256,13257],{},"All your project files are there.",[511,13259,13260],{},"The commit message appears in the commit history.",[511,13262,3692,13263,13265],{},[503,13264,2366],{}," file renders correctly on the repository homepage.",[480,13267,13268],{},"If everything looks correct, your code is now on GitHub. You are ready to deploy.",[495,13270,1704],{"id":1703},[480,13272,13273],{},"In the next chapter, we will deploy your project to Netlify. This is the recommended hosting provider for Decap CMS users, because Netlify provides the Identity and Git Gateway services that make cloud-mode CMS authentication trivial.",[480,13275,13276],{},"We will cover creating a Netlify account, connecting your GitHub repository, configuring the build settings, and enabling Identity and Git Gateway.",[480,13278,1714],{},[1716,13280,2936],{},{"title":555,"searchDepth":584,"depth":584,"links":13282},[13283],{"id":12795,"depth":569,"text":12790,"children":13284},[13285,13286,13287,13288,13289,13290,13291,13292,13293],{"id":12807,"depth":584,"text":12808},{"id":12851,"depth":584,"text":12852},{"id":12919,"depth":584,"text":12920},{"id":12985,"depth":584,"text":12986},{"id":13060,"depth":584,"text":13061},{"id":13114,"depth":584,"text":13115},{"id":13194,"depth":584,"text":13195},{"id":13248,"depth":584,"text":13249},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to creating a GitHub account, setting up a repository, and pushing your Nuxas project from your local computer to GitHub. Includes Personal Access Token setup and Decap CMS OAuth preparation.",{},"\u002Fdocs\u002F16-github",{"title":12790,"description":13294},"docs\u002F16-github","LWQvSROpfjguXo-2CKqRawAwFs1vwyNsZyc1nBALUnA",{"id":13301,"title":13302,"badge":12177,"body":13303,"description":14135,"extension":1763,"meta":14136,"navigation":167,"order":725,"path":14137,"section":6,"seo":14138,"stem":14139,"__hash__":14140},"docs\u002Fdocs\u002F17-netlify.md","Deploying to Netlify",{"type":473,"value":13304,"toc":14112},[13305,13308,13311,13320,13323,13327,13334,13339,13387,13392,13433,13438,13462,13473,13478,13539,13543,13567,13571,13617,13627,13634,13638,13641,13655,13712,13720,13739,13742,13746,13749,13790,13794,13797,13824,13828,13831,13856,13862,13866,13869,13889,13892,13923,13927,13930,13961,13968,13972,13975,13988,13991,13993,13997,14004,14036,14039,14043,14046,14048,14054,14058,14080,14087,14099,14101,14104,14107,14109],[476,13306,13302],{"id":13307},"deploying-to-netlify",[480,13309,13310],{},"In the previous chapter, we pushed our code to GitHub. Now it is time to deploy the site to Netlify.",[480,13312,13313,13314,2146,13317,13319],{},"Netlify is the recommended hosting provider for Nuxas, especially if you purchased the Code + Decap CMS edition. Netlify provides two services that make cloud-mode Decap CMS trivial: ",[484,13315,13316],{},"Netlify Identity",[484,13318,13208],{},". Identity handles user login, and Git Gateway lets Decap CMS write to your repository without requiring your editors to have GitHub accounts.",[480,13321,13322],{},"This chapter walks you through the entire process: choosing between SSG and SSR, creating a Netlify account, connecting your repository, configuring the build, enabling Identity, and activating Git Gateway.",[495,13324,13326],{"id":13325},"part-1-understanding-ssg-vs-ssr-before-you-deploy","Part 1 — Understanding SSG vs SSR Before You Deploy",[480,13328,13329,13330,13333],{},"Before you touch Netlify, you need to decide ",[484,13331,13332],{},"how"," your site will be built. Nuxt supports two deployment modes, and the build command you choose determines the mode. This is the single most important decision in the deployment process.",[480,13335,13336],{},[484,13337,13338],{},"SSG (Static Site Generation)",[508,13340,13341,13349,13357,13363,13369,13375,13381],{},[511,13342,13343,2265,13346],{},[484,13344,13345],{},"Build command:",[503,13347,13348],{},"npm run generate",[511,13350,13351,2265,13354],{},[484,13352,13353],{},"Output folder:",[503,13355,13356],{},".output\u002Fpublic\u002F",[511,13358,13359,13362],{},[484,13360,13361],{},"What it produces:"," plain HTML, CSS, and JavaScript files. No server is needed at runtime.",[511,13364,13365,13368],{},[484,13366,13367],{},"How it works:"," Nuxt pre-renders every page at build time. The result is a folder of static files that any static host (Netlify, Cloudflare Pages, Vercel, GitHub Pages, S3) can serve directly from a CDN.",[511,13370,13371,13374],{},[484,13372,13373],{},"Pros:"," fastest possible response time (pure CDN), zero server cost, no cold starts, simplest to host.",[511,13376,13377,13380],{},[484,13378,13379],{},"Cons:"," no server-side rendering at request time, no API routes, no dynamic per-request data. Content only updates when you rebuild.",[511,13382,13383,13386],{},[484,13384,13385],{},"Best for:"," marketing sites, blogs, documentation, landing pages, and any frontend-only site where content is known at build time.",[480,13388,13389],{},[484,13390,13391],{},"SSR (Server-Side Rendering)",[508,13393,13394,13400,13408,13413,13418,13423,13428],{},[511,13395,13396,2265,13398],{},[484,13397,13345],{},[503,13399,4321],{},[511,13401,13402,2265,13404,13407],{},[484,13403,13353],{},[503,13405,13406],{},".output\u002F"," (contains a Node.js server)",[511,13409,13410,13412],{},[484,13411,13361],{}," a portable Node.js server that renders pages on demand.",[511,13414,13415,13417],{},[484,13416,13367],{}," Nuxt runs as a server. Each request is rendered on the fly, optionally using API routes, server middleware, cookies, and runtime environment variables.",[511,13419,13420,13422],{},[484,13421,13373],{}," dynamic content, API routes, authentication, per-request logic, runtime environment variables.",[511,13424,13425,13427],{},[484,13426,13379],{}," requires a Node.js runtime (serverless function or long-running server), slower cold starts on serverless, potentially higher cost.",[511,13429,13430,13432],{},[484,13431,13385],{}," SaaS apps with login, dashboards, API routes, contact forms that send email server-side, and any site that needs runtime logic.",[480,13434,13435],{},[484,13436,13437],{},"How Netlify handles each mode:",[480,13439,13440,13441,13444,13445,13447,13448,13451,13452,13455,13456,13458,13459,792],{},"Netlify auto-detects Nuxt and, by default, suggests ",[484,13442,13443],{},"SSR"," (",[503,13446,4321],{}," + ",[503,13449,13450],{},"dist","). If you want ",[484,13453,13454],{},"SSG",", you must explicitly change the build command to ",[503,13457,13348],{}," and the publish directory to ",[503,13460,13461],{},".output\u002Fpublic",[480,13463,13464,13465,13468,13469,13472],{},"For a ",[484,13466,13467],{},"frontend-only Nuxas site"," (no API routes, no server middleware), ",[484,13470,13471],{},"SSG is the recommended mode",". It is faster, cheaper, and simpler. The rest of this chapter assumes SSG. If you need SSR, replace the build settings with the SSR values shown in the table below.",[480,13474,13475],{},[484,13476,13477],{},"Quick reference:",[13479,13480,13481,13500],"table",{},[13482,13483,13484],"thead",{},[13485,13486,13487,13491,13494,13497],"tr",{},[13488,13489,13490],"th",{},"Mode",[13488,13492,13493],{},"Build command",[13488,13495,13496],{},"Publish directory",[13488,13498,13499],{},"Needs a server?",[13501,13502,13503,13522],"tbody",{},[13485,13504,13505,13511,13515,13519],{},[13506,13507,13508,13510],"td",{},[484,13509,13454],{}," (recommended for frontend-only)",[13506,13512,13513],{},[503,13514,13348],{},[13506,13516,13517],{},[503,13518,13461],{},[13506,13520,13521],{},"No",[13485,13523,13524,13528,13532,13536],{},[13506,13525,13526],{},[484,13527,13443],{},[13506,13529,13530],{},[503,13531,4321],{},[13506,13533,13534],{},[503,13535,13450],{},[13506,13537,13538],{},"Yes (Netlify Functions)",[495,13540,13542],{"id":13541},"part-2-creating-a-netlify-account","Part 2 — Creating a Netlify Account",[1150,13544,13545,13551,13555,13561,13564],{},[511,13546,2524,13547,792],{},[2267,13548,13549],{"href":13549,"rel":13550},"https:\u002F\u002Fwww.netlify.com",[2270],[511,13552,1166,13553,1170],{},[484,13554,12825],{},[511,13556,3768,13557,13560],{},[484,13558,13559],{},"Sign up with GitHub",". This is the easiest option because you already have a GitHub account, and it lets Netlify access your repositories automatically.",[511,13562,13563],{},"Authorize Netlify to access your GitHub account. You can choose to grant access to all repositories or only specific ones. For Nuxas, granting access to the repository you created in the previous chapter is enough.",[511,13565,13566],{},"Once authorized, you will land on the Netlify dashboard.",[495,13568,13570],{"id":13569},"part-3-connecting-your-github-repository","Part 3 — Connecting Your GitHub Repository",[1150,13572,13573,13582,13587,13590,13612],{},[511,13574,13575,13576,2675,13579,792],{},"On the Netlify dashboard, click ",[484,13577,13578],{},"Add new site",[484,13580,13581],{},"Import an existing project",[511,13583,3768,13584,13586],{},[484,13585,260],{}," as your Git provider.",[511,13588,13589],{},"Netlify will show a list of your repositories. Find the repository you created in the previous chapter and click it.",[511,13591,13592,13593,13596,13597],{},"Netlify will automatically detect that this is a Nuxt project and suggest build settings. ",[484,13594,13595],{},"Do not accept the defaults if you want SSG."," Change them to:\n",[508,13598,13599,13605],{},[511,13600,13601,2265,13603],{},[484,13602,13345],{},[503,13604,13348],{},[511,13606,13607,2265,13610],{},[484,13608,13609],{},"Publish directory:",[503,13611,13461],{},[511,13613,1166,13614,792],{},[484,13615,13616],{},"Deploy site",[480,13618,13619,13620,13444,13622,13447,13624,13626],{},"If you skip step 4 and accept the defaults, Netlify will build your site as ",[484,13621,13443],{},[503,13623,4321],{},[503,13625,13450],{},"). That is also valid, but it requires Netlify Functions and is unnecessary for a frontend-only site.",[480,13628,13629,13630,13633],{},"Netlify will start building your site. The first build takes a few minutes. You can watch the progress in the deploy log. When the build finishes, Netlify will show a URL like ",[503,13631,13632],{},"https:\u002F\u002Frandom-name-12345.netlify.app",". Click it to see your site live on the internet.",[495,13635,13637],{"id":13636},"part-4-configuring-the-site-url","Part 4 — Configuring the Site URL",[480,13639,13640],{},"Before we enable Identity and Git Gateway, let us update the site URL in your project.",[1150,13642,13643,13647],{},[511,13644,1154,13645,7449],{},[503,13646,2811],{},[511,13648,7452,13649,13651,13652,13654],{},[503,13650,3530],{}," block and update the ",[503,13653,3602],{}," field to your Netlify URL:",[550,13656,13658],{"className":3413,"code":13657,"language":3415,"meta":555,"style":555},"site: {\n  url: 'https:\u002F\u002Frandom-name-12345.netlify.app',\n  name: 'My SaaS',\n  description: 'My SaaS description',\n  defaultLocale: 'en',\n},\n",[503,13659,13660,13666,13677,13687,13698,13708],{"__ignoreMap":555},[559,13661,13662,13664],{"class":561,"line":562},[559,13663,3530],{"class":565},[559,13665,3543],{"class":576},[559,13667,13668,13670,13672,13675],{"class":561,"line":569},[559,13669,3548],{"class":565},[559,13671,577],{"class":576},[559,13673,13674],{"class":580},"'https:\u002F\u002Frandom-name-12345.netlify.app'",[559,13676,3443],{"class":576},[559,13678,13679,13681,13683,13685],{"class":561,"line":584},[559,13680,3560],{"class":565},[559,13682,577],{"class":576},[559,13684,3652],{"class":580},[559,13686,3443],{"class":576},[559,13688,13689,13691,13693,13696],{"class":561,"line":595},[559,13690,3572],{"class":565},[559,13692,577],{"class":576},[559,13694,13695],{"class":580},"'My SaaS description'",[559,13697,3443],{"class":576},[559,13699,13700,13702,13704,13706],{"class":561,"line":607},[559,13701,3584],{"class":565},[559,13703,577],{"class":576},[559,13705,3589],{"class":580},[559,13707,3443],{"class":576},[559,13709,13710],{"class":561,"line":618},[559,13711,3596],{"class":576},[1150,13713,13714,13717],{"start":584},[511,13715,13716],{},"Save the file.",[511,13718,13719],{},"Commit the change and push it to GitHub:",[550,13721,13723],{"className":2586,"code":13722,"language":2578,"meta":555,"style":555},"git add .\ngit commit -m \"Update site URL to Netlify domain\"\ngit push\n",[503,13724,13725,13729,13734],{"__ignoreMap":555},[559,13726,13727],{"class":561,"line":562},[559,13728,12995],{},[559,13730,13731],{"class":561,"line":569},[559,13732,13733],{},"git commit -m \"Update site URL to Netlify domain\"\n",[559,13735,13736],{"class":561,"line":584},[559,13737,13738],{},"git push\n",[480,13740,13741],{},"Netlify will automatically rebuild your site when it detects the push. Wait for the build to finish, then continue.",[495,13743,13745],{"id":13744},"part-5-enabling-netlify-identity","Part 5 — Enabling Netlify Identity",[480,13747,13748],{},"Netlify Identity is the service that handles user login for Decap CMS. Without it, the cloud mode of Decap CMS will not work.",[1150,13750,13751,13754,13763,13768,13774,13784],{},[511,13752,13753],{},"On your Netlify dashboard, click your site.",[511,13755,13756,13757,2675,13760,792],{},"In the top navigation, click ",[484,13758,13759],{},"Integrations",[484,13761,13762],{},"Identity",[511,13764,1166,13765,792],{},[484,13766,13767],{},"Enable Identity",[511,13769,13770,13771,792],{},"Once enabled, click ",[484,13772,13773],{},"Configuration and usage",[511,13775,13169,13776,13779,13780,13783],{},[484,13777,13778],{},"Registration",", choose ",[484,13781,13782],{},"Invite only",". This is the safest option: only users you explicitly invite can access the CMS.",[511,13785,13169,13786,13789],{},[484,13787,13788],{},"External providers",", you can optionally enable Google or GitHub login. This lets your editors log in with their existing accounts instead of creating a new password. For most users, this is a nice convenience, but it is not required.",[495,13791,13793],{"id":13792},"part-6-enabling-git-gateway","Part 6 — Enabling Git Gateway",[480,13795,13796],{},"Git Gateway is the service that lets Decap CMS write to your repository. It works together with Identity: Identity verifies who the user is, and Git Gateway handles the actual file writes.",[1150,13798,13799,13805,13814,13821],{},[511,13800,13801,13802,792],{},"On the same Identity configuration page, scroll down to ",[484,13803,13804],{},"Services",[511,13806,13807,13808,13810,13811,792],{},"Find ",[484,13809,13208],{}," and click ",[484,13812,13813],{},"Enable Git Gateway",[511,13815,13816,13817,13820],{},"Leave the ",[484,13818,13819],{},"Roles"," field blank. This means any logged-in Identity user can access the CMS. If you want to restrict access to specific roles, you can set them here, but for a small team, blank is fine.",[511,13822,13823],{},"Netlify will generate an API access token for your repository. This happens automatically. You do not need to do anything.",[495,13825,13827],{"id":13826},"part-7-inviting-your-first-cms-user","Part 7 — Inviting Your First CMS User",[480,13829,13830],{},"Now that Identity and Git Gateway are enabled, you need to invite yourself (or your client) as a CMS user.",[1150,13832,13833,13839,13842,13847,13850,13853],{},[511,13834,13835,13836,792],{},"In the Identity configuration page, click ",[484,13837,13838],{},"Invite users",[511,13840,13841],{},"Enter the email address of the person who should have CMS access.",[511,13843,1166,13844,792],{},[484,13845,13846],{},"Send invite",[511,13848,13849],{},"Check that email inbox. You will receive an invitation email from Netlify.",[511,13851,13852],{},"Click the link in the email. It will take you to your site's admin page.",[511,13854,13855],{},"Set a password. You will be logged in and taken to the Decap CMS dashboard.",[480,13857,13858,13859,13861],{},"If you chose ",[484,13860,13782],{}," registration, new users cannot sign up on their own. You must invite them from the Netlify dashboard. This is the recommended setup for production sites.",[495,13863,13865],{"id":13864},"part-8-testing-the-cloud-cms","Part 8 — Testing the Cloud CMS",[480,13867,13868],{},"Now that you are logged in, let us test that the cloud CMS can write to your repository.",[1150,13870,13871,13876,13879,13882,13886],{},[511,13872,13873,13874,1343],{},"In the Decap CMS dashboard, open any collection (for example, ",[484,13875,1163],{},[511,13877,13878],{},"Click an existing post.",[511,13880,13881],{},"Make a small change, such as adding a space to the title.",[511,13883,1166,13884,792],{},[484,13885,1252],{},[511,13887,13888],{},"Go back to your GitHub repository. You should see a new commit from Netlify Identity, containing the change you just made.",[480,13890,13891],{},"If you see the commit, the cloud CMS is working correctly. If you see an error, check the following:",[508,13893,13894,13897,13910],{},[511,13895,13896],{},"Is Git Gateway enabled? (Part 6)",[511,13898,12666,13899,13902,13903,13905,13906,13909],{},[503,13900,13901],{},"backend"," name in ",[503,13904,4820],{}," set to ",[503,13907,13908],{},"git-gateway","? It should already be, but double-check.",[511,13911,13912,13913,13905,13916,13918,13919,13922],{},"Is the branch name in ",[503,13914,13915],{},"config.yml",[503,13917,12951],{},"? If your repository uses ",[503,13920,13921],{},"master",", update it.",[495,13924,13926],{"id":13925},"part-9-verifying-that-ssg-is-actually-being-used","Part 9 — Verifying That SSG Is Actually Being Used",[480,13928,13929],{},"After the deploy finishes, confirm that Netlify built your site as SSG and not SSR:",[1150,13931,13932,13938,13941,13949,13954],{},[511,13933,1270,13934,13937],{},[484,13935,13936],{},"Deploys"," tab in your Netlify dashboard.",[511,13939,13940],{},"Click the latest deploy to open the deploy log.",[511,13942,13943,13944,13946,13947,792],{},"Look for the build command line. It should say ",[503,13945,13348],{},", not ",[503,13948,4321],{},[511,13950,13951,13952,792],{},"Look for the publish directory. It should say ",[503,13953,13461],{},[511,13955,13956,13957,13960],{},"On your live site, open DevTools → ",[484,13958,13959],{},"Network"," and reload. The initial HTML response should be served directly as a static file, with no serverless function invocation in the log.",[480,13962,13963,13964,13967],{},"If any of these checks fail, go back to ",[484,13965,13966],{},"Site settings → Build & deploy → Build settings"," and correct the build command and publish directory.",[495,13969,13971],{"id":13970},"part-10-a-note-on-netlifys-free-tier","Part 10 — A Note on Netlify's Free Tier",[480,13973,13974],{},"Netlify's free tier includes:",[508,13976,13977,13980,13983,13986],{},[511,13978,13979],{},"100 GB of bandwidth per month",[511,13981,13982],{},"300 build minutes per month",[511,13984,13985],{},"Unlimited Identity users",[511,13987,13208],{},[480,13989,13990],{},"For most Nuxas users, the free tier is more than enough. If your site grows and you exceed these limits, Netlify offers paid plans with higher limits.",[495,13992,7895],{"id":7894},[732,13994,13996],{"id":13995},"issue-the-cms-login-page-does-not-appear","Issue: The CMS login page does not appear",[480,13998,13999,14000,14003],{},"Check that you have added the Netlify Identity widget to ",[503,14001,14002],{},"public\u002Fadmin\u002Findex.html",". It should include this line:",[550,14005,14009],{"className":14006,"code":14007,"language":14008,"meta":555,"style":555},"language-html shiki shiki-themes github-light github-dark","\u003Cscript src=\"https:\u002F\u002Fidentity.netlify.com\u002Fv1\u002Fnetlify-identity-widget.js\">\u003C\u002Fscript>\n","html",[503,14010,14011],{"__ignoreMap":555},[559,14012,14013,14016,14019,14022,14025,14028,14031,14033],{"class":561,"line":562},[559,14014,14015],{"class":576},"\u003C",[559,14017,14018],{"class":572},"script",[559,14020,14021],{"class":565}," src",[559,14023,14024],{"class":576},"=",[559,14026,14027],{"class":580},"\"https:\u002F\u002Fidentity.netlify.com\u002Fv1\u002Fnetlify-identity-widget.js\"",[559,14029,14030],{"class":576},">\u003C\u002F",[559,14032,14018],{"class":572},[559,14034,14035],{"class":576},">\n",[480,14037,14038],{},"If it is missing, add it and redeploy.",[732,14040,14042],{"id":14041},"issue-git-gateway-error-404","Issue: \"Git Gateway Error: 404\"",[480,14044,14045],{},"This usually means the repository is not connected correctly. Go to Netlify's site settings, find the repository link, and relink it.",[732,14047,4825],{"id":4824},[480,14049,14050,14051,14053],{},"Netlify rebuilds the site automatically when it detects a commit. Check the ",[484,14052,13936],{}," tab in your Netlify dashboard. If the deploy failed, the change will not appear. Fix the build error and redeploy.",[732,14055,14057],{"id":14056},"issue-the-site-returns-a-404-on-refresh-for-deep-routes","Issue: The site returns a 404 on refresh for deep routes",[480,14059,14060,14061,14063,14064,14066,14067,14069,14070,2146,14073,14076,14077,14079],{},"This usually means Netlify is not serving ",[503,14062,13461],{}," as a static site with SPA fallback. Confirm the publish directory is ",[503,14065,13461],{}," and that the build command is ",[503,14068,13348],{},". SSG output already contains a ",[503,14071,14072],{},"_redirects",[503,14074,14075],{},"404.html"," file where needed; if you have a custom ",[503,14078,14072],{},", make sure it does not override the SSG routing.",[732,14081,14083,14084,14086],{"id":14082},"issue-i-see-npm-run-build-in-the-deploy-log-even-though-i-wanted-ssg","Issue: I see ",[503,14085,4321],{}," in the deploy log even though I wanted SSG",[480,14088,14089,14090,14093,14094,13458,14096,14098],{},"Netlify accepted its auto-detected defaults. Go to ",[484,14091,14092],{},"Site settings → Build & deploy → Build settings → Edit settings"," and change the build command to ",[503,14095,13348],{},[503,14097,13461],{},". Then trigger a new deploy.",[495,14100,1704],{"id":1703},[480,14102,14103],{},"In the next chapter, we will cover deploying to other hosting providers: Cloudflare Pages, Vercel, AWS, cPanel, and VPS. Each provider has its own setup, and we will walk through the most important ones, always keeping the SSG vs SSR distinction front and center.",[480,14105,14106],{},"If you are happy with Netlify, you can skip the next chapter and move to custom domain setup. But if you want to explore other options, read on.",[480,14108,1714],{},[1716,14110,14111],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}",{"title":555,"searchDepth":584,"depth":584,"links":14113},[14114],{"id":13307,"depth":569,"text":13302,"children":14115},[14116,14117,14118,14119,14120,14121,14122,14123,14124,14125,14126,14134],{"id":13325,"depth":584,"text":13326},{"id":13541,"depth":584,"text":13542},{"id":13569,"depth":584,"text":13570},{"id":13636,"depth":584,"text":13637},{"id":13744,"depth":584,"text":13745},{"id":13792,"depth":584,"text":13793},{"id":13826,"depth":584,"text":13827},{"id":13864,"depth":584,"text":13865},{"id":13925,"depth":584,"text":13926},{"id":13970,"depth":584,"text":13971},{"id":7894,"depth":584,"text":7895,"children":14127},[14128,14129,14130,14131,14132],{"id":13995,"depth":595,"text":13996},{"id":14041,"depth":595,"text":14042},{"id":4824,"depth":595,"text":4825},{"id":14056,"depth":595,"text":14057},{"id":14082,"depth":595,"text":14133},"Issue: I see npm run build in the deploy log even though I wanted SSG",{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to deploying your Nuxas project to Netlify. Learn the difference between SSG and SSR builds, connect your GitHub repository, configure the build settings, enable Netlify Identity, and activate Git Gateway for Decap CMS in the cloud mode.",{},"\u002Fdocs\u002F17-netlify",{"title":13302,"description":14135},"docs\u002F17-netlify","t9cfmnEYBn0ckMctoVQ7d1EHEafdsFLWOB9KQ1ZrcPw",{"id":14142,"title":14143,"badge":12177,"body":14144,"description":16037,"extension":1763,"meta":16038,"navigation":167,"order":1529,"path":16039,"section":6,"seo":16040,"stem":16041,"__hash__":16042},"docs\u002Fdocs\u002F18-other-hosts.md","Deploying to Other Hosting Providers",{"type":473,"value":14145,"toc":16025},[14146,14149,14152,14155,14158,14162,14169,14176,14208,14214,14243,14271,14282,14287,14343,14347,14350,14355,14369,14392,14397,14451,14456,14481,14487,14500,14509,14513,14516,14521,14535,14539,14598,14602,14621,14624,14629,14635,14639,14642,14647,14658,14662,14711,14715,14735,14738,14743,14749,14753,14756,14766,14770,14773,14875,14880,15164,15169,15185,15189,15192,15197,15211,15215,15221,15437,15441,15814,15820,15824,15829,15858,15863,16005,16015,16017,16020,16022],[476,14147,14143],{"id":14148},"deploying-to-other-hosting-providers",[480,14150,14151],{},"In the previous chapter, we deployed to Netlify. Netlify is the recommended choice for Nuxas, especially if you are using Decap CMS, because it provides Identity and Git Gateway out of the box.",[480,14153,14154],{},"But Netlify is not the only option. Nuxt is platform-agnostic thanks to Nitro, its server engine. You can deploy to almost any platform with minimal configuration: Node.js servers, static hosting, serverless functions, or edge networks.",[480,14156,14157],{},"This chapter covers the most popular alternatives: Cloudflare Pages, Vercel, AWS Amplify, cPanel shared hosting, and a VPS. For each one, we explain what you need to do and what to watch out for.",[495,14159,14161],{"id":14160},"part-1-build-output-ssg-vs-ssr-revisited","Part 1 — Build Output: SSG vs SSR, Revisited",[480,14163,14164,14165,14168],{},"Before we dive into each platform, let us clarify the single most important concept in deployment: ",[484,14166,14167],{},"build output",". Every deployment starts with a build command, and the output of that build is what you deploy. For Nuxas, there are two possible outputs, and they are not interchangeable.",[480,14170,14171,14173,14174,792],{},[484,14172,13338],{}," — produced by ",[503,14175,13348],{},[508,14177,14178,14184,14190,14196,14202],{},[511,14179,14180,2265,14182],{},[484,14181,13353],{},[503,14183,13356],{},[511,14185,14186,14189],{},[484,14187,14188],{},"What it contains:"," plain HTML, CSS, and JavaScript files. No server.",[511,14191,14192,14195],{},[484,14193,14194],{},"How it is served:"," directly from a CDN or static file host.",[511,14197,14198,14201],{},[484,14199,14200],{},"Trade-offs:"," fastest possible response time and cheapest to host, but no server-side rendering at request time, no API routes, no runtime environment variables.",[511,14203,14204,14207],{},[484,14205,14206],{},"Use when:"," the site is frontend-only, content is known at build time, and there is no server logic.",[480,14209,14210,14173,14212,792],{},[484,14211,13391],{},[503,14213,4321],{},[508,14215,14216,14223,14228,14233,14238],{},[511,14217,14218,2265,14220,14222],{},[484,14219,13353],{},[503,14221,13406],{}," (contains a portable Node.js server).",[511,14224,14225,14227],{},[484,14226,14188],{}," a Node.js server that renders pages on demand.",[511,14229,14230,14232],{},[484,14231,14194],{}," on a Node.js runtime (long-running server, serverless function, or edge function).",[511,14234,14235,14237],{},[484,14236,14200],{}," dynamic content, API routes, auth, and runtime environment variables work, but the site needs a Node.js runtime and may cost more and have cold starts.",[511,14239,14240,14242],{},[484,14241,14206],{}," the site has API routes, server middleware, authentication, or per-request logic.",[480,14244,14245,14248,14249,13444,14251,4352,14253,14255,14256,13444,14258,4352,14260,14262,14263,14266,14267,14270],{},[484,14246,14247],{},"The rule of thumb for Nuxas:"," if the site is frontend-only, use ",[484,14250,13454],{},[503,14252,13348],{},[503,14254,13461],{},"). If the site needs server logic, use ",[484,14257,13443],{},[503,14259,4321],{},[503,14261,13406],{},"). Do not mix the two: a ",[503,14264,14265],{},"generate"," build cannot produce a Node.js server, and a ",[503,14268,14269],{},"build"," build cannot produce a static folder.",[480,14272,14273,14274,14276,14277,14279,14280,792],{},"Most of the platforms below support both modes. Cloudflare Pages, Vercel, and AWS Amplify detect Nuxt automatically and default to ",[484,14275,13443],{},". For a frontend-only Nuxas site, you must explicitly override the build command to ",[503,14278,13348],{}," and the output directory to ",[503,14281,13461],{},[480,14283,14284],{},[484,14285,14286],{},"Quick reference for every platform in this chapter:",[13479,14288,14289,14303],{},[13482,14290,14291],{},[13485,14292,14293,14295,14297,14300],{},[13488,14294,13490],{},[13488,14296,13493],{},[13488,14298,14299],{},"Output directory",[13488,14301,14302],{},"Needs a Node runtime?",[13501,14304,14305,14322],{},[13485,14306,14307,14312,14316,14320],{},[13506,14308,14309,14311],{},[484,14310,13454],{}," (frontend-only Nuxas)",[13506,14313,14314],{},[503,14315,13348],{},[13506,14317,14318],{},[503,14319,13461],{},[13506,14321,13521],{},[13485,14323,14324,14329,14333,14341],{},[13506,14325,14326,14328],{},[484,14327,13443],{}," (sites with API routes)",[13506,14330,14331],{},[503,14332,4321],{},[13506,14334,14335,14337,14338],{},[503,14336,13450],{}," \u002F ",[503,14339,14340],{},".output",[13506,14342,2566],{},[495,14344,14346],{"id":14345},"option-1-cloudflare-pages","Option 1 — Cloudflare Pages",[480,14348,14349],{},"Cloudflare Pages is an excellent choice for performance and cost. It has unlimited bandwidth on the free tier and a global edge network that delivers the fastest TTFB.",[480,14351,14352],{},[484,14353,14354],{},"Why choose Cloudflare Pages:",[508,14356,14357,14360,14363,14366],{},[511,14358,14359],{},"Unlimited bandwidth, even on the free tier.",[511,14361,14362],{},"Excellent global performance.",[511,14364,14365],{},"Very cost-effective at scale.",[511,14367,14368],{},"Supports both static hosting (SSG) and edge functions (SSR).",[480,14370,14371,14374,14375,14377,14378,14380,14381,14383,14384,14386,14387,14389,14390,792],{},[484,14372,14373],{},"Important Cloudflare-specific caveat:"," Cloudflare Pages cannot serve a folder whose name starts with a dot (",[503,14376,14340],{},"). If you deploy SSG output, the publish directory must be ",[503,14379,13461],{}," (Cloudflare accepts this path for reading), but if your build process produces ",[503,14382,14340],{}," as the root, Cloudflare will not read it. The safest configuration for SSG on Cloudflare is to use the ",[503,14385,14265],{}," command, which produces ",[503,14388,13461],{}," directly, and set the build output directory to ",[503,14391,13461],{},[480,14393,14394],{},[484,14395,14396],{},"How to deploy SSG (recommended for frontend-only Nuxas):",[1150,14398,14399,14402,14408,14419,14422,14446],{},[511,14400,14401],{},"Push your code to GitHub (you already did this in Chapter 16).",[511,14403,14404,14405,792],{},"Log in to the Cloudflare dashboard and go to ",[484,14406,14407],{},"Workers & Pages",[511,14409,1166,14410,2675,14413,2675,14416,792],{},[484,14411,14412],{},"Create application",[484,14414,14415],{},"Pages",[484,14417,14418],{},"Connect to Git",[511,14420,14421],{},"Select your GitHub repository.",[511,14423,14424,14425],{},"Configure the build settings:\n",[508,14426,14427,14433,14439],{},[511,14428,14429,14432],{},[484,14430,14431],{},"Framework preset:"," Nuxt",[511,14434,14435,2265,14437],{},[484,14436,13345],{},[503,14438,13348],{},[511,14440,14441,2265,14444],{},[484,14442,14443],{},"Build output directory:",[503,14445,13461],{},[511,14447,1166,14448,792],{},[484,14449,14450],{},"Save and Deploy",[480,14452,14453],{},[484,14454,14455],{},"How to deploy SSR (only if you need server logic):",[1150,14457,14458,14475],{},[511,14459,14460,14461],{},"Follow the same steps as above, but set:\n",[508,14462,14463,14469],{},[511,14464,14465,2265,14467],{},[484,14466,13345],{},[503,14468,4321],{},[511,14470,14471,2265,14473],{},[484,14472,14443],{},[503,14474,13450],{},[511,14476,14477,14478,14480],{},"Ensure your ",[503,14479,2811],{}," includes the Cloudflare Nitro preset if you are uploading via wrangler rather than Git integration.",[480,14482,14483,14484,14486],{},"Cloudflare Pages will build and deploy your site automatically. Every push to your ",[503,14485,12951],{}," branch triggers a new deployment.",[480,14488,14489,14492,14493,14496,14497,14499],{},[484,14490,14491],{},"Important note for Nuxas:"," If you use ",[503,14494,14495],{},"@nuxt\u002Fimage"," with external domains (like Unsplash), you may need to configure Cloudflare's Image CDN or disable the module for Cloudflare deployments. The ",[503,14498,14495],{}," module is designed for Node.js environments and may not work out of the box on Cloudflare Workers. For most Nuxas users, this is not an issue because the images are already optimized URLs from Unsplash.",[480,14501,14502,14505,14506,792],{},[484,14503,14504],{},"Decap CMS on Cloudflare:"," Decap CMS's cloud mode (Git Gateway) relies on Netlify's services. If you deploy to Cloudflare, you cannot use Git Gateway. You would need to use the GitHub backend for Decap CMS instead, which requires your editors to have GitHub accounts and a GitHub OAuth app. This is more complex than the Netlify setup. If you are using Decap CMS, ",[484,14507,14508],{},"Netlify remains the recommended choice",[495,14510,14512],{"id":14511},"option-2-vercel","Option 2 — Vercel",[480,14514,14515],{},"Vercel is the company behind Next.js, but it also has excellent support for Nuxt. It offers zero-config deployment and a great developer experience.",[480,14517,14518],{},[484,14519,14520],{},"Why choose Vercel:",[508,14522,14523,14526,14529,14532],{},[511,14524,14525],{},"Zero configuration for Nuxt (auto-detects).",[511,14527,14528],{},"Excellent preview deployments for pull requests.",[511,14530,14531],{},"Built-in analytics and speed insights.",[511,14533,14534],{},"Supports both SSG (static output) and SSR (serverless functions).",[480,14536,14537],{},[484,14538,14396],{},[1150,14540,14541,14544,14551,14559,14562,14593],{},[511,14542,14543],{},"Push your code to GitHub.",[511,14545,14546,14547,792],{},"Log in to ",[2267,14548,14549],{"href":14549,"rel":14550},"https:\u002F\u002Fvercel.com",[2270],[511,14552,1166,14553,2675,14556,792],{},[484,14554,14555],{},"Add New",[484,14557,14558],{},"Project",[511,14560,14561],{},"Import your GitHub repository.",[511,14563,14564,14565,14567,14568,13447,14570,14573,14574,14577,14578],{},"Vercel will auto-detect Nuxt and suggest ",[484,14566,13443],{}," defaults (",[503,14569,4321],{},[503,14571,14572],{},".vercel\u002Foutput","). ",[484,14575,14576],{},"Override them"," to:\n",[508,14579,14580,14586],{},[511,14581,14582,2265,14584],{},[484,14583,13345],{},[503,14585,13348],{},[511,14587,14588,2265,14591],{},[484,14589,14590],{},"Output directory:",[503,14592,13461],{},[511,14594,1166,14595,792],{},[484,14596,14597],{},"Deploy",[480,14599,14600],{},[484,14601,14455],{},[1150,14603,14604],{},[511,14605,14606,14607],{},"Follow the same steps, but leave Vercel's auto-detected defaults:\n",[508,14608,14609,14615],{},[511,14610,14611,2265,14613],{},[484,14612,13345],{},[503,14614,4321],{},[511,14616,14617,2265,14619],{},[484,14618,14590],{},[503,14620,14572],{},[480,14622,14623],{},"Vercel will build and deploy your site. Every push to your repository triggers a new deployment.",[480,14625,14626,14628],{},[484,14627,14491],{}," Vercel's free tier has limited bandwidth and build minutes. For a small SaaS site, this is usually fine. If your site grows, you may need a paid plan.",[480,14630,14631,14634],{},[484,14632,14633],{},"Decap CMS on Vercel:"," Same as Cloudflare. Git Gateway is a Netlify service. You would need to use the GitHub backend for Decap CMS, which requires more setup.",[495,14636,14638],{"id":14637},"option-3-aws-amplify","Option 3 — AWS Amplify",[480,14640,14641],{},"AWS Amplify Hosting provides a Git-based workflow for deploying full-stack serverless web applications. It supports Nuxt with both SSG and SSR.",[480,14643,14644],{},[484,14645,14646],{},"Why choose AWS Amplify:",[508,14648,14649,14652,14655],{},[511,14650,14651],{},"Integrates with the AWS ecosystem.",[511,14653,14654],{},"Supports both SSG and SSR for Nuxt.",[511,14656,14657],{},"Global CDN via CloudFront.",[480,14659,14660],{},[484,14661,14396],{},[1150,14663,14664,14667,14673,14681,14684,14706],{},[511,14665,14666],{},"Push your code to GitHub (or Bitbucket, GitLab, or AWS CodeCommit).",[511,14668,14669,14670,792],{},"Log in to the AWS Management Console and go to ",[484,14671,14672],{},"AWS Amplify",[511,14674,1166,14675,2675,14678,792],{},[484,14676,14677],{},"New app",[484,14679,14680],{},"Host web app",[511,14682,14683],{},"Connect your Git provider and select your repository.",[511,14685,14686,14687,14689,14690,14577,14692],{},"Amplify will detect Nuxt and suggest ",[484,14688,13443],{}," defaults. ",[484,14691,14576],{},[508,14693,14694,14700],{},[511,14695,14696,2265,14698],{},[484,14697,13345],{},[503,14699,13348],{},[511,14701,14702,2265,14704],{},[484,14703,14590],{},[503,14705,13461],{},[511,14707,1166,14708,792],{},[484,14709,14710],{},"Save and deploy",[480,14712,14713],{},[484,14714,14455],{},[1150,14716,14717],{},[511,14718,14719,14720],{},"Follow the same steps, but keep Amplify's auto-detected defaults:\n",[508,14721,14722,14728],{},[511,14723,14724,2265,14726],{},[484,14725,13345],{},[503,14727,4321],{},[511,14729,14730,2265,14732],{},[484,14731,14590],{},[503,14733,14734],{},".amplify-hosting",[480,14736,14737],{},"Amplify will build and deploy your site. Every push triggers a new deployment.",[480,14739,14740,14742],{},[484,14741,14491],{}," AWS Amplify has a more complex pricing model than Netlify or Vercel. It is free for the first 12 months under the AWS Free Tier, but after that, you pay for build minutes, storage, and data transfer. For a small site, the cost is minimal, but it is worth understanding before you commit.",[480,14744,14745,14748],{},[484,14746,14747],{},"Decap CMS on AWS Amplify:"," Same limitation. Git Gateway is Netlify-only. You would need the GitHub backend for Decap CMS.",[495,14750,14752],{"id":14751},"option-4-cpanel-shared-hosting","Option 4 — cPanel Shared Hosting",[480,14754,14755],{},"If you already have a shared hosting account with cPanel (for example, from HostGator, Bluehost, or Namecheap), you can deploy Nuxas there. The process is more manual than the platforms above, but it works.",[480,14757,14758,14761,14762,14765],{},[484,14759,14760],{},"Important note:"," Shared hosting usually runs on Apache with PHP, not Node.js. To run Nuxt there, your host must provide ",[484,14763,14764],{},"Node.js Selector"," in cPanel. Many modern shared hosts do, but some do not. Check with your host before proceeding.",[480,14767,14768],{},[484,14769,14396],{},[480,14771,14772],{},"SSG is by far the easiest mode on cPanel because it needs no Node.js runtime at all. You only need to upload static files.",[1150,14774,14775,14793,14803,14815,14872],{},[511,14776,14777,14778,14787,14790,14791,2476],{},"Build the project on your local machine:",[550,14779,14781],{"className":2586,"code":14780,"language":2578,"meta":555,"style":555},"npm run generate\n",[503,14782,14783],{"__ignoreMap":555},[559,14784,14785],{"class":561,"line":562},[559,14786,14780],{},[14788,14789],"br",{},"This produces a ",[503,14792,13356],{},[511,14794,14795,14796,14799,14800,792],{},"In cPanel, open ",[484,14797,14798],{},"File Manager"," and navigate to ",[503,14801,14802],{},"public_html",[511,14804,14805,14806,14809,14810,14812,14813,792],{},"Upload the ",[484,14807,14808],{},"contents"," of ",[503,14811,13356],{}," (not the folder itself) into ",[503,14814,14802],{},[511,14816,14817,14818,14821,14822,14824,14825],{},"Create or edit ",[503,14819,14820],{},".htaccess"," in ",[503,14823,14802],{}," to add SPA fallback so deep routes resolve correctly:",[550,14826,14830],{"className":14827,"code":14828,"language":14829,"meta":555,"style":555},"language-apache shiki shiki-themes github-light github-dark","\u003CIfModule mod_rewrite.c>\n  RewriteEngine On\n  RewriteBase \u002F\n  RewriteRule ^index\\.html$ - [L]\n  RewriteCond %{REQUEST_FILENAME} !-f\n  RewriteCond %{REQUEST_FILENAME} !-d\n  RewriteRule . \u002Findex.html [L]\n\u003C\u002FIfModule>\n","apache",[503,14831,14832,14837,14842,14847,14852,14857,14862,14867],{"__ignoreMap":555},[559,14833,14834],{"class":561,"line":562},[559,14835,14836],{},"\u003CIfModule mod_rewrite.c>\n",[559,14838,14839],{"class":561,"line":569},[559,14840,14841],{},"  RewriteEngine On\n",[559,14843,14844],{"class":561,"line":584},[559,14845,14846],{},"  RewriteBase \u002F\n",[559,14848,14849],{"class":561,"line":595},[559,14850,14851],{},"  RewriteRule ^index\\.html$ - [L]\n",[559,14853,14854],{"class":561,"line":607},[559,14855,14856],{},"  RewriteCond %{REQUEST_FILENAME} !-f\n",[559,14858,14859],{"class":561,"line":618},[559,14860,14861],{},"  RewriteCond %{REQUEST_FILENAME} !-d\n",[559,14863,14864],{"class":561,"line":629},[559,14865,14866],{},"  RewriteRule . \u002Findex.html [L]\n",[559,14868,14869],{"class":561,"line":640},[559,14870,14871],{},"\u003C\u002FIfModule>\n",[511,14873,14874],{},"Visit your domain. The site is live, no Node.js required.",[480,14876,14877],{},[484,14878,14879],{},"How to deploy SSR (only if you need server logic and Node.js Selector is available):",[1150,14881,14882,14898,14934,15114,15158],{},[511,14883,14884,14885,14894,14790,14896,2476],{},"Build the project locally:",[550,14886,14888],{"className":2586,"code":14887,"language":2578,"meta":555,"style":555},"npm run build\n",[503,14889,14890],{"__ignoreMap":555},[559,14891,14892],{"class":561,"line":562},[559,14893,14887],{},[14788,14895],{},[503,14897,13406],{},[511,14899,14795,14900,14902,14903,2265,14906,14908,14909,14912,14913,14927,14929,14930,14933],{},[484,14901,14798],{}," and navigate to a folder ",[484,14904,14905],{},"outside",[503,14907,14802],{}," (for example, ",[503,14910,14911],{},"\u002Fhome\u002Fyouruser\u002Fnuxas\u002F","). Upload:",[508,14914,14915,14920],{},[511,14916,14917,14918,2476],{},"The entire ",[503,14919,13406],{},[511,14921,14922,2146,14924,792],{},[503,14923,2808],{},[503,14925,14926],{},"package-lock.json",[14788,14928],{},"Do not upload ",[503,14931,14932],{},"node_modules\u002F"," — cPanel will install dependencies for you.",[511,14935,14936,14937,14940,14941],{},"Create a startup file called ",[503,14938,14939],{},"server.cjs"," in the same folder:",[550,14942,14946],{"className":14943,"code":14944,"language":14945,"meta":555,"style":555},"language-js shiki shiki-themes github-light github-dark","const { createApp } = require('@nuxt\u002Fcli')\nconst { listen } = require('listhen')\n\nasync function main() {\n  const { createNuxt } = await import('.\u002F.output\u002Fserver\u002Findex.mjs')\n  const nuxt = await createNuxt()\n  const app = createApp(nuxt)\n  await listen(app, { port: process.env.PORT || 3000 })\n}\n\nmain()\n","js",[503,14947,14948,14976,14998,15002,15016,15043,15061,15076,15099,15104,15108],{"__ignoreMap":555},[559,14949,14950,14953,14956,14959,14962,14964,14967,14970,14973],{"class":561,"line":562},[559,14951,14952],{"class":3422},"const",[559,14954,14955],{"class":576}," { ",[559,14957,14958],{"class":603},"createApp",[559,14960,14961],{"class":576}," } ",[559,14963,14024],{"class":3422},[559,14965,14966],{"class":565}," require",[559,14968,14969],{"class":576},"(",[559,14971,14972],{"class":580},"'@nuxt\u002Fcli'",[559,14974,14975],{"class":576},")\n",[559,14977,14978,14980,14982,14985,14987,14989,14991,14993,14996],{"class":561,"line":569},[559,14979,14952],{"class":3422},[559,14981,14955],{"class":576},[559,14983,14984],{"class":603},"listen",[559,14986,14961],{"class":576},[559,14988,14024],{"class":3422},[559,14990,14966],{"class":565},[559,14992,14969],{"class":576},[559,14994,14995],{"class":580},"'listhen'",[559,14997,14975],{"class":576},[559,14999,15000],{"class":561,"line":584},[559,15001,944],{"emptyLinePlaceholder":167},[559,15003,15004,15007,15010,15013],{"class":561,"line":595},[559,15005,15006],{"class":3422},"async",[559,15008,15009],{"class":3422}," function",[559,15011,15012],{"class":565}," main",[559,15014,15015],{"class":576},"() {\n",[559,15017,15018,15021,15023,15026,15028,15030,15033,15036,15038,15041],{"class":561,"line":607},[559,15019,15020],{"class":3422},"  const",[559,15022,14955],{"class":576},[559,15024,15025],{"class":603},"createNuxt",[559,15027,14961],{"class":576},[559,15029,14024],{"class":3422},[559,15031,15032],{"class":3422}," await",[559,15034,15035],{"class":3422}," import",[559,15037,14969],{"class":576},[559,15039,15040],{"class":580},"'.\u002F.output\u002Fserver\u002Findex.mjs'",[559,15042,14975],{"class":576},[559,15044,15045,15047,15050,15053,15055,15058],{"class":561,"line":618},[559,15046,15020],{"class":3422},[559,15048,15049],{"class":603}," nuxt",[559,15051,15052],{"class":3422}," =",[559,15054,15032],{"class":3422},[559,15056,15057],{"class":565}," createNuxt",[559,15059,15060],{"class":576},"()\n",[559,15062,15063,15065,15068,15070,15073],{"class":561,"line":629},[559,15064,15020],{"class":3422},[559,15066,15067],{"class":603}," app",[559,15069,15052],{"class":3422},[559,15071,15072],{"class":565}," createApp",[559,15074,15075],{"class":576},"(nuxt)\n",[559,15077,15078,15081,15084,15087,15090,15093,15096],{"class":561,"line":640},[559,15079,15080],{"class":3422},"  await",[559,15082,15083],{"class":565}," listen",[559,15085,15086],{"class":576},"(app, { port: process.env.",[559,15088,15089],{"class":603},"PORT",[559,15091,15092],{"class":3422}," ||",[559,15094,15095],{"class":603}," 3000",[559,15097,15098],{"class":576}," })\n",[559,15100,15101],{"class":561,"line":651},[559,15102,15103],{"class":576},"}\n",[559,15105,15106],{"class":561,"line":660},[559,15107,944],{"emptyLinePlaceholder":167},[559,15109,15110,15112],{"class":561,"line":669},[559,15111,12951],{"class":565},[559,15113,15060],{"class":576},[511,15115,14795,15116,13810,15119,3075,15122],{},[484,15117,15118],{},"Setup Node.js App",[484,15120,15121],{},"Create Application",[508,15123,15124,15130,15139,15145,15152],{},[511,15125,15126,15129],{},[484,15127,15128],{},"Node.js version:"," 20 or newer.",[511,15131,15132,15135,15136,1343],{},[484,15133,15134],{},"Application root:"," the folder you created (e.g., ",[503,15137,15138],{},"nuxas",[511,15140,15141,15144],{},[484,15142,15143],{},"Application URL:"," your domain.",[511,15146,15147,2265,15150,792],{},[484,15148,15149],{},"Application startup file:",[503,15151,14939],{},[511,15153,15154,15157],{},[484,15155,15156],{},"Application mode:"," Production.",[511,15159,1166,15160,15163],{},[484,15161,15162],{},"Create",". cPanel will install dependencies and start the app.",[480,15165,15166],{},[484,15167,15168],{},"Limitations on shared hosting (SSR only):",[508,15170,15171,15174,15177,15182],{},[511,15172,15173],{},"SSR may be slow due to limited resources.",[511,15175,15176],{},"You cannot use PM2 for process management (cPanel handles it).",[511,15178,15179,15180,792],{},"Environment variables are set in the Node.js Selector interface, not in ",[503,15181,3347],{},[511,15183,15184],{},"Decap CMS cloud mode is not possible on shared hosting. You would need to use the local mode and commit changes manually.",[495,15186,15188],{"id":15187},"option-5-vps-virtual-private-server","Option 5 — VPS (Virtual Private Server)",[480,15190,15191],{},"A VPS gives you full control. You manage the server, install Node.js, configure Nginx, and set up SSL. This is the most flexible option, but also the most work.",[480,15193,15194],{},[484,15195,15196],{},"Why choose a VPS:",[508,15198,15199,15202,15205,15208],{},[511,15200,15201],{},"Full control over the environment.",[511,15203,15204],{},"No vendor lock-in.",[511,15206,15207],{},"Can host multiple sites on one server.",[511,15209,15210],{},"Predictable monthly cost.",[480,15212,15213],{},[484,15214,14396],{},[480,15216,15217,15218,15220],{},"SSG on a VPS is trivial: you only need a static web server. You can use Nginx to serve ",[503,15219,13356],{}," directly. No Node.js, no PM2, no process manager.",[1150,15222,15223,15229,15243,15277,15294,15358,15400],{},[511,15224,15225,15228],{},[484,15226,15227],{},"Provision a VPS"," from a provider like DigitalOcean, Linode, Vultr, or Hetzner. Choose Ubuntu 22.04 or 24.04.",[511,15230,15231,15234],{},[484,15232,15233],{},"Connect via SSH:",[550,15235,15237],{"className":2586,"code":15236,"language":2578,"meta":555,"style":555},"ssh root@your-server-ip\n",[503,15238,15239],{"__ignoreMap":555},[559,15240,15241],{"class":561,"line":562},[559,15242,15236],{},[511,15244,15245,15248],{},[484,15246,15247],{},"Install Nginx:",[550,15249,15253],{"className":15250,"code":15251,"language":15252,"meta":555,"style":555},"language-bash shiki shiki-themes github-light github-dark","apt update && apt install nginx -y\n","bash",[503,15254,15255],{"__ignoreMap":555},[559,15256,15257,15260,15263,15266,15268,15271,15274],{"class":561,"line":562},[559,15258,15259],{"class":565},"apt",[559,15261,15262],{"class":580}," update",[559,15264,15265],{"class":576}," && ",[559,15267,15259],{"class":565},[559,15269,15270],{"class":580}," install",[559,15272,15273],{"class":580}," nginx",[559,15275,15276],{"class":603}," -y\n",[511,15278,15279,15282,15283,14809,15285,3706,15287,15290,15291,1343],{},[484,15280,15281],{},"Build the project locally"," and upload the ",[484,15284,14808],{},[503,15286,13356],{},[503,15288,15289],{},"\u002Fvar\u002Fwww\u002Fnuxas\u002F"," on the server (via SFTP or ",[503,15292,15293],{},"scp",[511,15295,15296,15299,15300,657,15303],{},[484,15297,15298],{},"Configure Nginx"," to serve the static files. Create ",[503,15301,15302],{},"\u002Fetc\u002Fnginx\u002Fsites-available\u002Fnuxas",[550,15304,15308],{"className":15305,"code":15306,"language":15307,"meta":555,"style":555},"language-nginx shiki shiki-themes github-light github-dark","server {\n  listen 80;\n  server_name yourdomain.com;\n  root \u002Fvar\u002Fwww\u002Fnuxas;\n  index index.html;\n\n  location \u002F {\n    try_files $uri $uri\u002F \u002Findex.html;\n  }\n}\n","nginx",[503,15309,15310,15315,15320,15325,15330,15335,15339,15344,15349,15354],{"__ignoreMap":555},[559,15311,15312],{"class":561,"line":562},[559,15313,15314],{},"server {\n",[559,15316,15317],{"class":561,"line":569},[559,15318,15319],{},"  listen 80;\n",[559,15321,15322],{"class":561,"line":584},[559,15323,15324],{},"  server_name yourdomain.com;\n",[559,15326,15327],{"class":561,"line":595},[559,15328,15329],{},"  root \u002Fvar\u002Fwww\u002Fnuxas;\n",[559,15331,15332],{"class":561,"line":607},[559,15333,15334],{},"  index index.html;\n",[559,15336,15337],{"class":561,"line":618},[559,15338,944],{"emptyLinePlaceholder":167},[559,15340,15341],{"class":561,"line":629},[559,15342,15343],{},"  location \u002F {\n",[559,15345,15346],{"class":561,"line":640},[559,15347,15348],{},"    try_files $uri $uri\u002F \u002Findex.html;\n",[559,15350,15351],{"class":561,"line":651},[559,15352,15353],{},"  }\n",[559,15355,15356],{"class":561,"line":660},[559,15357,15103],{},[511,15359,15360,15363],{},[484,15361,15362],{},"Enable the site and restart Nginx:",[550,15364,15366],{"className":15250,"code":15365,"language":15252,"meta":555,"style":555},"ln -s \u002Fetc\u002Fnginx\u002Fsites-available\u002Fnuxas \u002Fetc\u002Fnginx\u002Fsites-enabled\u002F\nnginx -t\nsystemctl restart nginx\n",[503,15367,15368,15382,15389],{"__ignoreMap":555},[559,15369,15370,15373,15376,15379],{"class":561,"line":562},[559,15371,15372],{"class":565},"ln",[559,15374,15375],{"class":603}," -s",[559,15377,15378],{"class":580}," \u002Fetc\u002Fnginx\u002Fsites-available\u002Fnuxas",[559,15380,15381],{"class":580}," \u002Fetc\u002Fnginx\u002Fsites-enabled\u002F\n",[559,15383,15384,15386],{"class":561,"line":569},[559,15385,15307],{"class":565},[559,15387,15388],{"class":603}," -t\n",[559,15390,15391,15394,15397],{"class":561,"line":584},[559,15392,15393],{"class":565},"systemctl",[559,15395,15396],{"class":580}," restart",[559,15398,15399],{"class":580}," nginx\n",[511,15401,15402,15405],{},[484,15403,15404],{},"Set up SSL with Certbot:",[550,15406,15408],{"className":15250,"code":15407,"language":15252,"meta":555,"style":555},"snap install certbot --classic\ncertbot --nginx -d yourdomain.com\n",[503,15409,15410,15423],{"__ignoreMap":555},[559,15411,15412,15415,15417,15420],{"class":561,"line":562},[559,15413,15414],{"class":565},"snap",[559,15416,15270],{"class":580},[559,15418,15419],{"class":580}," certbot",[559,15421,15422],{"class":603}," --classic\n",[559,15424,15425,15428,15431,15434],{"class":561,"line":569},[559,15426,15427],{"class":565},"certbot",[559,15429,15430],{"class":603}," --nginx",[559,15432,15433],{"class":603}," -d",[559,15435,15436],{"class":580}," yourdomain.com\n",[480,15438,15439],{},[484,15440,14455],{},[1150,15442,15443,15448,15518,15528,15649,15684,15754,15786],{},[511,15444,15445,15447],{},[484,15446,15227],{}," and connect via SSH as above.",[511,15449,15450,15453],{},[484,15451,15452],{},"Install Node.js, Nginx, and PM2:",[550,15454,15456],{"className":15250,"code":15455,"language":15252,"meta":555,"style":555},"apt update && apt install nginx -y\ncurl -fsSL https:\u002F\u002Fdeb.nodesource.com\u002Fsetup_20.x | bash -\napt install -y nodejs\nnpm install -g pm2\n",[503,15457,15458,15474,15494,15506],{"__ignoreMap":555},[559,15459,15460,15462,15464,15466,15468,15470,15472],{"class":561,"line":562},[559,15461,15259],{"class":565},[559,15463,15262],{"class":580},[559,15465,15265],{"class":576},[559,15467,15259],{"class":565},[559,15469,15270],{"class":580},[559,15471,15273],{"class":580},[559,15473,15276],{"class":603},[559,15475,15476,15479,15482,15485,15488,15491],{"class":561,"line":569},[559,15477,15478],{"class":565},"curl",[559,15480,15481],{"class":603}," -fsSL",[559,15483,15484],{"class":580}," https:\u002F\u002Fdeb.nodesource.com\u002Fsetup_20.x",[559,15486,15487],{"class":3422}," |",[559,15489,15490],{"class":565}," bash",[559,15492,15493],{"class":580}," -\n",[559,15495,15496,15498,15500,15503],{"class":561,"line":584},[559,15497,15259],{"class":565},[559,15499,15270],{"class":580},[559,15501,15502],{"class":603}," -y",[559,15504,15505],{"class":580}," nodejs\n",[559,15507,15508,15510,15512,15515],{"class":561,"line":595},[559,15509,2622],{"class":565},[559,15511,15270],{"class":580},[559,15513,15514],{"class":603}," -g",[559,15516,15517],{"class":580}," pm2\n",[511,15519,15520,15282,15522,15524,15525,15527],{},[484,15521,15281],{},[503,15523,13406],{}," folder and ",[503,15526,2808],{}," to your server (via SFTP or Git).",[511,15529,15530,15536,15537],{},[484,15531,15532,15533],{},"Create an ",[503,15534,15535],{},"ecosystem.config.cjs"," file in your project folder on the server:\n",[550,15538,15540],{"className":14943,"code":15539,"language":14945,"meta":555,"style":555},"module.exports = {\n  apps: [\n    {\n      name: 'nuxas',\n      port: '3000',\n      exec_mode: 'cluster',\n      instances: 'max',\n      script: '.\u002F.output\u002Fserver\u002Findex.mjs',\n      env: {\n        NODE_ENV: 'production',\n      },\n    },\n  ],\n}\n",[503,15541,15542,15557,15562,15567,15577,15587,15597,15607,15616,15621,15631,15636,15641,15645],{"__ignoreMap":555},[559,15543,15544,15547,15549,15552,15554],{"class":561,"line":562},[559,15545,15546],{"class":603},"module",[559,15548,792],{"class":576},[559,15550,15551],{"class":603},"exports",[559,15553,15052],{"class":3422},[559,15555,15556],{"class":576}," {\n",[559,15558,15559],{"class":561,"line":569},[559,15560,15561],{"class":576},"  apps: [\n",[559,15563,15564],{"class":561,"line":584},[559,15565,15566],{"class":576},"    {\n",[559,15568,15569,15572,15575],{"class":561,"line":595},[559,15570,15571],{"class":576},"      name: ",[559,15573,15574],{"class":580},"'nuxas'",[559,15576,3443],{"class":576},[559,15578,15579,15582,15585],{"class":561,"line":607},[559,15580,15581],{"class":576},"      port: ",[559,15583,15584],{"class":580},"'3000'",[559,15586,3443],{"class":576},[559,15588,15589,15592,15595],{"class":561,"line":618},[559,15590,15591],{"class":576},"      exec_mode: ",[559,15593,15594],{"class":580},"'cluster'",[559,15596,3443],{"class":576},[559,15598,15599,15602,15605],{"class":561,"line":629},[559,15600,15601],{"class":576},"      instances: ",[559,15603,15604],{"class":580},"'max'",[559,15606,3443],{"class":576},[559,15608,15609,15612,15614],{"class":561,"line":640},[559,15610,15611],{"class":576},"      script: ",[559,15613,15040],{"class":580},[559,15615,3443],{"class":576},[559,15617,15618],{"class":561,"line":651},[559,15619,15620],{"class":576},"      env: {\n",[559,15622,15623,15626,15629],{"class":561,"line":660},[559,15624,15625],{"class":576},"        NODE_ENV: ",[559,15627,15628],{"class":580},"'production'",[559,15630,3443],{"class":576},[559,15632,15633],{"class":561,"line":669},[559,15634,15635],{"class":576},"      },\n",[559,15637,15638],{"class":561,"line":676},[559,15639,15640],{"class":576},"    },\n",[559,15642,15643],{"class":561,"line":684},[559,15644,3496],{"class":576},[559,15646,15647],{"class":561,"line":692},[559,15648,15103],{"class":576},[511,15650,15651,15654],{},[484,15652,15653],{},"Start the app with PM2:",[550,15655,15657],{"className":15250,"code":15656,"language":15252,"meta":555,"style":555},"pm2 start ecosystem.config.cjs\npm2 save\npm2 startup\n",[503,15658,15659,15670,15677],{"__ignoreMap":555},[559,15660,15661,15664,15667],{"class":561,"line":562},[559,15662,15663],{"class":565},"pm2",[559,15665,15666],{"class":580}," start",[559,15668,15669],{"class":580}," ecosystem.config.cjs\n",[559,15671,15672,15674],{"class":561,"line":569},[559,15673,15663],{"class":565},[559,15675,15676],{"class":580}," save\n",[559,15678,15679,15681],{"class":561,"line":584},[559,15680,15663],{"class":565},[559,15682,15683],{"class":580}," startup\n",[511,15685,15686,15688,15689,657,15691],{},[484,15687,15298],{}," as a reverse proxy. Create ",[503,15690,15302],{},[550,15692,15694],{"className":15305,"code":15693,"language":15307,"meta":555,"style":555},"server {\n  listen 80;\n  server_name yourdomain.com;\n\n  location \u002F {\n    proxy_pass http:\u002F\u002Flocalhost:3000;\n    proxy_http_version 1.1;\n    proxy_set_header Upgrade $http_upgrade;\n    proxy_set_header Connection 'upgrade';\n    proxy_set_header Host $host;\n    proxy_cache_bypass $http_upgrade;\n  }\n}\n",[503,15695,15696,15700,15704,15708,15712,15716,15721,15726,15731,15736,15741,15746,15750],{"__ignoreMap":555},[559,15697,15698],{"class":561,"line":562},[559,15699,15314],{},[559,15701,15702],{"class":561,"line":569},[559,15703,15319],{},[559,15705,15706],{"class":561,"line":584},[559,15707,15324],{},[559,15709,15710],{"class":561,"line":595},[559,15711,944],{"emptyLinePlaceholder":167},[559,15713,15714],{"class":561,"line":607},[559,15715,15343],{},[559,15717,15718],{"class":561,"line":618},[559,15719,15720],{},"    proxy_pass http:\u002F\u002Flocalhost:3000;\n",[559,15722,15723],{"class":561,"line":629},[559,15724,15725],{},"    proxy_http_version 1.1;\n",[559,15727,15728],{"class":561,"line":640},[559,15729,15730],{},"    proxy_set_header Upgrade $http_upgrade;\n",[559,15732,15733],{"class":561,"line":651},[559,15734,15735],{},"    proxy_set_header Connection 'upgrade';\n",[559,15737,15738],{"class":561,"line":660},[559,15739,15740],{},"    proxy_set_header Host $host;\n",[559,15742,15743],{"class":561,"line":669},[559,15744,15745],{},"    proxy_cache_bypass $http_upgrade;\n",[559,15747,15748],{"class":561,"line":676},[559,15749,15353],{},[559,15751,15752],{"class":561,"line":684},[559,15753,15103],{},[511,15755,15756,15758],{},[484,15757,15362],{},[550,15759,15760],{"className":15250,"code":15365,"language":15252,"meta":555,"style":555},[503,15761,15762,15772,15778],{"__ignoreMap":555},[559,15763,15764,15766,15768,15770],{"class":561,"line":562},[559,15765,15372],{"class":565},[559,15767,15375],{"class":603},[559,15769,15378],{"class":580},[559,15771,15381],{"class":580},[559,15773,15774,15776],{"class":561,"line":569},[559,15775,15307],{"class":565},[559,15777,15388],{"class":603},[559,15779,15780,15782,15784],{"class":561,"line":584},[559,15781,15393],{"class":565},[559,15783,15396],{"class":580},[559,15785,15399],{"class":580},[511,15787,15788,15790],{},[484,15789,15404],{},[550,15791,15792],{"className":15250,"code":15407,"language":15252,"meta":555,"style":555},[503,15793,15794,15804],{"__ignoreMap":555},[559,15795,15796,15798,15800,15802],{"class":561,"line":562},[559,15797,15414],{"class":565},[559,15799,15270],{"class":580},[559,15801,15419],{"class":580},[559,15803,15422],{"class":603},[559,15805,15806,15808,15810,15812],{"class":561,"line":569},[559,15807,15427],{"class":565},[559,15809,15430],{"class":603},[559,15811,15433],{"class":603},[559,15813,15436],{"class":580},[480,15815,15816,15819],{},[484,15817,15818],{},"Decap CMS on VPS:"," You can use the GitHub backend for Decap CMS, but you need to create a GitHub OAuth app and configure the callback URL to point to your server. This is more complex than the Netlify setup. Alternatively, you can use the local mode and commit changes manually.",[495,15821,15823],{"id":15822},"summary-which-host-and-which-mode-should-you-choose","Summary: Which Host and Which Mode Should You Choose?",[480,15825,15826],{},[484,15827,15828],{},"Mode choice:",[508,15830,15831,15844],{},[511,15832,15833,15836,15837,13444,15839,4352,15841,15843],{},[484,15834,15835],{},"Frontend-only Nuxas:"," always use ",[484,15838,13454],{},[503,15840,13348],{},[503,15842,13461],{},"). It is faster, cheaper, and simpler on every platform.",[511,15845,15846,15849,15850,13444,15852,4352,15854,823,15856,1343],{},[484,15847,15848],{},"Nuxas with API routes, auth, or per-request logic:"," use ",[484,15851,13443],{},[503,15853,4321],{},[503,15855,13450],{},[503,15857,14340],{},[480,15859,15860],{},[484,15861,15862],{},"Platform choice:",[13479,15864,15865,15880],{},[13482,15866,15867],{},[13485,15868,15869,15872,15875,15878],{},[13488,15870,15871],{},"Host",[13488,15873,15874],{},"SSG support",[13488,15876,15877],{},"SSR support",[13488,15879,2156],{},[13501,15881,15882,15905,15927,15948,15968,15987],{},[13485,15883,15884,15889,15896,15902],{},[13506,15885,15886],{},[484,15887,15888],{},"Netlify",[13506,15890,15891,15892,13447,15894],{},"✅ ",[503,15893,14265],{},[503,15895,13461],{},[13506,15897,15891,15898,13447,15900],{},[503,15899,14269],{},[503,15901,13450],{},[13506,15903,15904],{},"Git Gateway (easiest)",[13485,15906,15907,15912,15918,15924],{},[13506,15908,15909],{},[484,15910,15911],{},"Cloudflare Pages",[13506,15913,15891,15914,13447,15916],{},[503,15915,14265],{},[503,15917,13461],{},[13506,15919,15891,15920,13447,15922],{},[503,15921,14269],{},[503,15923,13450],{},[13506,15925,15926],{},"GitHub backend (more setup)",[13485,15928,15929,15934,15940,15946],{},[13506,15930,15931],{},[484,15932,15933],{},"Vercel",[13506,15935,15891,15936,13447,15938],{},[503,15937,14265],{},[503,15939,13461],{},[13506,15941,15891,15942,13447,15944],{},[503,15943,14269],{},[503,15945,14572],{},[13506,15947,15926],{},[13485,15949,15950,15954,15960,15966],{},[13506,15951,15952],{},[484,15953,14672],{},[13506,15955,15891,15956,13447,15958],{},[503,15957,14265],{},[503,15959,13461],{},[13506,15961,15891,15962,13447,15964],{},[503,15963,14269],{},[503,15965,14734],{},[13506,15967,15926],{},[13485,15969,15970,15975,15981,15984],{},[13506,15971,15972],{},[484,15973,15974],{},"cPanel",[13506,15976,15977,15978,15980],{},"✅ upload ",[503,15979,13461],{}," contents",[13506,15982,15983],{},"✅ Node.js Selector required",[13506,15985,15986],{},"Local mode only",[13485,15988,15989,15994,15999,16002],{},[13506,15990,15991],{},[484,15992,15993],{},"VPS",[13506,15995,15996,15997],{},"✅ Nginx serves ",[503,15998,13461],{},[13506,16000,16001],{},"✅ Node.js + PM2 + Nginx",[13506,16003,16004],{},"GitHub backend or local mode",[480,16006,16007,16008,16011,16012,792],{},"If you are using Decap CMS and want the simplest setup, ",[484,16009,16010],{},"Netlify is the clear winner",". If you are not using Decap CMS, or if you are comfortable with a bit more setup, Cloudflare Pages and Vercel are excellent alternatives. For a frontend-only Nuxas site, ",[484,16013,16014],{},"SSG on any of these platforms is the fastest and cheapest path",[495,16016,1704],{"id":1703},[480,16018,16019],{},"In the next chapter, we will cover custom domains. You will learn how to connect your own domain to your hosting provider, configure DNS records, and set up SSL. This is the final step before your site is truly yours.",[480,16021,1714],{},[1716,16023,16024],{},"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 .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}",{"title":555,"searchDepth":584,"depth":584,"links":16026},[16027],{"id":14148,"depth":569,"text":14143,"children":16028},[16029,16030,16031,16032,16033,16034,16035,16036],{"id":14160,"depth":584,"text":14161},{"id":14345,"depth":584,"text":14346},{"id":14511,"depth":584,"text":14512},{"id":14637,"depth":584,"text":14638},{"id":14751,"depth":584,"text":14752},{"id":15187,"depth":584,"text":15188},{"id":15822,"depth":584,"text":15823},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to deploying your Nuxas project to Cloudflare Pages, Vercel, AWS Amplify, cPanel shared hosting, and a VPS. Learn the difference between SSG and SSR builds, and the exact build commands, presets, and platform-specific configurations for each.",{},"\u002Fdocs\u002F18-other-hosts",{"title":14143,"description":16037},"docs\u002F18-other-hosts","xhWeucYIcT6-lJi0Ag74CI9T0hMyqg9mW3L_0b7fhYY",{"id":16044,"title":16045,"badge":12177,"body":16046,"description":16722,"extension":1763,"meta":16723,"navigation":167,"order":1535,"path":16724,"section":6,"seo":16725,"stem":16726,"__hash__":16727},"docs\u002Fdocs\u002F19-custom-domain.md","Setting Up a Custom Domain",{"type":473,"value":16047,"toc":16693},[16048,16051,16054,16065,16068,16072,16075,16114,16117,16122,16144,16148,16151,16202,16206,16209,16212,16248,16251,16275,16278,16299,16302,16324,16328,16331,16350,16357,16360,16363,16394,16397,16419,16423,16436,16440,16443,16446,16457,16464,16468,16471,16474,16487,16490,16494,16501,16556,16559,16577,16580,16584,16592,16595,16608,16618,16621,16625,16628,16634,16640,16646,16648,16652,16655,16659,16665,16669,16676,16680,16683,16685,16688,16690],[476,16049,16045],{"id":16050},"setting-up-a-custom-domain",[480,16052,16053],{},"In the previous chapter, we deployed to Netlify, and we discussed other hosting providers. Now it is time to connect your own domain name.",[480,16055,16056,16057,16060,16061,16064],{},"A custom domain is the address visitors type to reach your site, like ",[503,16058,16059],{},"my-saas.com"," instead of ",[503,16062,16063],{},"random-name-12345.netlify.app",". It makes your site look professional, improves brand recognition, and is essential for SEO. Search engines treat a custom domain more seriously than a subdomain on a hosting provider.",[480,16066,16067],{},"This chapter walks you through the entire process: buying a domain, connecting it to your hosting provider, configuring DNS records, and enabling HTTPS.",[495,16069,16071],{"id":16070},"part-1-buying-a-domain","Part 1 — Buying a Domain",[480,16073,16074],{},"If you do not already own a domain, you need to buy one. There are many registrars to choose from. Here are the most popular ones:",[508,16076,16077,16086,16095,16104],{},[511,16078,16079,6911,16082],{},[484,16080,16081],{},"Namecheap",[2267,16083,16084],{"href":16084,"rel":16085},"https:\u002F\u002Fwww.namecheap.com",[2270],[511,16087,16088,6911,16091],{},[484,16089,16090],{},"Cloudflare Registrar",[2267,16092,16093],{"href":16093,"rel":16094},"https:\u002F\u002Fwww.cloudflare.com\u002Fproducts\u002Fregistrar\u002F",[2270],[511,16096,16097,6911,16100],{},[484,16098,16099],{},"Porkbun",[2267,16101,16102],{"href":16102,"rel":16103},"https:\u002F\u002Fporkbun.com",[2270],[511,16105,16106,6911,16109,16113],{},[484,16107,16108],{},"Google Domains",[2267,16110,16111],{"href":16111,"rel":16112},"https:\u002F\u002Fdomains.google",[2270]," (now Squarespace)",[480,16115,16116],{},"All four are reliable, and the prices are usually within a few dollars of each other. For most users, Namecheap or Cloudflare Registrar are the best choices.",[480,16118,16119],{},[484,16120,16121],{},"How to buy a domain:",[1150,16123,16124,16127,16132,16135,16138,16141],{},[511,16125,16126],{},"Go to your chosen registrar.",[511,16128,16129,16130,792],{},"Search for the domain name you want. For example, ",[503,16131,16059],{},[511,16133,16134],{},"If the domain is available, add it to your cart.",[511,16136,16137],{},"Choose the registration period. One year is the minimum, but longer periods often cost less per year. Two to three years is a common choice.",[511,16139,16140],{},"Complete the checkout. You will need to provide your name, address, and payment information.",[511,16142,16143],{},"After the purchase, you will receive an email from the registrar with instructions to manage your domain.",[495,16145,16147],{"id":16146},"a-note-on-domain-names","A Note on Domain Names",[480,16149,16150],{},"Domain names are a branding decision, not just a technical one. A few guidelines:",[508,16152,16153,16164,16186,16192],{},[511,16154,16155,2265,16158,16160,16161,792],{},[484,16156,16157],{},"Keep it short.",[503,16159,16059],{}," is better than ",[503,16162,16163],{},"my-awesome-saas-product-2026.com",[511,16165,16166,16172,16173,779,16176,4042,16179,16182,16183,16185],{},[484,16167,919,16168,16171],{},[503,16169,16170],{},".com"," if possible."," It is the most trusted TLD. ",[503,16174,16175],{},".io",[503,16177,16178],{},".dev",[503,16180,16181],{},".ai"," are also acceptable for SaaS, but ",[503,16184,16170],{}," is still the default.",[511,16187,16188,16191],{},[484,16189,16190],{},"Avoid hyphens and numbers."," They are hard to say out loud and easy to mistype.",[511,16193,16194,16197,16198,16201],{},[484,16195,16196],{},"Check social media availability."," If ",[503,16199,16200],{},"@my-saas"," is taken on Twitter, your branding will be inconsistent.",[495,16203,16205],{"id":16204},"part-2-adding-the-domain-to-your-hosting-provider","Part 2 — Adding the Domain to Your Hosting Provider",[480,16207,16208],{},"The next step is to connect the domain to your hosting provider. The exact process depends on which provider you used in the previous chapter.",[732,16210,15888],{"id":16211},"netlify",[1150,16213,16214,16217,16220,16231,16236,16245],{},[511,16215,16216],{},"Log in to your Netlify dashboard.",[511,16218,16219],{},"Click on your site.",[511,16221,2638,16222,4352,16225,4352,16228,792],{},[484,16223,16224],{},"Site settings",[484,16226,16227],{},"Domain management",[484,16229,16230],{},"Domains",[511,16232,1166,16233,792],{},[484,16234,16235],{},"Add a domain",[511,16237,16238,16239,16241,16242,792],{},"Enter your domain name (for example, ",[503,16240,16059],{},") and click ",[484,16243,16244],{},"Verify",[511,16246,16247],{},"Netlify will show you instructions for DNS configuration. Keep this page open — you will need it in Part 3.",[732,16249,15911],{"id":16250},"cloudflare-pages",[1150,16252,16253,16256,16261,16269,16272],{},[511,16254,16255],{},"Log in to your Cloudflare dashboard.",[511,16257,2638,16258,16260],{},[484,16259,14407],{},", then select your project.",[511,16262,1166,16263,2675,16266,792],{},[484,16264,16265],{},"Custom domains",[484,16267,16268],{},"Set up a custom domain",[511,16270,16271],{},"Enter your domain name.",[511,16273,16274],{},"Cloudflare will automatically configure the DNS if your domain is also registered with Cloudflare. If not, you will need to add a CNAME record.",[732,16276,15933],{"id":16277},"vercel",[1150,16279,16280,16283,16290,16296],{},[511,16281,16282],{},"Log in to your Vercel dashboard.",[511,16284,16285,16286,4352,16288,792],{},"Go to your project, then ",[484,16287,13135],{},[484,16289,16230],{},[511,16291,1166,16292,16295],{},[484,16293,16294],{},"Add",", then enter your domain name.",[511,16297,16298],{},"Vercel will show you the DNS records to add. Keep this page open.",[732,16300,14672],{"id":16301},"aws-amplify",[1150,16303,16304,16309,16312,16319,16321],{},[511,16305,14669,16306,792],{},[484,16307,16308],{},"Amplify",[511,16310,16311],{},"Select your app.",[511,16313,2638,16314,4352,16316,792],{},[484,16315,16227],{},[484,16317,16318],{},"Add domain",[511,16320,16271],{},[511,16322,16323],{},"Follow the prompts to configure DNS.",[495,16325,16327],{"id":16326},"part-3-configuring-dns-records","Part 3 — Configuring DNS Records",[480,16329,16330],{},"DNS records tell the internet where your domain points. There are two common configurations:",[1150,16332,16333,16341],{},[511,16334,16335,16338,16339,792],{},[484,16336,16337],{},"A record"," — points to an IP address. Used for apex domains like ",[503,16340,16059],{},[511,16342,16343,16346,16347,792],{},[484,16344,16345],{},"CNAME record"," — points to another domain name. Used for subdomains like ",[503,16348,16349],{},"www.my-saas.com",[480,16351,16352,16353,16356],{},"Your hosting provider will tell you exactly which records to add. But you need to add them at your ",[484,16354,16355],{},"domain registrar",", not at your hosting provider.",[480,16358,16359],{},"Here is how to add DNS records at the most popular registrars.",[732,16361,16081],{"id":16362},"namecheap",[1150,16364,16365,16368,16378,16385,16391],{},[511,16366,16367],{},"Log in to Namecheap.",[511,16369,1166,16370,16373,16374,16377],{},[484,16371,16372],{},"Domain List"," in the left sidebar, then click ",[484,16375,16376],{},"Manage"," next to your domain.",[511,16379,16380,16381,16384],{},"Go to the ",[484,16382,16383],{},"Advanced DNS"," tab.",[511,16386,1166,16387,16390],{},[484,16388,16389],{},"Add New Record"," and enter the record type, host, and value provided by your hosting provider.",[511,16392,16393],{},"Click the green checkmark to save.",[732,16395,16090],{"id":16396},"cloudflare-registrar",[1150,16398,16399,16402,16409,16414],{},[511,16400,16401],{},"Log in to Cloudflare.",[511,16403,16404,16405,16408],{},"Select your domain, then go to ",[484,16406,16407],{},"DNS"," in the left sidebar.",[511,16410,1166,16411,792],{},[484,16412,16413],{},"Add record",[511,16415,16416,16417,792],{},"Choose the record type, enter the name and value, and click ",[484,16418,1252],{},[732,16420,16422],{"id":16421},"google-domains-squarespace","Google Domains \u002F Squarespace",[1150,16424,16425,16428,16433],{},[511,16426,16427],{},"Log in to your registrar.",[511,16429,7452,16430,16432],{},[484,16431,16407],{}," section for your domain.",[511,16434,16435],{},"Add the records provided by your hosting provider.",[495,16437,16439],{"id":16438},"part-4-waiting-for-propagation","Part 4 — Waiting for Propagation",[480,16441,16442],{},"DNS changes do not take effect immediately. The internet needs time to propagate the new records, which can take anywhere from a few minutes to a few hours. In rare cases, it can take up to 48 hours.",[480,16444,16445],{},"During this time, you may notice:",[508,16447,16448,16451,16454],{},[511,16449,16450],{},"Your domain works for some people but not others.",[511,16452,16453],{},"Your domain works on some networks but not others.",[511,16455,16456],{},"Your domain shows an error like \"This site can't be reached.\"",[480,16458,16459,16460,792],{},"This is normal. Wait patiently. You can check the propagation status using a tool like ",[2267,16461,16462],{"href":16462,"rel":16463},"https:\u002F\u002Fdnschecker.org",[2270],[495,16465,16467],{"id":16466},"part-5-enabling-https","Part 5 — Enabling HTTPS",[480,16469,16470],{},"HTTPS is the secure version of HTTP. It encrypts traffic between your site and your visitors, prevents tampering, and is required for a good SEO score.",[480,16472,16473],{},"Most hosting providers enable HTTPS automatically once your domain is connected. Netlify, Cloudflare, Vercel, and AWS Amplify all provide free SSL certificates via Let's Encrypt.",[480,16475,16476,16479,16480,16483,16484,792],{},[484,16477,16478],{},"If HTTPS is not automatic,"," check your hosting provider's documentation. On Netlify, for example, you can click ",[484,16481,16482],{},"Verify DNS configuration"," in the domain settings page, then ",[484,16485,16486],{},"Provision certificate",[480,16488,16489],{},"For a VPS, you need to install Certbot manually, as we covered in the previous chapter.",[495,16491,16493],{"id":16492},"part-6-updating-siteurl","Part 6 — Updating site.url",[480,16495,16496,16497,14821,16499,3075],{},"After your domain is working, update ",[503,16498,3695],{},[503,16500,2811],{},[550,16502,16504],{"className":3413,"code":16503,"language":3415,"meta":555,"style":555},"site: {\n  url: 'https:\u002F\u002Fmy-saas.com',\n  name: 'My SaaS',\n  description: 'My SaaS description',\n  defaultLocale: 'en',\n},\n",[503,16505,16506,16512,16522,16532,16542,16552],{"__ignoreMap":555},[559,16507,16508,16510],{"class":561,"line":562},[559,16509,3530],{"class":565},[559,16511,3543],{"class":576},[559,16513,16514,16516,16518,16520],{"class":561,"line":569},[559,16515,3548],{"class":565},[559,16517,577],{"class":576},[559,16519,3641],{"class":580},[559,16521,3443],{"class":576},[559,16523,16524,16526,16528,16530],{"class":561,"line":584},[559,16525,3560],{"class":565},[559,16527,577],{"class":576},[559,16529,3652],{"class":580},[559,16531,3443],{"class":576},[559,16533,16534,16536,16538,16540],{"class":561,"line":595},[559,16535,3572],{"class":565},[559,16537,577],{"class":576},[559,16539,13695],{"class":580},[559,16541,3443],{"class":576},[559,16543,16544,16546,16548,16550],{"class":561,"line":607},[559,16545,3584],{"class":565},[559,16547,577],{"class":576},[559,16549,3589],{"class":580},[559,16551,3443],{"class":576},[559,16553,16554],{"class":561,"line":618},[559,16555,3596],{"class":576},[480,16557,16558],{},"Save the file, commit the change, and push to GitHub:",[550,16560,16562],{"className":2586,"code":16561,"language":2578,"meta":555,"style":555},"git add .\ngit commit -m \"Update site URL to custom domain\"\ngit push\n",[503,16563,16564,16568,16573],{"__ignoreMap":555},[559,16565,16566],{"class":561,"line":562},[559,16567,12995],{},[559,16569,16570],{"class":561,"line":569},[559,16571,16572],{},"git commit -m \"Update site URL to custom domain\"\n",[559,16574,16575],{"class":561,"line":584},[559,16576,13738],{},[480,16578,16579],{},"Your hosting provider will rebuild the site automatically. After the rebuild, your sitemap, canonical tags, and Open Graph URLs will all use the new domain.",[495,16581,16583],{"id":16582},"part-7-adding-the-www-subdomain","Part 7 — Adding the www Subdomain",[480,16585,16586,16587,2146,16589,16591],{},"Most sites are accessible from both ",[503,16588,16059],{},[503,16590,16349],{},". To avoid duplicate content (which hurts SEO), you should redirect one to the other.",[480,16593,16594],{},"The convention is:",[508,16596,16597,16602],{},[511,16598,16599,16601],{},[503,16600,3712],{}," is the canonical URL.",[511,16603,16604,16607],{},[503,16605,16606],{},"https:\u002F\u002Fwww.my-saas.com"," redirects to the apex domain.",[480,16609,16610,16611,16613,16614,16617],{},"Most hosting providers handle this automatically. On Netlify, for example, you can set the primary domain to ",[503,16612,16059],{}," and Netlify will redirect ",[503,16615,16616],{},"www"," to it.",[480,16619,16620],{},"If your provider does not handle this, add a redirect rule in your hosting configuration.",[495,16622,16624],{"id":16623},"part-8-a-note-on-decap-cms-after-domain-change","Part 8 — A Note on Decap CMS After Domain Change",[480,16626,16627],{},"If you are using Decap CMS, you need to update the OAuth callback URL and the site URL in the Decap CMS configuration after changing the domain.",[480,16629,16630,16633],{},[484,16631,16632],{},"For Netlify with Git Gateway:"," No change is needed. Git Gateway authenticates through Netlify, not through your domain.",[480,16635,16636,16639],{},[484,16637,16638],{},"For GitHub backend:"," You need to update the OAuth app's callback URL. Go to GitHub Settings → Developer settings → OAuth Apps → Your App → Update the callback URL to your new domain.",[480,16641,16642,16645],{},[484,16643,16644],{},"For local mode:"," No change is needed. Local mode works regardless of the domain.",[495,16647,7895],{"id":7894},[732,16649,16651],{"id":16650},"issue-this-site-cant-be-reached","Issue: \"This site can't be reached\"",[480,16653,16654],{},"This usually means DNS propagation is not complete. Wait a few minutes and try again. If the problem persists after an hour, check your DNS records.",[732,16656,16658],{"id":16657},"issue-ssl-certificate-error","Issue: \"SSL certificate error\"",[480,16660,16661,16662,16664],{},"This usually means HTTPS is not yet provisioned. Most providers provision certificates automatically within minutes of DNS propagation. If the error persists after an hour, click ",[484,16663,16482],{}," in your hosting dashboard.",[732,16666,16668],{"id":16667},"issue-the-site-loads-but-images-are-broken","Issue: The site loads but images are broken",[480,16670,16671,16672,16675],{},"This is likely a cached asset issue. Clear your browser cache and try again. If the images are hosted on ",[503,16673,16674],{},"localhost",", update their URLs to production URLs.",[732,16677,16679],{"id":16678},"issue-the-old-netlify-url-still-works-but-the-new-domain-does-not","Issue: The old Netlify URL still works but the new domain does not",[480,16681,16682],{},"This means DNS records are not pointing to the right place. Check your registrar's DNS settings and compare them to your hosting provider's instructions.",[495,16684,1704],{"id":1703},[480,16686,16687],{},"In the next chapter, we will cover support and services. You will learn how to reach us if you need help, how to use the contact form, and what services we offer beyond the Nuxas template.",[480,16689,1714],{},[1716,16691,16692],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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);}",{"title":555,"searchDepth":584,"depth":584,"links":16694},[16695],{"id":16050,"depth":569,"text":16045,"children":16696},[16697,16698,16699,16705,16710,16711,16712,16713,16714,16715,16721],{"id":16070,"depth":584,"text":16071},{"id":16146,"depth":584,"text":16147},{"id":16204,"depth":584,"text":16205,"children":16700},[16701,16702,16703,16704],{"id":16211,"depth":595,"text":15888},{"id":16250,"depth":595,"text":15911},{"id":16277,"depth":595,"text":15933},{"id":16301,"depth":595,"text":14672},{"id":16326,"depth":584,"text":16327,"children":16706},[16707,16708,16709],{"id":16362,"depth":595,"text":16081},{"id":16396,"depth":595,"text":16090},{"id":16421,"depth":595,"text":16422},{"id":16438,"depth":584,"text":16439},{"id":16466,"depth":584,"text":16467},{"id":16492,"depth":584,"text":16493},{"id":16582,"depth":584,"text":16583},{"id":16623,"depth":584,"text":16624},{"id":7894,"depth":584,"text":7895,"children":16716},[16717,16718,16719,16720],{"id":16650,"depth":595,"text":16651},{"id":16657,"depth":595,"text":16658},{"id":16667,"depth":595,"text":16668},{"id":16678,"depth":595,"text":16679},{"id":1703,"depth":584,"text":1704},"A complete, beginner-friendly guide to connecting your own domain name to your deployed Nuxas site. Learn how to buy a domain, configure DNS records, and enable HTTPS on Netlify, Cloudflare, Vercel, and other hosting providers.",{},"\u002Fdocs\u002F19-custom-domain",{"title":16045,"description":16722},"docs\u002F19-custom-domain","iVkxXPMgewoTAal2Ss8vDOhF10Al-hulolUA7jQUkqg",{"id":16729,"title":16730,"badge":2134,"body":16731,"description":17053,"extension":1763,"meta":17054,"navigation":167,"order":1540,"path":17055,"section":6,"seo":17056,"stem":17057,"__hash__":17058},"docs\u002Fdocs\u002F20-support.md","Support and Services",{"type":473,"value":16732,"toc":17041},[16733,16736,16739,16742,16746,16752,16755,16775,16778,16782,16785,16793,16796,16813,16816,16820,16823,16859,16863,16866,16886,16890,16893,16901,16904,16942,16945,16949,16952,16961,16964,16995,16998,17002,17005,17025,17029,17032,17035,17038],[476,16734,16730],{"id":16735},"support-and-services",[480,16737,16738],{},"You have reached the final chapter of the Nuxas documentation. By now, you should have a working site, a deployed production build, and a custom domain. If you have made it this far, congratulations. You have done something most people never finish.",[480,16740,16741],{},"This chapter is about what happens next. Building a site is not a one-time event. Things break, questions come up, and new requirements appear. We want you to know how to reach us when you need help, and what we can help with.",[495,16743,16745],{"id":16744},"getting-help-through-the-contact-form","Getting Help Through the Contact Form",[480,16747,16748,16749,16751],{},"The easiest way to reach us is through the contact form on your own site. If you have deployed Nuxas and configured Formspree (as covered in Chapter 10), the form at ",[503,16750,34],{}," sends messages directly to our inbox.",[480,16753,16754],{},"Here is how to use it effectively:",[1150,16756,16757,16763,16769],{},[511,16758,16759,16762],{},[484,16760,16761],{},"Be specific."," Instead of \"my site is broken,\" tell us what page you were on, what you did, and what you expected to happen. Include the exact error message if there is one.",[511,16764,16765,16768],{},[484,16766,16767],{},"Include context."," Tell us which edition of Nuxas you purchased (Code Only or Code + Decap CMS), what hosting provider you use, and what version of Node.js you have.",[511,16770,16771,16774],{},[484,16772,16773],{},"Attach screenshots if helpful."," A screenshot of an error message or a broken layout saves a lot of back-and-forth.",[480,16776,16777],{},"We read every message personally. There are no bots, no ticketing system, and no first-line support agents. Your message goes directly to the person who wrote the code.",[495,16779,16781],{"id":16780},"getting-help-by-email","Getting Help by Email",[480,16783,16784],{},"If the contact form is not working, or if you prefer email, you can reach us directly at:",[480,16786,16787],{},[484,16788,16789],{},[2267,16790,16792],{"href":16791},"mailto:creativebydre@gmail.com","creativebydre@gmail.com",[480,16794,16795],{},"Use this email for:",[508,16797,16798,16801,16804,16807,16810],{},[511,16799,16800],{},"Questions about licensing.",[511,16802,16803],{},"Bug reports.",[511,16805,16806],{},"Feature requests.",[511,16808,16809],{},"Partnership inquiries.",[511,16811,16812],{},"Anything that does not fit the contact form.",[480,16814,16815],{},"We aim to respond within 24 hours on business days. If you do not hear back within 48 hours, please send a follow-up. Occasionally, emails get caught in spam filters, and a gentle reminder helps.",[495,16817,16819],{"id":16818},"what-we-can-help-with","What We Can Help With",[480,16821,16822],{},"We are happy to help with anything related to Nuxas. Here are some examples of what we can assist with:",[508,16824,16825,16836,16842,16848,16854],{},[511,16826,16827,16197,16830,16832,16833,16835],{},[484,16828,16829],{},"Installation issues.",[503,16831,3054],{}," fails, or if ",[503,16834,3153],{}," shows an error, send us the exact error message and we will diagnose it.",[511,16837,16838,16841],{},[484,16839,16840],{},"Configuration questions."," If you are unsure how to set up a custom domain, configure Formspree, or enable Decap CMS, we can walk you through it.",[511,16843,16844,16847],{},[484,16845,16846],{},"Customization guidance."," If you want to change the design, add a new section, or modify a component, we can point you to the right file and explain the approach.",[511,16849,16850,16853],{},[484,16851,16852],{},"Deployment problems."," If Netlify, Cloudflare, Vercel, or your VPS is not building correctly, send us the build log and we will help you interpret it.",[511,16855,16856,16858],{},[484,16857,16803],{}," If you find a bug in Nuxas, we want to know. Send us the steps to reproduce it, and we will fix it in the next update.",[495,16860,16862],{"id":16861},"what-we-cannot-help-with","What We Cannot Help With",[480,16864,16865],{},"To set expectations, there are some things we cannot do:",[508,16867,16868,16874,16880],{},[511,16869,16870,16873],{},[484,16871,16872],{},"We cannot debug your custom code."," If you have written code that is not working, we can point you in the right direction, but we cannot debug it line by line. That falls under custom development (see below).",[511,16875,16876,16879],{},[484,16877,16878],{},"We cannot provide support for third-party services."," If Stripe, Formspree, Netlify, or Cloudflare is having an issue, you need to contact their support teams. We can help you understand their documentation, but we cannot fix their services.",[511,16881,16882,16885],{},[484,16883,16884],{},"We cannot offer refunds after download."," Nuxas is a digital product. Once you have downloaded the source code, it cannot be returned. If you have a specific issue, contact us and we will do our best to resolve it.",[495,16887,16889],{"id":16888},"professional-services","Professional Services",[480,16891,16892],{},"If you need more than template support — for example, a fully custom web application, a design overhaul, or a complex integration — we offer professional services through Fiverr.",[480,16894,16895],{},[484,16896,16897],{},[2267,16898,16900],{"href":190,"rel":16899},[2270],"Hire us on Fiverr →",[480,16902,16903],{},"Our Fiverr gig covers:",[508,16905,16906,16912,16918,16924,16930,16936],{},[511,16907,16908,16911],{},[484,16909,16910],{},"Custom full-stack development."," A web application built from scratch around your specific business logic.",[511,16913,16914,16917],{},[484,16915,16916],{},"SEO architecture."," Deep-coded semantic HTML, Schema markup, and Core Web Vitals optimization.",[511,16919,16920,16923],{},[484,16921,16922],{},"Headless CMS integration."," Decap, Tina, or a custom admin panel, integrated with your existing stack.",[511,16925,16926,16929],{},[484,16927,16928],{},"Modern dashboard integration."," Real-time analytics, user management, and permissions.",[511,16931,16932,16935],{},[484,16933,16934],{},"Global scalability."," Ready for high traffic and international markets.",[511,16937,16938,16941],{},[484,16939,16940],{},"30-day post-launch support."," Bug fixes and adjustments after delivery.",[480,16943,16944],{},"If you have a project in mind, send us a message through Fiverr. We will respond with a scope proposal and a timeline.",[495,16946,16948],{"id":16947},"ai-automation-services","AI Automation Services",[480,16950,16951],{},"If you are interested in AI automation — for example, an AI-powered invoice processing system, an SEO autoblog engine, or a custom AI agent — we offer that as a separate Fiverr gig.",[480,16953,16954],{},[484,16955,16956],{},[2267,16957,16960],{"href":16958,"rel":16959},"https:\u002F\u002Fwww.fiverr.com\u002Fcreativitas\u002Fai-automation-finance-vision-saedi-autoblog-own-100",[2270],"Hire AI Automation on Fiverr →",[480,16962,16963],{},"This service includes:",[508,16965,16966,16972,16978,16983,16989],{},[511,16967,16968,16971],{},[484,16969,16970],{},"Finance Vision."," OCR invoice processing, ledger sync, risk index, cashflow analysis, and CFO alerts.",[511,16973,16974,16977],{},[484,16975,16976],{},"SAEDI Autoblog."," A Jamstack engine with Gemini, CMS integration, and GitHub push for automated content.",[511,16979,16980,16982],{},[484,16981,1957],{}," You own 100% of the code, repository, prompts, and training data.",[511,16984,16985,16988],{},[484,16986,16987],{},"BYOK and secure tunnel."," Your data never leaves your stack.",[511,16990,16991,16994],{},[484,16992,16993],{},"Deploy in 4, 10, or 21 days."," You own working code from Day 1, not a demo.",[480,16996,16997],{},"This is a premium service for businesses that want an AI asset, not a rented tool.",[495,16999,17001],{"id":17000},"staying-updated","Staying Updated",[480,17003,17004],{},"Nuxas is actively maintained. New features, bug fixes, and security patches are released regularly. Here is how to stay updated:",[508,17006,17007,17013,17019],{},[511,17008,17009,17012],{},[484,17010,17011],{},"Gumroad updates."," When you purchase Nuxas, you receive update notifications via Gumroad. Make sure your email is up to date.",[511,17014,17015,17018],{},[484,17016,17017],{},"Documentation."," This documentation is updated alongside the code. Bookmark the docs URL and check back periodically.",[511,17020,17021,17024],{},[484,17022,17023],{},"Changelog."," Every release includes a changelog in the repository. Read it before updating, so you know what changed.",[495,17026,17028],{"id":17027},"a-final-thank-you","A Final Thank You",[480,17030,17031],{},"Thank you for choosing Nuxas. Building a SaaS is a long journey, and we are honored to be a small part of yours. Whether you are launching your first product or your tenth, we hope Nuxas saves you time, reduces friction, and helps you ship faster.",[480,17033,17034],{},"If you build something with Nuxas, we would love to hear about it. Send us an email, tag us on Twitter, or drop a message in the contact form. There is nothing more rewarding for us than seeing what our users create.",[480,17036,17037],{},"Good luck, and happy building.",[480,17039,17040],{},"— The Creativitas team",{"title":555,"searchDepth":584,"depth":584,"links":17042},[17043],{"id":16735,"depth":569,"text":16730,"children":17044},[17045,17046,17047,17048,17049,17050,17051,17052],{"id":16744,"depth":584,"text":16745},{"id":16780,"depth":584,"text":16781},{"id":16818,"depth":584,"text":16819},{"id":16861,"depth":584,"text":16862},{"id":16888,"depth":584,"text":16889},{"id":16947,"depth":584,"text":16948},{"id":17000,"depth":584,"text":17001},{"id":17027,"depth":584,"text":17028},"How to get help with Nuxas, whether through the built-in contact form, direct email, or professional services. Includes response times, what we can help with, and how to book custom work.",{},"\u002Fdocs\u002F20-support",{"title":16730,"description":17053},"docs\u002F20-support","kYrYcRHDbvLN_SmUGFWfmqiXeXTBIkgz_iarvSARNt8",[17060,17277,17432,17804,18060,18516,18874,19161,20610,21071,21630,22182,23107,24201,25260,25683,26045,26655,28161,28658],{"id":1862,"title":1863,"badge":1864,"body":17061,"description":2192,"extension":1763,"meta":17275,"navigation":167,"order":562,"path":2194,"section":6,"seo":17276,"stem":2196,"__hash__":2197},{"type":473,"value":17062,"toc":17265},[17063,17065,17067,17071,17073,17075,17079,17081,17097,17099,17101,17103,17105,17133,17135,17137,17151,17153,17155,17157,17239,17241,17247,17251,17257,17259,17261,17263],[476,17064,1870],{"id":1869},[480,17066,1873],{},[480,17068,1876,17069,1880],{},[484,17070,1879],{},[480,17072,1883],{},[495,17074,1887],{"id":1886},[480,17076,1890,17077,1894],{},[484,17078,1893],{},[480,17080,1897],{},[508,17082,17083,17089,17093],{},[511,17084,17085,1905,17087,1909],{},[484,17086,1904],{},[503,17088,1908],{},[511,17090,17091,1915],{},[484,17092,1914],{},[511,17094,17095,1921],{},[484,17096,1920],{},[480,17098,1924],{},[495,17100,1928],{"id":1927},[480,17102,1931],{},[480,17104,1934],{},[508,17106,17107,17111,17117,17121,17125,17129],{},[511,17108,17109,1942],{},[484,17110,1941],{},[511,17112,17113,1948,17115,1952],{},[484,17114,1947],{},[503,17116,1951],{},[511,17118,17119,1958],{},[484,17120,1957],{},[511,17122,17123,1964],{},[484,17124,1963],{},[511,17126,17127,1970],{},[484,17128,1969],{},[511,17130,17131,1976],{},[484,17132,1975],{},[495,17134,1980],{"id":1979},[480,17136,1983],{},[1150,17138,17139,17143,17147],{},[511,17140,17141,1991],{},[484,17142,1990],{},[511,17144,17145,1997],{},[484,17146,1996],{},[511,17148,17149,2003],{},[484,17150,2002],{},[495,17152,2007],{"id":2006},[480,17154,2010],{},[480,17156,2013],{},[1150,17158,17159,17163,17167,17171,17175,17179,17183,17187,17191,17195,17199,17203,17207,17211,17215,17219,17223,17227,17231,17235],{},[511,17160,17161,2021],{},[484,17162,2020],{},[511,17164,17165,2027],{},[484,17166,2026],{},[511,17168,17169,2033],{},[484,17170,2032],{},[511,17172,17173,2039],{},[484,17174,2038],{},[511,17176,17177,2045],{},[484,17178,2044],{},[511,17180,17181,2051],{},[484,17182,2050],{},[511,17184,17185,2057],{},[484,17186,2056],{},[511,17188,17189,2063],{},[484,17190,2062],{},[511,17192,17193,2069],{},[484,17194,2068],{},[511,17196,17197,2075],{},[484,17198,2074],{},[511,17200,17201,2081],{},[484,17202,2080],{},[511,17204,17205,2087],{},[484,17206,2086],{},[511,17208,17209,2093],{},[484,17210,2092],{},[511,17212,17213,2099],{},[484,17214,2098],{},[511,17216,17217,2105],{},[484,17218,2104],{},[511,17220,17221,2111],{},[484,17222,2110],{},[511,17224,17225,2117],{},[484,17226,2116],{},[511,17228,17229,2123],{},[484,17230,2122],{},[511,17232,17233,2129],{},[484,17234,2128],{},[511,17236,17237,2135],{},[484,17238,2134],{},[495,17240,2139],{"id":2138},[480,17242,2142,17243,2146,17245,2150],{},[484,17244,2145],{},[484,17246,2149],{},[480,17248,2153,17249,2157],{},[484,17250,2156],{},[480,17252,2160,17253,2164,17255,2168],{},[484,17254,2163],{},[484,17256,2167],{},[495,17258,2172],{"id":2171},[480,17260,2175],{},[480,17262,2178],{},[480,17264,2181],{},{"title":555,"searchDepth":584,"depth":584,"links":17266},[17267],{"id":1869,"depth":569,"text":1870,"children":17268},[17269,17270,17271,17272,17273,17274],{"id":1886,"depth":584,"text":1887},{"id":1927,"depth":584,"text":1928},{"id":1979,"depth":584,"text":1980},{"id":2006,"depth":584,"text":2007},{"id":2138,"depth":584,"text":2139},{"id":2171,"depth":584,"text":2172},{},{"title":1863,"description":2192},{"id":2199,"title":2200,"badge":2201,"body":17278,"description":2413,"extension":1763,"meta":17430,"navigation":167,"order":569,"path":2415,"section":6,"seo":17431,"stem":2417,"__hash__":2418},{"type":473,"value":17279,"toc":17420},[17280,17282,17284,17288,17290,17292,17294,17298,17316,17320,17327,17329,17333,17335,17339,17353,17357,17364,17366,17368,17382,17384,17386,17388,17390,17404,17406,17408,17410,17412,17414,17416,17418],[476,17281,2200],{"id":2206},[480,17283,2209],{},[480,17285,2212,17286,2216],{},[484,17287,2215],{},[495,17289,2220],{"id":2219},[480,17291,2223],{},[480,17293,2226],{},[480,17295,17296],{},[484,17297,2231],{},[508,17299,17300,17302,17304,17306,17308,17310,17312,17314],{},[511,17301,2236],{},[511,17303,156],{},[511,17305,157],{},[511,17307,2243],{},[511,17309,159],{},[511,17311,2248],{},[511,17313,2251],{},[511,17315,160],{},[480,17317,17318,2259],{},[484,17319,2258],{},[480,17321,17322,2265,17324],{},[484,17323,2264],{},[2267,17325,49],{"href":49,"rel":17326},[2270],[495,17328,2274],{"id":2273},[480,17330,2277,17331,2280],{},[484,17332,2156],{},[480,17334,2283],{},[480,17336,17337],{},[484,17338,2231],{},[508,17340,17341,17343,17345,17347,17349,17351],{},[511,17342,2292],{},[511,17344,170],{},[511,17346,171],{},[511,17348,2299],{},[511,17350,173],{},[511,17352,160],{},[480,17354,17355,2308],{},[484,17356,2258],{},[480,17358,17359,2265,17361],{},[484,17360,2264],{},[2267,17362,53],{"href":53,"rel":17363},[2270],[495,17365,2319],{"id":2318},[480,17367,2322],{},[1150,17369,17370,17374,17378],{},[511,17371,17372,2330],{},[484,17373,2329],{},[511,17375,17376,2336],{},[484,17377,2335],{},[511,17379,17380,2342],{},[484,17381,2341],{},[480,17383,2345],{},[495,17385,2349],{"id":2348},[480,17387,2352],{},[480,17389,2355],{},[508,17391,17392,17394,17398,17400,17402],{},[511,17393,2360],{},[511,17395,2363,17396,2367],{},[503,17397,2366],{},[511,17399,2370],{},[511,17401,2373],{},[511,17403,2376],{},[480,17405,2379],{},[495,17407,2383],{"id":2382},[480,17409,2386],{},[480,17411,2389],{},[480,17413,2392],{},[495,17415,2396],{"id":2395},[480,17417,2399],{},[480,17419,2402],{},{"title":555,"searchDepth":584,"depth":584,"links":17421},[17422],{"id":2206,"depth":569,"text":2200,"children":17423},[17424,17425,17426,17427,17428,17429],{"id":2219,"depth":584,"text":2220},{"id":2273,"depth":584,"text":2274},{"id":2318,"depth":584,"text":2319},{"id":2348,"depth":584,"text":2349},{"id":2382,"depth":584,"text":2383},{"id":2395,"depth":584,"text":2396},{},{"title":2200,"description":2413},{"id":2420,"title":2421,"badge":1864,"body":17433,"description":2951,"extension":1763,"meta":17802,"navigation":167,"order":584,"path":2953,"section":6,"seo":17803,"stem":2955,"__hash__":2956},{"type":473,"value":17434,"toc":17788},[17435,17437,17439,17441,17453,17455,17457,17459,17465,17469,17473,17475,17477,17491,17493,17495,17497,17532,17538,17546,17550,17552,17560,17566,17568,17570,17572,17607,17609,17611,17613,17650,17652,17660,17664,17666,17668,17688,17702,17710,17712,17714,17730,17732,17736,17738,17740,17744,17746,17754,17756,17764,17766,17774,17776,17778,17780,17782,17784,17786],[476,17436,2421],{"id":2426},[480,17438,2429],{},[480,17440,2432],{},[1150,17442,17443,17445,17447,17449,17451],{},[511,17444,2437],{},[511,17446,2440],{},[511,17448,2443],{},[511,17450,2446],{},[511,17452,2449],{},[480,17454,2452],{},[495,17456,2456],{"id":2455},[480,17458,2459],{},[480,17460,2462,17461,823,17463,2469],{},[503,17462,2465],{},[503,17464,2468],{},[480,17466,2472,17467,2476],{},[503,17468,2475],{},[480,17470,17471,2482],{},[484,17472,2481],{},[495,17474,2486],{"id":2485},[480,17476,2489],{},[1150,17478,17479,17483,17487],{},[511,17480,17481,2497],{},[484,17482,2496],{},[511,17484,17485,2503],{},[484,17486,2502],{},[511,17488,17489,2509],{},[484,17490,2508],{},[480,17492,2512],{},[732,17494,2516],{"id":2515},[480,17496,2519],{},[1150,17498,17499,17504,17512,17516,17518,17522,17528],{},[511,17500,2524,17501,792],{},[2267,17502,2527],{"href":2527,"rel":17503},[2270],[511,17505,2531,17506,2146,17508,2538,17510,2541],{},[484,17507,2534],{},[484,17509,2537],{},[484,17511,2534],{},[511,17513,2544,17514,2548],{},[503,17515,2547],{},[511,17517,2551],{},[511,17519,1166,17520,2556],{},[484,17521,278],{},[511,17523,2559,17524,2563,17526,792],{},[484,17525,2562],{},[484,17527,2566],{},[511,17529,2569,17530,792],{},[484,17531,2572],{},[480,17533,2575,17534,2579,17536,2583],{},[503,17535,2578],{},[484,17537,2582],{},[550,17539,17540],{"className":2586,"code":2587,"language":2578,"meta":555,"style":555},[503,17541,17542],{"__ignoreMap":555},[559,17543,17544],{"class":561,"line":562},[559,17545,2587],{},[480,17547,2596,17548,2600],{},[503,17549,2599],{},[480,17551,2603],{},[550,17553,17554],{"className":2586,"code":2606,"language":2578,"meta":555,"style":555},[503,17555,17556],{"__ignoreMap":555},[559,17557,17558],{"class":561,"line":562},[559,17559,2606],{},[480,17561,2615,17562,2619,17564,2623],{},[503,17563,2618],{},[503,17565,2622],{},[480,17567,2626],{},[732,17569,2630],{"id":2629},[480,17571,2633],{},[1150,17573,17574,17579,17583,17587,17589,17593,17597,17603],{},[511,17575,2638,17576,792],{},[2267,17577,2641],{"href":2641,"rel":17578},[2270],[511,17580,2645,17581,2649],{},[484,17582,2648],{},[511,17584,2652,17585,2548],{},[503,17586,2655],{},[511,17588,2658],{},[511,17590,2661,17591,792],{},[484,17592,278],{},[511,17594,2666,17595,2670],{},[484,17596,2669],{},[511,17598,1166,17599,2675,17601,792],{},[484,17600,278],{},[484,17602,2562],{},[511,17604,2569,17605,2682],{},[484,17606,2572],{},[480,17608,2685],{},[732,17610,2689],{"id":2688},[480,17612,2692],{},[1150,17614,17615,17620,17624,17626,17630,17636,17640,17646],{},[511,17616,2638,17617,792],{},[2267,17618,2699],{"href":2699,"rel":17619},[2270],[511,17621,2703,17622,792],{},[484,17623,2706],{},[511,17625,2551],{},[511,17627,1166,17628,2713],{},[484,17629,278],{},[511,17631,2716,17632,2720,17634,2724],{},[484,17633,2719],{},[484,17635,2723],{},[511,17637,2727,17638,792],{},[484,17639,2730],{},[511,17641,2733,17642,2736,17644,2739],{},[484,17643,278],{},[484,17645,2562],{},[511,17647,2742,17648,792],{},[484,17649,2572],{},[480,17651,2747],{},[550,17653,17654],{"className":2586,"code":2750,"language":2578,"meta":555,"style":555},[503,17655,17656],{"__ignoreMap":555},[559,17657,17658],{"class":561,"line":562},[559,17659,2750],{},[480,17661,2596,17662,792],{},[503,17663,2761],{},[495,17665,2765],{"id":2764},[480,17667,2768],{},[1150,17669,17670,17674,17678,17684],{},[511,17671,2773,17672,2476],{},[503,17673,2475],{},[511,17675,2778,17676,792],{},[484,17677,2781],{},[511,17679,2784,17680,823,17682,792],{},[503,17681,2787],{},[503,17683,2790],{},[511,17685,1166,17686,792],{},[484,17687,2795],{},[480,17689,2798,17690,823,17692,2805,17694,779,17696,2812,17698,2816,17700,2820],{},[503,17691,2801],{},[503,17693,2804],{},[503,17695,2808],{},[503,17697,2811],{},[503,17699,2815],{},[503,17701,2819],{},[480,17703,17704,2826,17706,2830,17708,792],{},[484,17705,2825],{},[503,17707,2829],{},[503,17709,2833],{},[495,17711,2837],{"id":2836},[480,17713,2840],{},[1150,17715,17716,17718,17722,17726],{},[511,17717,2845],{},[511,17719,2848,17720,792],{},[484,17721,2851],{},[511,17723,2854,17724,792],{},[503,17725,2829],{},[511,17727,1166,17728,792],{},[484,17729,2861],{},[480,17731,2864],{},[480,17733,2867,17734,2870],{},[484,17735,2562],{},[495,17737,2874],{"id":2873},[480,17739,2877],{},[480,17741,2880,17742,2884],{},[484,17743,2883],{},[480,17745,2887],{},[550,17747,17748],{"className":2586,"code":2587,"language":2578,"meta":555,"style":555},[503,17749,17750],{"__ignoreMap":555},[559,17751,17752],{"class":561,"line":562},[559,17753,2587],{},[480,17755,2898],{},[550,17757,17758],{"className":2586,"code":2606,"language":2578,"meta":555,"style":555},[503,17759,17760],{"__ignoreMap":555},[559,17761,17762],{"class":561,"line":562},[559,17763,2606],{},[480,17765,2909],{},[550,17767,17768],{"className":2586,"code":2750,"language":2578,"meta":555,"style":555},[503,17769,17770],{"__ignoreMap":555},[559,17771,17772],{"class":561,"line":562},[559,17773,2750],{},[480,17775,2920],{},[480,17777,2923],{},[495,17779,1704],{"id":1703},[480,17781,2928],{},[480,17783,2931],{},[480,17785,1714],{},[1716,17787,2936],{},{"title":555,"searchDepth":584,"depth":584,"links":17789},[17790],{"id":2426,"depth":569,"text":2421,"children":17791},[17792,17793,17798,17799,17800,17801],{"id":2455,"depth":584,"text":2456},{"id":2485,"depth":584,"text":2486,"children":17794},[17795,17796,17797],{"id":2515,"depth":595,"text":2516},{"id":2629,"depth":595,"text":2630},{"id":2688,"depth":595,"text":2689},{"id":2764,"depth":584,"text":2765},{"id":2836,"depth":584,"text":2837},{"id":2873,"depth":584,"text":2874},{"id":1703,"depth":584,"text":1704},{},{"title":2421,"description":2951},{"id":2958,"title":2959,"badge":1864,"body":17805,"description":3322,"extension":1763,"meta":18058,"navigation":167,"order":595,"path":3324,"section":6,"seo":18059,"stem":3326,"__hash__":3327},{"type":473,"value":17806,"toc":18042},[17807,17809,17811,17813,17815,17817,17821,17827,17831,17833,17841,17847,17855,17857,17865,17869,17873,17878,17880,17882,17894,17896,17898,17900,17908,17910,17915,17921,17923,17925,17927,17929,17933,17939,17941,17947,17949,17954,17956,17964,17966,17968,17976,17980,17982,17984,17988,17992,18000,18002,18004,18008,18028,18030,18032,18036,18038,18040],[476,17808,2959],{"id":2964},[480,17810,2967],{},[480,17812,2970],{},[480,17814,2973],{},[495,17816,2977],{"id":2976},[480,17818,2980,17819,2983],{},[503,17820,2808],{},[480,17822,2986,17823,2990,17825,2993],{},[503,17824,2989],{},[503,17826,2808],{},[480,17828,2996,17829,2999],{},[484,17830,2883],{},[480,17832,3002],{},[550,17834,17835],{"className":2586,"code":3005,"language":2578,"meta":555,"style":555},[503,17836,17837],{"__ignoreMap":555},[559,17838,17839],{"class":561,"line":562},[559,17840,3005],{},[480,17842,3014,17843,3017,17845,3021],{},[503,17844,2808],{},[503,17846,3020],{},[550,17848,17849],{"className":2586,"code":3024,"language":2578,"meta":555,"style":555},[503,17850,17851],{"__ignoreMap":555},[559,17852,17853],{"class":561,"line":562},[559,17854,3024],{},[480,17856,3033],{},[550,17858,17859],{"className":2586,"code":3036,"language":2578,"meta":555,"style":555},[503,17860,17861],{"__ignoreMap":555},[559,17862,17863],{"class":561,"line":562},[559,17864,3036],{},[480,17866,3045,17867,3048],{},[503,17868,2808],{},[480,17870,3051,17871,3055],{},[503,17872,3054],{},[550,17874,17876],{"className":17875,"code":3059,"language":1315},[1313],[503,17877,3059],{"__ignoreMap":555},[480,17879,3064],{},[480,17881,3067],{},[480,17883,17884,3076,17888,3079,17890,3082,17892,3085],{},[484,17885,3072,17886,3075],{},[503,17887,2989],{},[503,17889,2989],{},[503,17891,2989],{},[503,17893,3054],{},[495,17895,3089],{"id":3088},[480,17897,3092],{},[480,17899,3095],{},[550,17901,17902],{"className":2586,"code":3098,"language":2578,"meta":555,"style":555},[503,17903,17904],{"__ignoreMap":555},[559,17905,17906],{"class":561,"line":562},[559,17907,3098],{},[480,17909,3107],{},[550,17911,17913],{"className":17912,"code":3111,"language":1315},[1313],[503,17914,3111],{"__ignoreMap":555},[480,17916,3116,17917,3120,17919,792],{},[484,17918,3119],{},[503,17920,3123],{},[480,17922,3126],{},[480,17924,3129],{},[495,17926,3133],{"id":3132},[480,17928,3136],{},[480,17930,3139,17931,3143],{},[484,17932,3142],{},[480,17934,3146,17935,3150,17937,3154],{},[484,17936,3149],{},[503,17938,3153],{},[495,17940,3158],{"id":3157},[480,17942,3161,17943,2146,17945,3166],{},[503,17944,3054],{},[503,17946,3153],{},[732,17948,3170],{"id":3169},[480,17950,3173,17951,792],{},[2267,17952,2527],{"href":2527,"rel":17953},[2270],[732,17955,3180],{"id":3179},[480,17957,3183,17958,3187,17960,823,17962,792],{},[503,17959,3186],{},[503,17961,2829],{},[503,17963,3192],{},[732,17965,3196],{"id":3195},[480,17967,3199],{},[550,17969,17970],{"className":2586,"code":3202,"language":2578,"meta":555,"style":555},[503,17971,17972],{"__ignoreMap":555},[559,17973,17974],{"class":561,"line":562},[559,17975,3202],{},[480,17977,3211,17978,3215],{},[503,17979,3214],{},[732,17981,3219],{"id":3218},[480,17983,3222],{},[732,17985,3226,17986,3229],{"id":3225},[503,17987,3054],{},[480,17989,3232,17990,3235],{},[503,17991,3054],{},[550,17993,17994],{"className":2586,"code":3238,"language":2578,"meta":555,"style":555},[503,17995,17996],{"__ignoreMap":555},[559,17997,17998],{"class":561,"line":562},[559,17999,3238],{},[480,18001,3247],{},[495,18003,3251],{"id":3250},[480,18005,3254,18006,3257],{},[503,18007,3123],{},[508,18009,18010,18012,18014,18016,18018,18020,18022,18024,18026],{},[511,18011,3262],{},[511,18013,3265],{},[511,18015,3268],{},[511,18017,3271],{},[511,18019,3274],{},[511,18021,3277],{},[511,18023,3280],{},[511,18025,3283],{},[511,18027,3286],{},[480,18029,3289],{},[495,18031,1704],{"id":1703},[480,18033,3294,18034,3297],{},[503,18035,2811],{},[480,18037,3300],{},[480,18039,1714],{},[1716,18041,2936],{},{"title":555,"searchDepth":584,"depth":584,"links":18043},[18044],{"id":2964,"depth":569,"text":2959,"children":18045},[18046,18047,18048,18049,18056,18057],{"id":2976,"depth":584,"text":2977},{"id":3088,"depth":584,"text":3089},{"id":3132,"depth":584,"text":3133},{"id":3157,"depth":584,"text":3158,"children":18050},[18051,18052,18053,18054,18055],{"id":3169,"depth":595,"text":3170},{"id":3179,"depth":595,"text":3180},{"id":3195,"depth":595,"text":3196},{"id":3218,"depth":595,"text":3219},{"id":3225,"depth":595,"text":3319},{"id":3250,"depth":584,"text":3251},{"id":1703,"depth":584,"text":1704},{},{"title":2959,"description":3322},{"id":3329,"title":3330,"badge":3331,"body":18061,"description":3950,"extension":1763,"meta":18514,"navigation":167,"order":607,"path":3952,"section":6,"seo":18515,"stem":3954,"__hash__":3955},{"type":473,"value":18062,"toc":18503},[18063,18065,18067,18073,18075,18077,18081,18093,18095,18105,18107,18111,18113,18185,18187,18189,18197,18201,18255,18261,18265,18269,18271,18325,18329,18331,18337,18347,18353,18355,18359,18373,18377,18391,18393,18413,18415,18423,18427,18429,18431,18441,18445,18447,18453,18469,18477,18479,18493,18495,18497,18499,18501],[476,18064,3330],{"id":3336},[480,18066,3339],{},[480,18068,3342,18069,2146,18071,3348],{},[503,18070,2811],{},[503,18072,3347],{},[480,18074,3351],{},[495,18076,3355],{"id":3354},[480,18078,3358,18079,3361],{},[503,18080,2811],{},[508,18082,18083,18085,18087,18089,18091],{},[511,18084,3366],{},[511,18086,3369],{},[511,18088,3372],{},[511,18090,3375],{},[511,18092,3378],{},[480,18094,3381],{},[480,18096,3384,18097,3387,18099,3390,18101,3394,18103,3397],{},[503,18098,2811],{},[503,18100,3347],{},[484,18102,3393],{},[503,18104,3347],{},[495,18106,3401],{"id":3400},[480,18108,3404,18109,3407],{},[503,18110,2811],{},[480,18112,3410],{},[550,18114,18115],{"className":3413,"code":3414,"language":3415,"meta":555,"style":555},[503,18116,18117,18127,18135,18143,18151,18155,18161,18167,18173,18177,18181],{"__ignoreMap":555},[559,18118,18119,18121,18123,18125],{"class":561,"line":562},[559,18120,3423],{"class":3422},[559,18122,3426],{"class":3422},[559,18124,3429],{"class":565},[559,18126,3432],{"class":576},[559,18128,18129,18131,18133],{"class":561,"line":569},[559,18130,3437],{"class":576},[559,18132,3440],{"class":580},[559,18134,3443],{"class":576},[559,18136,18137,18139,18141],{"class":561,"line":584},[559,18138,3448],{"class":576},[559,18140,3451],{"class":603},[559,18142,3454],{"class":576},[559,18144,18145,18147,18149],{"class":561,"line":595},[559,18146,3459],{"class":576},[559,18148,3462],{"class":580},[559,18150,3465],{"class":576},[559,18152,18153],{"class":561,"line":607},[559,18154,3470],{"class":576},[559,18156,18157,18159],{"class":561,"line":618},[559,18158,3475],{"class":580},[559,18160,3443],{"class":576},[559,18162,18163,18165],{"class":561,"line":629},[559,18164,3482],{"class":580},[559,18166,3443],{"class":576},[559,18168,18169,18171],{"class":561,"line":640},[559,18170,3489],{"class":580},[559,18172,3443],{"class":576},[559,18174,18175],{"class":561,"line":651},[559,18176,3496],{"class":576},[559,18178,18179],{"class":561,"line":660},[559,18180,3502],{"class":3501},[559,18182,18183],{"class":561,"line":669},[559,18184,3507],{"class":576},[480,18186,3510],{},[480,18188,3513],{},[1150,18190,18191,18193,18195],{},[511,18192,3518],{},[511,18194,3521],{},[511,18196,3524],{},[480,18198,3527,18199,3531],{},[503,18200,3530],{},[550,18202,18203],{"className":3413,"code":3534,"language":3415,"meta":555,"style":555},[503,18204,18205,18211,18221,18231,18241,18251],{"__ignoreMap":555},[559,18206,18207,18209],{"class":561,"line":562},[559,18208,3530],{"class":565},[559,18210,3543],{"class":576},[559,18212,18213,18215,18217,18219],{"class":561,"line":569},[559,18214,3548],{"class":565},[559,18216,577],{"class":576},[559,18218,3553],{"class":580},[559,18220,3443],{"class":576},[559,18222,18223,18225,18227,18229],{"class":561,"line":584},[559,18224,3560],{"class":565},[559,18226,577],{"class":576},[559,18228,3565],{"class":580},[559,18230,3443],{"class":576},[559,18232,18233,18235,18237,18239],{"class":561,"line":595},[559,18234,3572],{"class":565},[559,18236,577],{"class":576},[559,18238,3577],{"class":580},[559,18240,3443],{"class":576},[559,18242,18243,18245,18247,18249],{"class":561,"line":607},[559,18244,3584],{"class":565},[559,18246,577],{"class":576},[559,18248,3589],{"class":580},[559,18250,3443],{"class":576},[559,18252,18253],{"class":561,"line":618},[559,18254,3596],{"class":576},[480,18256,3599,18257,3603,18259,3607],{},[503,18258,3602],{},[503,18260,3606],{},[480,18262,3599,18263,3613],{},[503,18264,3612],{},[480,18266,3599,18267,3618],{},[503,18268,587],{},[480,18270,3621],{},[550,18272,18273],{"className":3413,"code":3624,"language":3415,"meta":555,"style":555},[503,18274,18275,18281,18291,18301,18311,18321],{"__ignoreMap":555},[559,18276,18277,18279],{"class":561,"line":562},[559,18278,3530],{"class":565},[559,18280,3543],{"class":576},[559,18282,18283,18285,18287,18289],{"class":561,"line":569},[559,18284,3548],{"class":565},[559,18286,577],{"class":576},[559,18288,3641],{"class":580},[559,18290,3443],{"class":576},[559,18292,18293,18295,18297,18299],{"class":561,"line":584},[559,18294,3560],{"class":565},[559,18296,577],{"class":576},[559,18298,3652],{"class":580},[559,18300,3443],{"class":576},[559,18302,18303,18305,18307,18309],{"class":561,"line":595},[559,18304,3572],{"class":565},[559,18306,577],{"class":576},[559,18308,3663],{"class":580},[559,18310,3443],{"class":576},[559,18312,18313,18315,18317,18319],{"class":561,"line":607},[559,18314,3584],{"class":565},[559,18316,577],{"class":576},[559,18318,3589],{"class":580},[559,18320,3443],{"class":576},[559,18322,18323],{"class":561,"line":618},[559,18324,3596],{"class":576},[480,18326,3682,18327,3685],{},[484,18328,1299],{},[495,18330,3689],{"id":3688},[480,18332,3692,18333,3696,18335,3700],{},[503,18334,3695],{},[503,18336,3699],{},[480,18338,3703,18339,3706,18341,3709,18343,3713,18345,3716],{},[503,18340,3695],{},[503,18342,3606],{},[503,18344,3712],{},[503,18346,3695],{},[480,18348,3719,18349,3722,18351,3725],{},[503,18350,3695],{},[503,18352,3606],{},[495,18354,3729],{"id":3728},[480,18356,3692,18357,3734],{},[503,18358,3347],{},[1150,18360,18361,18365,18369],{},[511,18362,18363,3742],{},[484,18364,3741],{},[511,18366,18367,3748],{},[484,18368,3747],{},[511,18370,18371,3754],{},[484,18372,3753],{},[480,18374,3757,18375,3760],{},[503,18376,3347],{},[1150,18378,18379,18381,18385,18389],{},[511,18380,3765],{},[511,18382,3768,18383,792],{},[484,18384,1279],{},[511,18386,3773,18387,3776],{},[503,18388,3347],{},[511,18390,3779],{},[480,18392,3782],{},[550,18394,18395],{"className":3785,"code":3786,"language":3787,"meta":555,"style":555},[503,18396,18397,18401,18405,18409],{"__ignoreMap":555},[559,18398,18399],{"class":561,"line":562},[559,18400,3794],{},[559,18402,18403],{"class":561,"line":569},[559,18404,3799],{},[559,18406,18407],{"class":561,"line":584},[559,18408,3804],{},[559,18410,18411],{"class":561,"line":595},[559,18412,3809],{},[480,18414,3812],{},[480,18416,18417,3076,18419,3819,18421,3823],{},[484,18418,2481],{},[503,18420,3347],{},[503,18422,3822],{},[480,18424,3682,18425,792],{},[484,18426,1299],{},[495,18428,3831],{"id":3830},[480,18430,3834],{},[1150,18432,18433,18437],{},[511,18434,18435,3842],{},[484,18436,3841],{},[511,18438,18439,3848],{},[484,18440,3847],{},[480,18442,3851,18443,3854],{},[503,18444,3347],{},[495,18446,3858],{"id":3857},[480,18448,3861,18449,3864,18451,3867],{},[503,18450,2811],{},[503,18452,3347],{},[1150,18454,18455,18457,18461,18465],{},[511,18456,3872],{},[511,18458,3875,18459,3878],{},[484,18460,3149],{},[511,18462,3881,18463,3884],{},[503,18464,3153],{},[511,18466,1154,18467,3215],{},[503,18468,3123],{},[480,18470,3891,18471,3895,18473,3899,18475,3903],{},[503,18472,3894],{},[503,18474,3898],{},[503,18476,3902],{},[480,18478,3906],{},[508,18480,18481,18485,18489],{},[511,18482,3911,18483,3914],{},[503,18484,2811],{},[511,18486,3917,18487,3920],{},[503,18488,3347],{},[511,18490,3923,18491,792],{},[503,18492,2808],{},[480,18494,3928],{},[495,18496,1704],{"id":1703},[480,18498,3933],{},[480,18500,1714],{},[1716,18502,3938],{},{"title":555,"searchDepth":584,"depth":584,"links":18504},[18505],{"id":3336,"depth":569,"text":3330,"children":18506},[18507,18508,18509,18510,18511,18512,18513],{"id":3354,"depth":584,"text":3355},{"id":3400,"depth":584,"text":3401},{"id":3688,"depth":584,"text":3689},{"id":3728,"depth":584,"text":3729},{"id":3830,"depth":584,"text":3831},{"id":3857,"depth":584,"text":3858},{"id":1703,"depth":584,"text":1704},{},{"title":3330,"description":3950},{"id":3957,"title":3958,"badge":3331,"body":18517,"description":4458,"extension":1763,"meta":18872,"navigation":167,"order":618,"path":4460,"section":6,"seo":18873,"stem":4462,"__hash__":4463},{"type":473,"value":18518,"toc":18858},[18519,18521,18525,18527,18529,18531,18536,18538,18542,18544,18548,18616,18622,18626,18628,18632,18678,18680,18684,18686,18704,18712,18716,18718,18722,18732,18734,18738,18744,18746,18748,18750,18786,18788,18790,18828,18830,18832,18842,18846,18852,18854,18856],[476,18520,3958],{"id":3963},[480,18522,3966,18523,3969],{},[503,18524,3347],{},[480,18526,3972],{},[495,18528,3976],{"id":3975},[480,18530,3979],{},[550,18532,18534],{"className":18533,"code":3983,"language":1315},[1313],[503,18535,3983],{"__ignoreMap":555},[480,18537,3988],{},[495,18539,3692,18540,3994],{"id":3991},[503,18541,2815],{},[480,18543,3997],{},[480,18545,4000,18546,4003],{},[503,18547,2815],{},[508,18549,18550,18556,18564,18578,18588,18598,18608],{},[511,18551,18552,4013],{},[484,18553,18554],{},[503,18555,4012],{},[511,18557,18558,4021,18562,792],{},[484,18559,18560],{},[503,18561,4020],{},[503,18563,4024],{},[511,18565,18566,4032,18570,779,18572,779,18574,4042,18576,792],{},[484,18567,18568],{},[503,18569,4031],{},[503,18571,4035],{},[503,18573,4038],{},[503,18575,4041],{},[503,18577,4045],{},[511,18579,18580,4053,18584,4057,18586,4061],{},[484,18581,18582],{},[503,18583,4052],{},[503,18585,4056],{},[503,18587,4060],{},[511,18589,18590,4069,18594,4073,18596,4077],{},[484,18591,18592],{},[503,18593,4068],{},[503,18595,4072],{},[503,18597,4076],{},[511,18599,18600,4084,18604,4088,18606,4092],{},[484,18601,18602],{},[503,18603,1908],{},[503,18605,4087],{},[503,18607,4091],{},[511,18609,18610,4100,18614,4104],{},[484,18611,18612],{},[503,18613,4099],{},[503,18615,4103],{},[480,18617,4107,18618,2146,18620,792],{},[503,18619,1908],{},[503,18621,4031],{},[495,18623,3692,18624,3994],{"id":4114},[503,18625,2819],{},[480,18627,4119],{},[480,18629,4000,18630,4003],{},[503,18631,2819],{},[508,18633,18634,18640,18646,18652,18658,18664],{},[511,18635,18636,4132],{},[484,18637,18638],{},[503,18639,4045],{},[511,18641,18642,4140],{},[484,18643,18644],{},[503,18645,4139],{},[511,18647,18648,4147],{},[484,18649,18650],{},[503,18651,1908],{},[511,18653,18654,4155],{},[484,18655,18656],{},[503,18657,4154],{},[511,18659,18660,4163],{},[484,18661,18662],{},[503,18663,4162],{},[511,18665,18666,4171,18670,779,18672,779,18674,4042,18676,4184],{},[484,18667,18668],{},[503,18669,4170],{},[503,18671,4174],{},[503,18673,4177],{},[503,18675,4180],{},[503,18677,4183],{},[480,18679,4187],{},[495,18681,3692,18682,3994],{"id":4190},[503,18683,4193],{},[480,18685,4196],{},[508,18687,18688,18692,18696,18700],{},[511,18689,18690,4204],{},[503,18691,4203],{},[511,18693,18694,4210],{},[503,18695,4209],{},[511,18697,18698,4216],{},[503,18699,4215],{},[511,18701,18702,4222],{},[503,18703,4221],{},[480,18705,4225,18706,4228,18708,4232,18710,792],{},[503,18707,4193],{},[503,18709,4231],{},[503,18711,4235],{},[495,18713,3692,18714,3994],{"id":4238},[503,18715,4241],{},[480,18717,4244],{},[480,18719,4000,18720,4003],{},[503,18721,4241],{},[508,18723,18724],{},[511,18725,18726,4258,18730,4262],{},[484,18727,18728],{},[503,18729,4257],{},[503,18731,4261],{},[480,18733,4265],{},[495,18735,3692,18736,3994],{"id":4268},[503,18737,4271],{},[480,18739,4274,18740,4278,18742,4282],{},[503,18741,4277],{},[503,18743,4281],{},[480,18745,4285],{},[495,18747,4289],{"id":4288},[480,18749,4292],{},[508,18751,18752,18758,18764,18774,18780],{},[511,18753,18754,4301],{},[484,18755,18756],{},[503,18757,2811],{},[511,18759,18760,4309],{},[484,18761,18762],{},[503,18763,4308],{},[511,18765,18766,4316,18770,2146,18772,4322],{},[484,18767,18768],{},[503,18769,2808],{},[503,18771,3153],{},[503,18773,4321],{},[511,18775,18776,4330],{},[484,18777,18778],{},[503,18779,4329],{},[511,18781,18782,4337],{},[484,18783,18784],{},[503,18785,3347],{},[495,18787,4341],{"id":4340},[480,18789,4344],{},[508,18791,18792,18798,18804,18810,18816,18822],{},[511,18793,18794,4352,18796],{},[503,18795,4351],{},[503,18797,19],{},[511,18799,18800,4352,18802],{},[503,18801,4359],{},[503,18803,25],{},[511,18805,18806,4352,18808],{},[503,18807,4366],{},[503,18809,28],{},[511,18811,18812,4352,18814,4377],{},[503,18813,4373],{},[503,18815,4376],{},[511,18817,18818,4352,18820],{},[503,18819,4382],{},[503,18821,4385],{},[511,18823,18824,4352,18826],{},[503,18825,4390],{},[503,18827,4393],{},[480,18829,4396],{},[495,18831,4400],{"id":4399},[480,18833,4403,18834,4406,18836,4409,18838,4413,18840,4417],{},[503,18835,2819],{},[503,18837,505],{},[503,18839,4412],{},[503,18841,4416],{},[480,18843,3692,18844,4422],{},[503,18845,4308],{},[480,18847,4425,18848,4428,18850,792],{},[503,18849,4308],{},[503,18851,4308],{},[495,18853,1704],{"id":1703},[480,18855,4435],{},[480,18857,4438],{},{"title":555,"searchDepth":584,"depth":584,"links":18859},[18860],{"id":3963,"depth":569,"text":3958,"children":18861},[18862,18863,18864,18865,18866,18867,18868,18869,18870,18871],{"id":3975,"depth":584,"text":3976},{"id":3991,"depth":584,"text":4445},{"id":4114,"depth":584,"text":4447},{"id":4190,"depth":584,"text":4449},{"id":4238,"depth":584,"text":4451},{"id":4268,"depth":584,"text":4453},{"id":4288,"depth":584,"text":4289},{"id":4340,"depth":584,"text":4341},{"id":4399,"depth":584,"text":4400},{"id":1703,"depth":584,"text":1704},{},{"title":3958,"description":4458},{"id":4465,"title":4466,"badge":2156,"body":18875,"description":4864,"extension":1763,"meta":19159,"navigation":167,"order":629,"path":4866,"section":6,"seo":19160,"stem":4868,"__hash__":4869},{"type":473,"value":18876,"toc":19141},[18877,18879,18885,18889,18891,18893,18895,18901,18903,18905,18907,18923,18925,18927,18929,18931,18933,18941,18945,18950,18952,18958,18960,18962,18970,18974,18976,18984,18986,18991,18995,18999,19001,19007,19015,19017,19019,19024,19026,19028,19033,19035,19037,19067,19069,19071,19075,19083,19085,19089,19091,19093,19097,19099,19101,19113,19117,19119,19123,19125,19129,19131,19135,19137,19139],[476,18878,4466],{"id":4471},[480,18880,4474,18881,4477,18883,792],{},[484,18882,2149],{},[503,18884,3153],{},[480,18886,4482,18887,4486],{},[484,18888,4485],{},[480,18890,4489],{},[495,18892,4493],{"id":4492},[480,18894,4496],{},[480,18896,4499,18897,4502,18899,4506],{},[484,18898,4485],{},[484,18900,4505],{},[480,18902,4509],{},[495,18904,4513],{"id":4512},[480,18906,4516],{},[1150,18908,18909,18917],{},[511,18910,18911,4524,18913,4527,18915,792],{},[484,18912,4523],{},[503,18914,3123],{},[503,18916,3153],{},[511,18918,18919,4535,18921,792],{},[484,18920,4534],{},[503,18922,4538],{},[480,18924,4541],{},[480,18926,4544],{},[495,18928,4548],{"id":4547},[480,18930,4551],{},[480,18932,4554],{},[550,18934,18935],{"className":2586,"code":4557,"language":2578,"meta":555,"style":555},[503,18936,18937],{"__ignoreMap":555},[559,18938,18939],{"class":561,"line":562},[559,18940,4557],{},[480,18942,4566,18943,4570],{},[503,18944,4569],{},[550,18946,18948],{"className":18947,"code":4574,"language":1315},[1313],[503,18949,4574],{"__ignoreMap":555},[480,18951,3064],{},[480,18953,4581,18954,4584,18956,792],{},[503,18955,3054],{},[503,18957,2808],{},[495,18959,4590],{"id":4589},[480,18961,4593],{},[480,18963,4596,18964,4600,18966,4603,18968,4607],{},[484,18965,4599],{},[484,18967,2883],{},[484,18969,4606],{},[480,18971,4610,18972,4614],{},[484,18973,4613],{},[480,18975,4617],{},[550,18977,18978],{"className":2586,"code":4620,"language":2578,"meta":555,"style":555},[503,18979,18980],{"__ignoreMap":555},[559,18981,18982],{"class":561,"line":562},[559,18983,4620],{},[480,18985,4629],{},[550,18987,18989],{"className":18988,"code":4633,"language":1315},[1313],[503,18990,4633],{"__ignoreMap":555},[480,18992,4638,18993,792],{},[484,18994,3149],{},[480,18996,18997,4645],{},[484,18998,2481],{},[495,19000,4649],{"id":4648},[480,19002,4652,19003,4656,19005,4659],{},[484,19004,4655],{},[503,19006,3153],{},[550,19008,19009],{"className":2586,"code":3098,"language":2578,"meta":555,"style":555},[503,19010,19011],{"__ignoreMap":555},[559,19012,19013],{"class":561,"line":562},[559,19014,3098],{},[480,19016,4670],{},[480,19018,4629],{},[550,19020,19022],{"className":19021,"code":4676,"language":1315},[1313],[503,19023,4676],{"__ignoreMap":555},[495,19025,4682],{"id":4681},[480,19027,4685],{},[550,19029,19031],{"className":19030,"code":4689,"language":1315},[1313],[503,19032,4689],{"__ignoreMap":555},[480,19034,4694],{},[480,19036,4697],{},[508,19038,19039,19043,19047,19051,19055,19059,19063],{},[511,19040,19041,4705],{},[484,19042,4704],{},[511,19044,19045,4710],{},[484,19046,2068],{},[511,19048,19049,4155],{},[484,19050,2074],{},[511,19052,19053,4163],{},[484,19054,2080],{},[511,19056,19057,4723],{},[484,19058,1163],{},[511,19060,19061,4728],{},[484,19062,27],{},[511,19064,19065,4734],{},[484,19066,4733],{},[480,19068,4737],{},[495,19070,4741],{"id":4740},[480,19072,4744,19073,4748],{},[484,19074,4747],{},[508,19076,19077,19079,19081],{},[511,19078,4753],{},[511,19080,4756],{},[511,19082,4759],{},[480,19084,4762],{},[480,19086,4765,19087,4768],{},[484,19088,4505],{},[495,19090,4772],{"id":4771},[732,19092,4776],{"id":4775},[480,19094,4779,19095,792],{},[503,19096,4538],{},[732,19098,4785],{"id":4784},[480,19100,4788],{},[550,19102,19103],{"className":2586,"code":4791,"language":2578,"meta":555,"style":555},[503,19104,19105,19109],{"__ignoreMap":555},[559,19106,19107],{"class":561,"line":562},[559,19108,4798],{},[559,19110,19111],{"class":561,"line":569},[559,19112,4803],{},[480,19114,4806,19115,4810],{},[503,19116,4809],{},[732,19118,4814],{"id":4813},[480,19120,4817,19121,4821],{},[503,19122,4820],{},[732,19124,4825],{"id":4824},[480,19126,4828,19127,792],{},[503,19128,3153],{},[495,19130,1704],{"id":1703},[480,19132,4835,19133,4838],{},[484,19134,2062],{},[480,19136,4841],{},[480,19138,1714],{},[1716,19140,2936],{},{"title":555,"searchDepth":584,"depth":584,"links":19142},[19143],{"id":4471,"depth":569,"text":4466,"children":19144},[19145,19146,19147,19148,19149,19150,19151,19152,19158],{"id":4492,"depth":584,"text":4493},{"id":4512,"depth":584,"text":4513},{"id":4547,"depth":584,"text":4548},{"id":4589,"depth":584,"text":4590},{"id":4648,"depth":584,"text":4649},{"id":4681,"depth":584,"text":4682},{"id":4740,"depth":584,"text":4741},{"id":4771,"depth":584,"text":4772,"children":19153},[19154,19155,19156,19157],{"id":4775,"depth":595,"text":4776},{"id":4784,"depth":595,"text":4785},{"id":4813,"depth":595,"text":4814},{"id":4824,"depth":595,"text":4825},{"id":1703,"depth":584,"text":1704},{},{"title":4466,"description":4864},{"id":4871,"title":4872,"badge":471,"body":19162,"description":6648,"extension":1763,"meta":20608,"navigation":167,"order":640,"path":6650,"section":6,"seo":20609,"stem":6652,"__hash__":6653},{"type":473,"value":19163,"toc":20586},[19164,19166,19168,19172,19174,19176,19182,19184,19188,19190,19194,19196,19204,19208,19214,19216,19220,19224,19228,19230,19234,19268,19288,19292,19294,19298,19398,19416,19418,19422,19424,19428,19596,19642,19646,19648,19652,19728,19734,19736,19740,19806,19820,19846,19848,19850,19854,19920,19928,19930,19934,20074,20076,20138,20140,20142,20146,20220,20230,20232,20236,20306,20312,20314,20318,20416,20442,20448,20450,20454,20552,20560,20562,20568,20574,20576,20578,20582,20584],[476,19165,4872],{"id":4877},[480,19167,4880],{},[480,19169,4883,19170,4886],{},[484,19171,2062],{},[480,19173,4889],{},[495,19175,4893],{"id":4892},[480,19177,4896,19178,4899,19180,4903],{},[503,19179,4174],{},[503,19181,4902],{},[480,19183,4906],{},[480,19185,4909,19186,4912],{},[503,19187,4174],{},[495,19189,4916],{"id":4915},[480,19191,4919,19192,4922],{},[503,19193,4174],{},[732,19195,1148],{"id":1147},[480,19197,2524,19198,4929,19200,4932,19202,792],{},[503,19199,1157],{},[484,19201,4704],{},[484,19203,2062],{},[480,19205,4937,19206,4940],{},[503,19207,4174],{},[480,19209,4943,19210,4946,19212,4949],{},[484,19211,1252],{},[503,19213,4174],{},[732,19215,1265],{"id":1264},[480,19217,1154,19218,4956],{},[503,19219,4902],{},[480,19221,4959,19222,4962],{},[484,19223,1299],{},[480,19225,4965,19226,4968],{},[503,19227,4174],{},[495,19229,4972],{"id":4971},[480,19231,3692,19232,4978],{},[503,19233,4977],{},[550,19235,19236],{"className":552,"code":4981,"language":554,"meta":555,"style":555},[503,19237,19238,19244,19252,19260],{"__ignoreMap":555},[559,19239,19240,19242],{"class":561,"line":562},[559,19241,4977],{"class":572},[559,19243,657],{"class":576},[559,19245,19246,19248,19250],{"class":561,"line":569},[559,19247,3560],{"class":572},[559,19249,577],{"class":576},[559,19251,4998],{"class":580},[559,19253,19254,19256,19258],{"class":561,"line":584},[559,19255,5003],{"class":572},[559,19257,577],{"class":576},[559,19259,5008],{"class":580},[559,19261,19262,19264,19266],{"class":561,"line":595},[559,19263,5013],{"class":572},[559,19265,577],{"class":576},[559,19267,5018],{"class":580},[508,19269,19270,19276,19282],{},[511,19271,19272,5027],{},[484,19273,19274],{},[503,19275,3612],{},[511,19277,19278,5034],{},[484,19279,19280],{},[503,19281,695],{},[511,19283,19284,5042],{},[484,19285,19286],{},[503,19287,5041],{},[480,19289,5045,19290,5048],{},[503,19291,3612],{},[495,19293,5052],{"id":5051},[480,19295,3692,19296,5058],{},[503,19297,5057],{},[550,19299,19300],{"className":552,"code":5061,"language":554,"meta":555,"style":555},[503,19301,19302,19308,19318,19326,19336,19344,19354,19362,19372,19380,19390],{"__ignoreMap":555},[559,19303,19304,19306],{"class":561,"line":562},[559,19305,5057],{"class":572},[559,19307,657],{"class":576},[559,19309,19310,19312,19314,19316],{"class":561,"line":569},[559,19311,663],{"class":576},[559,19313,5076],{"class":572},[559,19315,577],{"class":576},[559,19317,5081],{"class":580},[559,19319,19320,19322,19324],{"class":561,"line":584},[559,19321,5086],{"class":572},[559,19323,577],{"class":576},[559,19325,5091],{"class":580},[559,19327,19328,19330,19332,19334],{"class":561,"line":595},[559,19329,663],{"class":576},[559,19331,5076],{"class":572},[559,19333,577],{"class":576},[559,19335,5102],{"class":580},[559,19337,19338,19340,19342],{"class":561,"line":607},[559,19339,5086],{"class":572},[559,19341,577],{"class":576},[559,19343,5111],{"class":580},[559,19345,19346,19348,19350,19352],{"class":561,"line":618},[559,19347,663],{"class":576},[559,19349,5076],{"class":572},[559,19351,577],{"class":576},[559,19353,5122],{"class":580},[559,19355,19356,19358,19360],{"class":561,"line":629},[559,19357,5086],{"class":572},[559,19359,577],{"class":576},[559,19361,5131],{"class":580},[559,19363,19364,19366,19368,19370],{"class":561,"line":640},[559,19365,663],{"class":576},[559,19367,5076],{"class":572},[559,19369,577],{"class":576},[559,19371,5142],{"class":580},[559,19373,19374,19376,19378],{"class":561,"line":651},[559,19375,5086],{"class":572},[559,19377,577],{"class":576},[559,19379,5151],{"class":580},[559,19381,19382,19384,19386,19388],{"class":561,"line":660},[559,19383,663],{"class":576},[559,19385,5076],{"class":572},[559,19387,577],{"class":576},[559,19389,5162],{"class":580},[559,19391,19392,19394,19396],{"class":561,"line":669},[559,19393,5086],{"class":572},[559,19395,577],{"class":576},[559,19397,5171],{"class":580},[508,19399,19400,19406],{},[511,19401,19402,5180],{},[484,19403,19404],{},[503,19405,5076],{},[511,19407,19408,5188,19412,5191,19414,792],{},[484,19409,19410],{},[503,19411,5187],{},[503,19413,28],{},[503,19415,3606],{},[480,19417,5196],{},[480,19419,3692,19420,5202],{},[503,19421,5201],{},[495,19423,5206],{"id":5205},[480,19425,3692,19426,5212],{},[503,19427,5211],{},[550,19429,19430],{"className":552,"code":5215,"language":554,"meta":555,"style":555},[503,19431,19432,19438,19446,19454,19462,19470,19476,19484,19492,19498,19506,19514,19520,19526,19532,19538,19546,19552,19558,19564,19572,19580,19588],{"__ignoreMap":555},[559,19433,19434,19436],{"class":561,"line":562},[559,19435,5211],{"class":572},[559,19437,657],{"class":576},[559,19439,19440,19442,19444],{"class":561,"line":569},[559,19441,5003],{"class":572},[559,19443,577],{"class":576},[559,19445,5232],{"class":580},[559,19447,19448,19450,19452],{"class":561,"line":584},[559,19449,5237],{"class":572},[559,19451,577],{"class":576},[559,19453,5242],{"class":580},[559,19455,19456,19458,19460],{"class":561,"line":595},[559,19457,5247],{"class":572},[559,19459,577],{"class":576},[559,19461,5252],{"class":580},[559,19463,19464,19466,19468],{"class":561,"line":607},[559,19465,5257],{"class":572},[559,19467,577],{"class":576},[559,19469,5262],{"class":580},[559,19471,19472,19474],{"class":561,"line":618},[559,19473,5267],{"class":572},[559,19475,657],{"class":576},[559,19477,19478,19480,19482],{"class":561,"line":629},[559,19479,5274],{"class":572},[559,19481,577],{"class":576},[559,19483,5279],{"class":580},[559,19485,19486,19488,19490],{"class":561,"line":640},[559,19487,5086],{"class":572},[559,19489,577],{"class":576},[559,19491,5111],{"class":580},[559,19493,19494,19496],{"class":561,"line":651},[559,19495,5292],{"class":572},[559,19497,657],{"class":576},[559,19499,19500,19502,19504],{"class":561,"line":660},[559,19501,5274],{"class":572},[559,19503,577],{"class":576},[559,19505,5303],{"class":580},[559,19507,19508,19510,19512],{"class":561,"line":669},[559,19509,5086],{"class":572},[559,19511,577],{"class":576},[559,19513,5312],{"class":580},[559,19515,19516,19518],{"class":561,"line":676},[559,19517,5317],{"class":572},[559,19519,657],{"class":576},[559,19521,19522,19524],{"class":561,"line":684},[559,19523,5324],{"class":576},[559,19525,5327],{"class":580},[559,19527,19528,19530],{"class":561,"line":692},[559,19529,5324],{"class":576},[559,19531,5334],{"class":580},[559,19533,19534,19536],{"class":561,"line":703},[559,19535,5339],{"class":572},[559,19537,657],{"class":576},[559,19539,19540,19542,19544],{"class":561,"line":714},[559,19541,5346],{"class":572},[559,19543,577],{"class":576},[559,19545,5351],{"class":580},[559,19547,19548,19550],{"class":561,"line":725},[559,19549,5356],{"class":572},[559,19551,657],{"class":576},[559,19553,19554,19556],{"class":561,"line":1529},[559,19555,5363],{"class":576},[559,19557,5366],{"class":580},[559,19559,19560,19562],{"class":561,"line":1535},[559,19561,5363],{"class":576},[559,19563,666],{"class":580},[559,19565,19566,19568,19570],{"class":561,"line":1540},[559,19567,5377],{"class":572},[559,19569,577],{"class":576},[559,19571,5382],{"class":580},[559,19573,19574,19576,19578],{"class":561,"line":1546},[559,19575,5387],{"class":572},[559,19577,577],{"class":576},[559,19579,5392],{"class":580},[559,19581,19582,19584,19586],{"class":561,"line":1551},[559,19583,5397],{"class":572},[559,19585,577],{"class":576},[559,19587,5402],{"class":603},[559,19589,19590,19592,19594],{"class":561,"line":1557},[559,19591,5407],{"class":572},[559,19593,577],{"class":576},[559,19595,5412],{"class":603},[508,19597,19598,19604,19614,19620,19630,19636],{},[511,19599,19600,5421],{},[484,19601,19602],{},[503,19603,695],{},[511,19605,19606,5428,19610,2146,19612,5434],{},[484,19607,19608],{},[503,19609,573],{},[503,19611,573],{},[503,19613,5433],{},[511,19615,19616,5442],{},[484,19617,19618],{},[503,19619,5441],{},[511,19621,19622,2146,19626,5455],{},[484,19623,19624],{},[503,19625,5449],{},[484,19627,19628],{},[503,19629,5454],{},[511,19631,19632,5463],{},[484,19633,19634],{},[503,19635,5462],{},[511,19637,19638,5471],{},[484,19639,19640],{},[503,19641,5470],{},[480,19643,5474,19644,5478],{},[503,19645,5477],{},[495,19647,5482],{"id":5481},[480,19649,3692,19650,5488],{},[503,19651,5487],{},[550,19653,19654],{"className":552,"code":5491,"language":554,"meta":555,"style":555},[503,19655,19656,19662,19670,19678,19686,19692,19702,19710,19720],{"__ignoreMap":555},[559,19657,19658,19660],{"class":561,"line":562},[559,19659,5487],{"class":572},[559,19661,657],{"class":576},[559,19663,19664,19666,19668],{"class":561,"line":569},[559,19665,5504],{"class":572},[559,19667,577],{"class":576},[559,19669,5509],{"class":580},[559,19671,19672,19674,19676],{"class":561,"line":584},[559,19673,5237],{"class":572},[559,19675,577],{"class":576},[559,19677,5518],{"class":580},[559,19679,19680,19682,19684],{"class":561,"line":595},[559,19681,5523],{"class":572},[559,19683,577],{"class":576},[559,19685,5528],{"class":580},[559,19687,19688,19690],{"class":561,"line":607},[559,19689,5533],{"class":572},[559,19691,657],{"class":576},[559,19693,19694,19696,19698,19700],{"class":561,"line":618},[559,19695,5324],{"class":576},[559,19697,573],{"class":572},[559,19699,577],{"class":576},[559,19701,5546],{"class":580},[559,19703,19704,19706,19708],{"class":561,"line":629},[559,19705,5551],{"class":572},[559,19707,577],{"class":576},[559,19709,5556],{"class":580},[559,19711,19712,19714,19716,19718],{"class":561,"line":640},[559,19713,5324],{"class":576},[559,19715,573],{"class":572},[559,19717,577],{"class":576},[559,19719,5567],{"class":580},[559,19721,19722,19724,19726],{"class":561,"line":651},[559,19723,5551],{"class":572},[559,19725,577],{"class":576},[559,19727,5576],{"class":580},[480,19729,5579,19730,5582,19732,5585],{},[503,19731,573],{},[503,19733,1315],{},[495,19735,5589],{"id":5588},[480,19737,3692,19738,5595],{},[503,19739,5594],{},[550,19741,19742],{"className":552,"code":5598,"language":554,"meta":555,"style":555},[503,19743,19744,19750,19758,19766,19774,19780,19790,19798],{"__ignoreMap":555},[559,19745,19746,19748],{"class":561,"line":562},[559,19747,5594],{"class":572},[559,19749,657],{"class":576},[559,19751,19752,19754,19756],{"class":561,"line":569},[559,19753,5504],{"class":572},[559,19755,577],{"class":576},[559,19757,5615],{"class":580},[559,19759,19760,19762,19764],{"class":561,"line":584},[559,19761,5237],{"class":572},[559,19763,577],{"class":576},[559,19765,5624],{"class":580},[559,19767,19768,19770,19772],{"class":561,"line":595},[559,19769,5523],{"class":572},[559,19771,577],{"class":576},[559,19773,5633],{"class":580},[559,19775,19776,19778],{"class":561,"line":607},[559,19777,5638],{"class":572},[559,19779,657],{"class":576},[559,19781,19782,19784,19786,19788],{"class":561,"line":618},[559,19783,5324],{"class":576},[559,19785,5647],{"class":572},[559,19787,577],{"class":576},[559,19789,5652],{"class":580},[559,19791,19792,19794,19796],{"class":561,"line":629},[559,19793,5657],{"class":572},[559,19795,577],{"class":576},[559,19797,5662],{"class":580},[559,19799,19800,19802,19804],{"class":561,"line":640},[559,19801,5667],{"class":572},[559,19803,577],{"class":576},[559,19805,5672],{"class":580},[480,19807,5675,19808,5678,19810,779,19812,5683,19814,5686,19816,5689,19818,5693],{},[503,19809,5647],{},[503,19811,101],{},[503,19813,109],{},[503,19815,113],{},[503,19817,573],{},[503,19819,5692],{},[508,19821,19822,19826,19830,19834,19838,19842],{},[511,19823,19824],{},[503,19825,101],{},[511,19827,19828],{},[503,19829,105],{},[511,19831,19832],{},[503,19833,109],{},[511,19835,19836],{},[503,19837,113],{},[511,19839,19840],{},[503,19841,117],{},[511,19843,19844],{},[503,19845,121],{},[480,19847,5722],{},[495,19849,5726],{"id":5725},[480,19851,3692,19852,5732],{},[503,19853,5731],{},[550,19855,19856],{"className":552,"code":5735,"language":554,"meta":555,"style":555},[503,19857,19858,19864,19872,19880,19888,19894,19904,19912],{"__ignoreMap":555},[559,19859,19860,19862],{"class":561,"line":562},[559,19861,5731],{"class":572},[559,19863,657],{"class":576},[559,19865,19866,19868,19870],{"class":561,"line":569},[559,19867,5504],{"class":572},[559,19869,577],{"class":576},[559,19871,5752],{"class":580},[559,19873,19874,19876,19878],{"class":561,"line":584},[559,19875,5237],{"class":572},[559,19877,577],{"class":576},[559,19879,5761],{"class":580},[559,19881,19882,19884,19886],{"class":561,"line":595},[559,19883,5523],{"class":572},[559,19885,577],{"class":576},[559,19887,5770],{"class":580},[559,19889,19890,19892],{"class":561,"line":607},[559,19891,5638],{"class":572},[559,19893,657],{"class":576},[559,19895,19896,19898,19900,19902],{"class":561,"line":618},[559,19897,5324],{"class":576},[559,19899,5783],{"class":572},[559,19901,577],{"class":576},[559,19903,5788],{"class":580},[559,19905,19906,19908,19910],{"class":561,"line":629},[559,19907,5657],{"class":572},[559,19909,577],{"class":576},[559,19911,5797],{"class":580},[559,19913,19914,19916,19918],{"class":561,"line":640},[559,19915,5667],{"class":572},[559,19917,577],{"class":576},[559,19919,5806],{"class":580},[480,19921,5809,19922,5812,19924,5689,19926,5817],{},[503,19923,5783],{},[503,19925,573],{},[503,19927,5692],{},[495,19929,5821],{"id":5820},[480,19931,3692,19932,5827],{},[503,19933,5826],{},[550,19935,19936],{"className":552,"code":5830,"language":554,"meta":555,"style":555},[503,19937,19938,19944,19952,19960,19968,19976,19982,19992,20000,20008,20016,20024,20032,20038,20044,20050,20058,20066],{"__ignoreMap":555},[559,19939,19940,19942],{"class":561,"line":562},[559,19941,5826],{"class":572},[559,19943,657],{"class":576},[559,19945,19946,19948,19950],{"class":561,"line":569},[559,19947,5504],{"class":572},[559,19949,577],{"class":576},[559,19951,5847],{"class":580},[559,19953,19954,19956,19958],{"class":561,"line":584},[559,19955,5237],{"class":572},[559,19957,577],{"class":576},[559,19959,5856],{"class":580},[559,19961,19962,19964,19966],{"class":561,"line":595},[559,19963,5523],{"class":572},[559,19965,577],{"class":576},[559,19967,5865],{"class":580},[559,19969,19970,19972,19974],{"class":561,"line":607},[559,19971,5870],{"class":572},[559,19973,577],{"class":576},[559,19975,5875],{"class":580},[559,19977,19978,19980],{"class":561,"line":618},[559,19979,5880],{"class":572},[559,19981,657],{"class":576},[559,19983,19984,19986,19988,19990],{"class":561,"line":629},[559,19985,5324],{"class":576},[559,19987,573],{"class":572},[559,19989,577],{"class":576},[559,19991,5893],{"class":580},[559,19993,19994,19996,19998],{"class":561,"line":640},[559,19995,5898],{"class":572},[559,19997,577],{"class":576},[559,19999,5903],{"class":580},[559,20001,20002,20004,20006],{"class":561,"line":651},[559,20003,5908],{"class":572},[559,20005,577],{"class":576},[559,20007,5913],{"class":603},[559,20009,20010,20012,20014],{"class":561,"line":660},[559,20011,5918],{"class":572},[559,20013,577],{"class":576},[559,20015,5923],{"class":580},[559,20017,20018,20020,20022],{"class":561,"line":669},[559,20019,5928],{"class":572},[559,20021,577],{"class":576},[559,20023,5933],{"class":580},[559,20025,20026,20028,20030],{"class":561,"line":676},[559,20027,5938],{"class":572},[559,20029,577],{"class":576},[559,20031,5943],{"class":603},[559,20033,20034,20036],{"class":561,"line":684},[559,20035,5948],{"class":572},[559,20037,657],{"class":576},[559,20039,20040,20042],{"class":561,"line":692},[559,20041,5955],{"class":576},[559,20043,5958],{"class":580},[559,20045,20046,20048],{"class":561,"line":703},[559,20047,5955],{"class":576},[559,20049,5965],{"class":580},[559,20051,20052,20054,20056],{"class":561,"line":714},[559,20053,5970],{"class":572},[559,20055,577],{"class":576},[559,20057,5975],{"class":580},[559,20059,20060,20062,20064],{"class":561,"line":725},[559,20061,5980],{"class":572},[559,20063,577],{"class":576},[559,20065,5985],{"class":580},[559,20067,20068,20070,20072],{"class":561,"line":1529},[559,20069,5990],{"class":572},[559,20071,577],{"class":576},[559,20073,5995],{"class":580},[480,20075,5998],{},[508,20077,20078,20084,20090,20096,20102,20108,20114,20120,20126,20132],{},[511,20079,20080,6007],{},[484,20081,20082],{},[503,20083,573],{},[511,20085,20086,5421],{},[484,20087,20088],{},[503,20089,695],{},[511,20091,20092,6021],{},[484,20093,20094],{},[503,20095,6020],{},[511,20097,20098,6029],{},[484,20099,20100],{},[503,20101,6028],{},[511,20103,20104,6037],{},[484,20105,20106],{},[503,20107,6036],{},[511,20109,20110,6045],{},[484,20111,20112],{},[503,20113,6044],{},[511,20115,20116,6052],{},[484,20117,20118],{},[503,20119,5594],{},[511,20121,20122,6060],{},[484,20123,20124],{},[503,20125,6059],{},[511,20127,20128,6068],{},[484,20129,20130],{},[503,20131,6067],{},[511,20133,20134,6076],{},[484,20135,20136],{},[503,20137,6075],{},[480,20139,6079],{},[495,20141,6083],{"id":6082},[480,20143,3692,20144,6089],{},[503,20145,6088],{},[550,20147,20148],{"className":552,"code":6092,"language":554,"meta":555,"style":555},[503,20149,20150,20156,20164,20172,20180,20186,20196,20204,20212],{"__ignoreMap":555},[559,20151,20152,20154],{"class":561,"line":562},[559,20153,6088],{"class":572},[559,20155,657],{"class":576},[559,20157,20158,20160,20162],{"class":561,"line":569},[559,20159,5504],{"class":572},[559,20161,577],{"class":576},[559,20163,6109],{"class":580},[559,20165,20166,20168,20170],{"class":561,"line":584},[559,20167,5237],{"class":572},[559,20169,577],{"class":576},[559,20171,6118],{"class":580},[559,20173,20174,20176,20178],{"class":561,"line":595},[559,20175,5523],{"class":572},[559,20177,577],{"class":576},[559,20179,6127],{"class":580},[559,20181,20182,20184],{"class":561,"line":607},[559,20183,5638],{"class":572},[559,20185,657],{"class":576},[559,20187,20188,20190,20192,20194],{"class":561,"line":618},[559,20189,5324],{"class":576},[559,20191,6140],{"class":572},[559,20193,577],{"class":576},[559,20195,6145],{"class":580},[559,20197,20198,20200,20202],{"class":561,"line":629},[559,20199,6150],{"class":572},[559,20201,577],{"class":576},[559,20203,6155],{"class":580},[559,20205,20206,20208,20210],{"class":561,"line":640},[559,20207,6160],{"class":572},[559,20209,577],{"class":576},[559,20211,6165],{"class":580},[559,20213,20214,20216,20218],{"class":561,"line":651},[559,20215,6170],{"class":572},[559,20217,577],{"class":576},[559,20219,6175],{"class":580},[480,20221,5809,20222,6180,20224,6184,20226,4042,20228,792],{},[503,20223,6140],{},[503,20225,6183],{},[503,20227,3612],{},[503,20229,6189],{},[495,20231,6193],{"id":6192},[480,20233,3692,20234,6199],{},[503,20235,6198],{},[550,20237,20238],{"className":552,"code":6202,"language":554,"meta":555,"style":555},[503,20239,20240,20246,20254,20262,20268,20276,20284,20290,20298],{"__ignoreMap":555},[559,20241,20242,20244],{"class":561,"line":562},[559,20243,6198],{"class":572},[559,20245,657],{"class":576},[559,20247,20248,20250,20252],{"class":561,"line":569},[559,20249,5237],{"class":572},[559,20251,577],{"class":576},[559,20253,6219],{"class":580},[559,20255,20256,20258,20260],{"class":561,"line":584},[559,20257,5523],{"class":572},[559,20259,577],{"class":576},[559,20261,6228],{"class":580},[559,20263,20264,20266],{"class":561,"line":595},[559,20265,5267],{"class":572},[559,20267,657],{"class":576},[559,20269,20270,20272,20274],{"class":561,"line":607},[559,20271,5274],{"class":572},[559,20273,577],{"class":576},[559,20275,6243],{"class":580},[559,20277,20278,20280,20282],{"class":561,"line":618},[559,20279,5086],{"class":572},[559,20281,577],{"class":576},[559,20283,5111],{"class":580},[559,20285,20286,20288],{"class":561,"line":629},[559,20287,5292],{"class":572},[559,20289,657],{"class":576},[559,20291,20292,20294,20296],{"class":561,"line":640},[559,20293,5274],{"class":572},[559,20295,577],{"class":576},[559,20297,6266],{"class":580},[559,20299,20300,20302,20304],{"class":561,"line":651},[559,20301,5086],{"class":572},[559,20303,577],{"class":576},[559,20305,5111],{"class":580},[480,20307,6277,20308,6280,20310,6283],{},[503,20309,573],{},[503,20311,5692],{},[495,20313,6287],{"id":6286},[480,20315,3692,20316,6293],{},[503,20317,6292],{},[550,20319,20320],{"className":552,"code":6296,"language":554,"meta":555,"style":555},[503,20321,20322,20328,20336,20342,20352,20358,20368,20376,20382,20392,20400,20408],{"__ignoreMap":555},[559,20323,20324,20326],{"class":561,"line":562},[559,20325,6292],{"class":572},[559,20327,657],{"class":576},[559,20329,20330,20332,20334],{"class":561,"line":569},[559,20331,3572],{"class":572},[559,20333,577],{"class":576},[559,20335,6313],{"class":580},[559,20337,20338,20340],{"class":561,"line":584},[559,20339,6318],{"class":572},[559,20341,657],{"class":576},[559,20343,20344,20346,20348,20350],{"class":561,"line":595},[559,20345,5324],{"class":576},[559,20347,573],{"class":572},[559,20349,577],{"class":576},[559,20351,5102],{"class":580},[559,20353,20354,20356],{"class":561,"line":607},[559,20355,6335],{"class":572},[559,20357,657],{"class":576},[559,20359,20360,20362,20364,20366],{"class":561,"line":618},[559,20361,5955],{"class":576},[559,20363,5076],{"class":572},[559,20365,577],{"class":576},[559,20367,5893],{"class":580},[559,20369,20370,20372,20374],{"class":561,"line":629},[559,20371,6352],{"class":572},[559,20373,577],{"class":576},[559,20375,6357],{"class":580},[559,20377,20378,20380],{"class":561,"line":640},[559,20379,6362],{"class":572},[559,20381,657],{"class":576},[559,20383,20384,20386,20388,20390],{"class":561,"line":651},[559,20385,5324],{"class":576},[559,20387,5076],{"class":572},[559,20389,577],{"class":576},[559,20391,6375],{"class":580},[559,20393,20394,20396,20398],{"class":561,"line":660},[559,20395,6380],{"class":572},[559,20397,577],{"class":576},[559,20399,6385],{"class":580},[559,20401,20402,20404,20406],{"class":561,"line":669},[559,20403,6390],{"class":572},[559,20405,577],{"class":576},[559,20407,6395],{"class":580},[559,20409,20410,20412,20414],{"class":561,"line":676},[559,20411,6400],{"class":572},[559,20413,577],{"class":576},[559,20415,6405],{"class":580},[508,20417,20418,20424,20430,20436],{},[511,20419,20420,6414],{},[484,20421,20422],{},[503,20423,587],{},[511,20425,20426,6422],{},[484,20427,20428],{},[503,20429,6421],{},[511,20431,20432,6430],{},[484,20433,20434],{},[503,20435,6429],{},[511,20437,20438,6438],{},[484,20439,20440],{},[503,20441,6437],{},[480,20443,6441,20444,6444,20446,792],{},[503,20445,6421],{},[503,20447,6429],{},[495,20449,6450],{"id":6449},[480,20451,3692,20452,6456],{},[503,20453,6455],{},[550,20455,20456],{"className":552,"code":6459,"language":554,"meta":555,"style":555},[503,20457,20458,20464,20472,20480,20488,20496,20504,20512,20520,20528,20536,20544],{"__ignoreMap":555},[559,20459,20460,20462],{"class":561,"line":562},[559,20461,6455],{"class":572},[559,20463,657],{"class":576},[559,20465,20466,20468,20470],{"class":561,"line":569},[559,20467,6472],{"class":572},[559,20469,577],{"class":576},[559,20471,6477],{"class":580},[559,20473,20474,20476,20478],{"class":561,"line":584},[559,20475,6482],{"class":572},[559,20477,577],{"class":576},[559,20479,6487],{"class":580},[559,20481,20482,20484,20486],{"class":561,"line":595},[559,20483,6492],{"class":572},[559,20485,577],{"class":576},[559,20487,6497],{"class":580},[559,20489,20490,20492,20494],{"class":561,"line":607},[559,20491,6502],{"class":572},[559,20493,577],{"class":576},[559,20495,6507],{"class":580},[559,20497,20498,20500,20502],{"class":561,"line":618},[559,20499,6512],{"class":572},[559,20501,577],{"class":576},[559,20503,6517],{"class":580},[559,20505,20506,20508,20510],{"class":561,"line":629},[559,20507,6522],{"class":572},[559,20509,577],{"class":576},[559,20511,6527],{"class":580},[559,20513,20514,20516,20518],{"class":561,"line":640},[559,20515,6532],{"class":572},[559,20517,577],{"class":576},[559,20519,6537],{"class":580},[559,20521,20522,20524,20526],{"class":561,"line":651},[559,20523,6542],{"class":572},[559,20525,577],{"class":576},[559,20527,6547],{"class":580},[559,20529,20530,20532,20534],{"class":561,"line":660},[559,20531,5638],{"class":572},[559,20533,577],{"class":576},[559,20535,6556],{"class":580},[559,20537,20538,20540,20542],{"class":561,"line":669},[559,20539,6561],{"class":572},[559,20541,577],{"class":576},[559,20543,6566],{"class":580},[559,20545,20546,20548,20550],{"class":561,"line":676},[559,20547,6571],{"class":572},[559,20549,577],{"class":576},[559,20551,6576],{"class":580},[480,20553,6579,20554,779,20556,4042,20558,6589],{},[503,20555,6582],{},[503,20557,6585],{},[503,20559,6588],{},[495,20561,6593],{"id":6592},[480,20563,6596,20564,4946,20566,6601],{},[484,20565,1252],{},[503,20567,4174],{},[480,20569,6604,20570,6607,20572,6601],{},[484,20571,1299],{},[503,20573,4174],{},[480,20575,6612],{},[495,20577,1704],{"id":1703},[480,20579,6617,20580,6620],{},[484,20581,2068],{},[480,20583,1714],{},[1716,20585,6625],{},{"title":555,"searchDepth":584,"depth":584,"links":20587},[20588],{"id":4877,"depth":569,"text":4872,"children":20589},[20590,20591,20595,20596,20597,20598,20599,20600,20601,20602,20603,20604,20605,20606,20607],{"id":4892,"depth":584,"text":4893},{"id":4915,"depth":584,"text":4916,"children":20592},[20593,20594],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":4971,"depth":584,"text":4972},{"id":5051,"depth":584,"text":5052},{"id":5205,"depth":584,"text":5206},{"id":5481,"depth":584,"text":5482},{"id":5588,"depth":584,"text":5589},{"id":5725,"depth":584,"text":5726},{"id":5820,"depth":584,"text":5821},{"id":6082,"depth":584,"text":6083},{"id":6192,"depth":584,"text":6193},{"id":6286,"depth":584,"text":6287},{"id":6449,"depth":584,"text":6450},{"id":6592,"depth":584,"text":6593},{"id":1703,"depth":584,"text":1704},{},{"title":4872,"description":6648},{"id":6655,"title":6656,"badge":471,"body":20611,"description":7236,"extension":1763,"meta":21069,"navigation":167,"order":651,"path":7238,"section":6,"seo":21070,"stem":7240,"__hash__":7241},{"type":473,"value":20612,"toc":21055},[20613,20615,20619,20625,20627,20645,20647,20649,20651,20653,20663,20667,20669,20677,20679,20681,20687,20755,20757,20819,20821,20827,20899,20901,20963,20965,20971,20979,20989,21005,21009,21011,21015,21019,21023,21027,21029,21033,21037,21043,21045,21049,21051,21053],[476,20614,6656],{"id":6661},[480,20616,6664,20617,6667],{},[484,20618,2068],{},[480,20620,6670,20621,2146,20623,6675],{},[503,20622,31],{},[503,20624,28],{},[480,20626,6678],{},[1150,20628,20629,20637],{},[511,20630,20631,6688,20635,6691],{},[484,20632,20633],{},[503,20634,6687],{},[503,20636,31],{},[511,20638,20639,6688,20643,6691],{},[484,20640,20641],{},[503,20642,6698],{},[503,20644,28],{},[480,20646,6703],{},[495,20648,6707],{"id":6706},[480,20650,6710],{},[732,20652,1148],{"id":1147},[480,20654,1154,20655,4929,20657,6719,20659,2146,20661,6726],{},[503,20656,1157],{},[484,20658,2068],{},[484,20660,6722],{},[484,20662,6725],{},[480,20664,6729,20665,6732],{},[484,20666,1252],{},[732,20668,1265],{"id":1264},[480,20670,1154,20671,823,20673,6741,20675,6744],{},[503,20672,6687],{},[503,20674,6698],{},[484,20676,1299],{},[480,20678,6747],{},[495,20680,6751],{"id":6750},[480,20682,6754,20683,6757,20685,6691],{},[503,20684,6687],{},[503,20686,31],{},[550,20688,20689],{"className":552,"code":6762,"language":554,"meta":555,"style":555},[503,20690,20691,20699,20707,20715,20723,20731,20739,20747],{"__ignoreMap":555},[559,20692,20693,20695,20697],{"class":561,"line":562},[559,20694,573],{"class":572},[559,20696,577],{"class":576},[559,20698,6773],{"class":580},[559,20700,20701,20703,20705],{"class":561,"line":569},[559,20702,587],{"class":572},[559,20704,577],{"class":576},[559,20706,6782],{"class":580},[559,20708,20709,20711,20713],{"class":561,"line":584},[559,20710,6787],{"class":572},[559,20712,577],{"class":576},[559,20714,6792],{"class":580},[559,20716,20717,20719,20721],{"class":561,"line":595},[559,20718,6797],{"class":572},[559,20720,577],{"class":576},[559,20722,6802],{"class":580},[559,20724,20725,20727,20729],{"class":561,"line":607},[559,20726,6807],{"class":572},[559,20728,577],{"class":576},[559,20730,6812],{"class":580},[559,20732,20733,20735,20737],{"class":561,"line":618},[559,20734,6817],{"class":572},[559,20736,577],{"class":576},[559,20738,6822],{"class":603},[559,20740,20741,20743,20745],{"class":561,"line":629},[559,20742,6827],{"class":572},[559,20744,577],{"class":576},[559,20746,6832],{"class":580},[559,20748,20749,20751,20753],{"class":561,"line":640},[559,20750,6837],{"class":572},[559,20752,577],{"class":576},[559,20754,6842],{"class":580},[480,20756,6845],{},[508,20758,20759,20765,20771,20777,20785,20791,20797,20807],{},[511,20760,20761,6854],{},[484,20762,20763],{},[503,20764,573],{},[511,20766,20767,6861],{},[484,20768,20769],{},[503,20770,587],{},[511,20772,20773,6868],{},[484,20774,20775],{},[503,20776,6787],{},[511,20778,20779,6875,20783,792],{},[484,20780,20781],{},[503,20782,6797],{},[503,20784,739],{},[511,20786,20787,6884],{},[484,20788,20789],{},[503,20790,6807],{},[511,20792,20793,6891],{},[484,20794,20795],{},[503,20796,6817],{},[511,20798,20799,6898,20803,6901,20805,6904],{},[484,20800,20801],{},[503,20802,6827],{},[503,20804,598],{},[503,20806,573],{},[511,20808,20809,6911,20813,6915,20815,6918,20817,6921],{},[484,20810,20811],{},[503,20812,6837],{},[503,20814,6914],{},[503,20816,5692],{},[503,20818,5692],{},[495,20820,6925],{"id":6924},[480,20822,6928,20823,6757,20825,6691],{},[503,20824,6698],{},[503,20826,28],{},[550,20828,20829],{"className":552,"code":6935,"language":554,"meta":555,"style":555},[503,20830,20831,20839,20851,20859,20867,20875,20883,20891],{"__ignoreMap":555},[559,20832,20833,20835,20837],{"class":561,"line":562},[559,20834,573],{"class":572},[559,20836,577],{"class":576},[559,20838,6946],{"class":580},[559,20840,20841,20843,20845,20847,20849],{"class":561,"line":569},[559,20842,587],{"class":572},[559,20844,577],{"class":576},[559,20846,6955],{"class":572},[559,20848,577],{"class":576},[559,20850,6960],{"class":580},[559,20852,20853,20855,20857],{"class":561,"line":584},[559,20854,6787],{"class":572},[559,20856,577],{"class":576},[559,20858,6969],{"class":580},[559,20860,20861,20863,20865],{"class":561,"line":595},[559,20862,6797],{"class":572},[559,20864,577],{"class":576},[559,20866,6978],{"class":580},[559,20868,20869,20871,20873],{"class":561,"line":607},[559,20870,6807],{"class":572},[559,20872,577],{"class":576},[559,20874,6987],{"class":580},[559,20876,20877,20879,20881],{"class":561,"line":618},[559,20878,6817],{"class":572},[559,20880,577],{"class":576},[559,20882,6996],{"class":603},[559,20884,20885,20887,20889],{"class":561,"line":629},[559,20886,6827],{"class":572},[559,20888,577],{"class":576},[559,20890,7005],{"class":580},[559,20892,20893,20895,20897],{"class":561,"line":640},[559,20894,6837],{"class":572},[559,20896,577],{"class":576},[559,20898,7014],{"class":580},[480,20900,7017],{},[508,20902,20903,20909,20915,20921,20927,20933,20939,20953],{},[511,20904,20905,7026],{},[484,20906,20907],{},[503,20908,573],{},[511,20910,20911,7033],{},[484,20912,20913],{},[503,20914,587],{},[511,20916,20917,7040],{},[484,20918,20919],{},[503,20920,6787],{},[511,20922,20923,7047],{},[484,20924,20925],{},[503,20926,6797],{},[511,20928,20929,7054],{},[484,20930,20931],{},[503,20932,6807],{},[511,20934,20935,7061],{},[484,20936,20937],{},[503,20938,6817],{},[511,20940,20941,6898,20945,7071,20947,7074,20949,823,20951,792],{},[484,20942,20943],{},[503,20944,6827],{},[503,20946,7070],{},[503,20948,7070],{},[503,20950,6020],{},[503,20952,573],{},[511,20954,20955,6911,20959,6915,20961,7089],{},[484,20956,20957],{},[503,20958,6837],{},[503,20960,6914],{},[503,20962,5692],{},[495,20964,7093],{"id":7092},[480,20966,3692,20967,2146,20969,7100],{},[503,20968,6827],{},[503,20970,6837],{},[480,20972,7103,20973,2146,20975,7110,20977,7113],{},[503,20974,7106],{},[503,20976,7109],{},[503,20978,598],{},[480,20980,7116,20981,2146,20983,7110,20985,7125,20987,7128],{},[503,20982,7119],{},[503,20984,7122],{},[503,20986,7070],{},[503,20988,7070],{},[480,20990,7131,20991,7134,20993,7138,20995,4042,20997,7138,20999,7148,21001,7151,21003,7154],{},[503,20992,7070],{},[503,20994,7137],{},[503,20996,7141],{},[503,20998,7144],{},[503,21000,7147],{},[503,21002,895],{},[503,21004,2804],{},[480,21006,7157,21007,7160],{},[503,21008,7070],{},[495,21010,7164],{"id":7163},[480,21012,3692,21013,7169],{},[503,21014,6817],{},[480,21016,7172,21017,7175],{},[503,21018,6817],{},[480,21020,7178,21021,7181],{},[503,21022,6817],{},[480,21024,7184,21025,7187],{},[503,21026,6588],{},[495,21028,6593],{"id":6592},[480,21030,6596,21031,1170],{},[484,21032,1252],{},[480,21034,6604,21035,792],{},[484,21036,1299],{},[480,21038,7200,21039,823,21041,7205],{},[503,21040,31],{},[503,21042,28],{},[495,21044,1704],{"id":1703},[480,21046,7210,21047,7213],{},[484,21048,2074],{},[480,21050,7216],{},[480,21052,1714],{},[1716,21054,7221],{},{"title":555,"searchDepth":584,"depth":584,"links":21056},[21057],{"id":6661,"depth":569,"text":6656,"children":21058},[21059,21063,21064,21065,21066,21067,21068],{"id":6706,"depth":584,"text":6707,"children":21060},[21061,21062],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":6750,"depth":584,"text":6751},{"id":6924,"depth":584,"text":6925},{"id":7092,"depth":584,"text":7093},{"id":7163,"depth":584,"text":7164},{"id":6592,"depth":584,"text":6593},{"id":1703,"depth":584,"text":1704},{},{"title":6656,"description":7236},{"id":7243,"title":7244,"badge":471,"body":21072,"description":7984,"extension":1763,"meta":21628,"navigation":167,"order":660,"path":7986,"section":6,"seo":21629,"stem":7988,"__hash__":7989},{"type":473,"value":21073,"toc":21606},[21074,21076,21080,21084,21086,21088,21090,21092,21106,21108,21110,21112,21129,21131,21133,21135,21153,21157,21162,21168,21170,21172,21174,21176,21204,21208,21210,21220,21238,21244,21262,21268,21270,21272,21274,21308,21310,21312,21314,21318,21330,21332,21334,21338,21344,21348,21414,21416,21460,21464,21466,21470,21510,21512,21552,21554,21558,21560,21562,21564,21572,21574,21576,21584,21586,21588,21596,21598,21602,21604],[476,21075,7244],{"id":7249},[480,21077,7252,21078,7255],{},[484,21079,2074],{},[480,21081,7258,21082,7262],{},[484,21083,7261],{},[480,21085,7265],{},[495,21087,7269],{"id":7268},[480,21089,7272],{},[480,21091,7275],{},[1150,21093,21094,21098,21102],{},[511,21095,21096,7283],{},[484,21097,7282],{},[511,21099,21100,7289],{},[484,21101,7288],{},[511,21103,21104,7295],{},[484,21105,7294],{},[480,21107,7298],{},[495,21109,7302],{"id":7301},[480,21111,7305],{},[1150,21113,21114,21119,21121,21125,21127],{},[511,21115,2524,21116,792],{},[2267,21117,7312],{"href":7312,"rel":21118},[2270],[511,21120,7316],{},[511,21122,1166,21123,792],{},[484,21124,7321],{},[511,21126,7324],{},[511,21128,7327],{},[480,21130,7330],{},[495,21132,7334],{"id":7333},[480,21134,7337],{},[1150,21136,21137,21143,21147,21149],{},[511,21138,7342,21139,7346,21141,7350],{},[484,21140,7345],{},[484,21142,7349],{},[511,21144,7353,21145,7357],{},[503,21146,7356],{},[511,21148,7360],{},[511,21150,1166,21151,792],{},[484,21152,7365],{},[480,21154,7368,21155,7372],{},[484,21156,7371],{},[550,21158,21160],{"className":21159,"code":7376,"language":1315},[1313],[503,21161,7376],{"__ignoreMap":555},[480,21163,7381,21164,7385,21166,7389],{},[503,21165,7384],{},[484,21167,7388],{},[480,21169,7392],{},[495,21171,7396],{"id":7395},[480,21173,7399],{},[732,21175,1148],{"id":1147},[1150,21177,21178,21182,21188,21194,21200],{},[511,21179,2524,21180,792],{},[503,21181,1157],{},[511,21183,1160,21184,2675,21186,792],{},[484,21185,4704],{},[484,21187,2062],{},[511,21189,7416,21190,7419,21192,792],{},[484,21191,33],{},[484,21193,7422],{},[511,21195,7425,21196,7429,21198,792],{},[503,21197,7428],{},[503,21199,7384],{},[511,21201,1166,21202,1170],{},[484,21203,1252],{},[480,21205,7438,21206,6601],{},[503,21207,4902],{},[732,21209,1265],{"id":1264},[1150,21211,21212,21216],{},[511,21213,1154,21214,7449],{},[503,21215,4902],{},[511,21217,7452,21218,7456],{},[503,21219,7455],{},[550,21221,21222],{"className":552,"code":7459,"language":554,"meta":555,"style":555},[503,21223,21224,21230],{"__ignoreMap":555},[559,21225,21226,21228],{"class":561,"line":562},[559,21227,7455],{"class":572},[559,21229,657],{"class":576},[559,21231,21232,21234,21236],{"class":561,"line":569},[559,21233,7472],{"class":572},[559,21235,577],{"class":576},[559,21237,7477],{"class":580},[1150,21239,21240],{"start":584},[511,21241,4806,21242,7484],{},[503,21243,225],{},[550,21245,21246],{"className":552,"code":7487,"language":554,"meta":555,"style":555},[503,21247,21248,21254],{"__ignoreMap":555},[559,21249,21250,21252],{"class":561,"line":562},[559,21251,7455],{"class":572},[559,21253,657],{"class":576},[559,21255,21256,21258,21260],{"class":561,"line":569},[559,21257,7472],{"class":572},[559,21259,577],{"class":576},[559,21261,7504],{"class":580},[1150,21263,21264],{"start":595},[511,21265,3682,21266,792],{},[484,21267,1299],{},[480,21269,7513],{},[495,21271,7517],{"id":7516},[480,21273,7520],{},[1150,21275,21276,21280,21282,21304],{},[511,21277,2524,21278,792],{},[503,21279,7527],{},[511,21281,7530],{},[511,21283,7533,21284],{},[508,21285,21286,21290,21296,21300],{},[511,21287,21288,7541],{},[484,21289,7540],{},[511,21291,21292,2265,21294],{},[484,21293,7546],{},[2267,21295,7550],{"href":7549},[511,21297,21298,7556],{},[484,21299,7555],{},[511,21301,21302,7562],{},[484,21303,7561],{},[511,21305,1166,21306,792],{},[484,21307,7567],{},[480,21309,7570],{},[480,21311,7573],{},[495,21313,7577],{"id":7576},[480,21315,7580,21316,7583],{},[484,21317,7567],{},[1150,21319,21320,21322,21326,21328],{},[511,21321,7588],{},[511,21323,7591,21324,7595],{},[503,21325,7594],{},[511,21327,7598],{},[511,21329,7601],{},[480,21331,7604],{},[495,21333,7608],{"id":7607},[480,21335,7611,21336,7615],{},[503,21337,7614],{},[480,21339,7618,21340,7621,21342,7449],{},[484,21341,2074],{},[503,21343,7614],{},[480,21345,3692,21346,7629],{},[503,21347,7628],{},[550,21349,21350],{"className":552,"code":7632,"language":554,"meta":555,"style":555},[503,21351,21352,21358,21364,21374,21382,21390,21398,21406],{"__ignoreMap":555},[559,21353,21354,21356],{"class":561,"line":562},[559,21355,7639],{"class":572},[559,21357,657],{"class":576},[559,21359,21360,21362],{"class":561,"line":569},[559,21361,7646],{"class":572},[559,21363,657],{"class":576},[559,21365,21366,21368,21370,21372],{"class":561,"line":584},[559,21367,5324],{"class":576},[559,21369,3612],{"class":572},[559,21371,577],{"class":576},[559,21373,7659],{"class":580},[559,21375,21376,21378,21380],{"class":561,"line":595},[559,21377,7664],{"class":572},[559,21379,577],{"class":576},[559,21381,7669],{"class":580},[559,21383,21384,21386,21388],{"class":561,"line":607},[559,21385,7674],{"class":572},[559,21387,577],{"class":576},[559,21389,7679],{"class":580},[559,21391,21392,21394,21396],{"class":561,"line":618},[559,21393,7684],{"class":572},[559,21395,577],{"class":576},[559,21397,7689],{"class":580},[559,21399,21400,21402,21404],{"class":561,"line":629},[559,21401,7694],{"class":572},[559,21403,577],{"class":576},[559,21405,7699],{"class":603},[559,21407,21408,21410,21412],{"class":561,"line":640},[559,21409,7704],{"class":572},[559,21411,577],{"class":576},[559,21413,7709],{"class":580},[480,21415,7712],{},[508,21417,21418,21424,21430,21436,21448,21454],{},[511,21419,21420,7721],{},[484,21421,21422],{},[503,21423,3612],{},[511,21425,21426,7728],{},[484,21427,21428],{},[503,21429,5076],{},[511,21431,21432,7736],{},[484,21433,21434],{},[503,21435,7735],{},[511,21437,21438,6911,21442,779,21444,5683,21446,792],{},[484,21439,21440],{},[503,21441,7743],{},[503,21443,1315],{},[503,21445,7748],{},[503,21447,7751],{},[511,21449,21450,7759],{},[484,21451,21452],{},[503,21453,7758],{},[511,21455,21456,7767],{},[484,21457,21458],{},[503,21459,7766],{},[480,21461,7770,21462,7773],{},[503,21463,3612],{},[495,21465,7777],{"id":7776},[480,21467,7780,21468,3075],{},[503,21469,7614],{},[550,21471,21472],{"className":552,"code":7785,"language":554,"meta":555,"style":555},[503,21473,21474,21480,21486,21494,21502],{"__ignoreMap":555},[559,21475,21476,21478],{"class":561,"line":562},[559,21477,7639],{"class":572},[559,21479,657],{"class":576},[559,21481,21482,21484],{"class":561,"line":569},[559,21483,7798],{"class":572},[559,21485,657],{"class":576},[559,21487,21488,21490,21492],{"class":561,"line":584},[559,21489,7805],{"class":572},[559,21491,577],{"class":576},[559,21493,7810],{"class":580},[559,21495,21496,21498,21500],{"class":561,"line":595},[559,21497,7815],{"class":572},[559,21499,577],{"class":576},[559,21501,7820],{"class":580},[559,21503,21504,21506,21508],{"class":561,"line":607},[559,21505,7825],{"class":572},[559,21507,577],{"class":576},[559,21509,7830],{"class":580},[480,21511,7833],{},[550,21513,21514],{"className":552,"code":7836,"language":554,"meta":555,"style":555},[503,21515,21516,21522,21528,21536,21544],{"__ignoreMap":555},[559,21517,21518,21520],{"class":561,"line":562},[559,21519,7639],{"class":572},[559,21521,657],{"class":576},[559,21523,21524,21526],{"class":561,"line":569},[559,21525,7798],{"class":572},[559,21527,657],{"class":576},[559,21529,21530,21532,21534],{"class":561,"line":584},[559,21531,7805],{"class":572},[559,21533,577],{"class":576},[559,21535,7859],{"class":580},[559,21537,21538,21540,21542],{"class":561,"line":595},[559,21539,7815],{"class":572},[559,21541,577],{"class":576},[559,21543,7868],{"class":580},[559,21545,21546,21548,21550],{"class":561,"line":607},[559,21547,7825],{"class":572},[559,21549,577],{"class":576},[559,21551,7877],{"class":580},[495,21553,7881],{"id":7880},[480,21555,7884,21556,7888],{},[503,21557,7887],{},[480,21559,7891],{},[495,21561,7895],{"id":7894},[732,21563,7899],{"id":7898},[480,21565,7902,21566,7906,21568,7909,21570,7912],{},[503,21567,7905],{},[503,21569,225],{},[503,21571,4902],{},[732,21573,7916],{"id":7915},[480,21575,7919],{},[1150,21577,21578,21580,21582],{},[511,21579,7924],{},[511,21581,7927],{},[511,21583,7930],{},[732,21585,7934],{"id":7933},[480,21587,7937],{},[508,21589,21590,21592,21594],{},[511,21591,7942],{},[511,21593,7945],{},[511,21595,7948],{},[495,21597,1704],{"id":1703},[480,21599,7953,21600,7957],{},[484,21601,7956],{},[480,21603,1714],{},[1716,21605,6625],{},{"title":555,"searchDepth":584,"depth":584,"links":21607},[21608],{"id":7249,"depth":569,"text":7244,"children":21609},[21610,21611,21612,21613,21617,21618,21619,21620,21621,21622,21627],{"id":7268,"depth":584,"text":7269},{"id":7301,"depth":584,"text":7302},{"id":7333,"depth":584,"text":7334},{"id":7395,"depth":584,"text":7396,"children":21614},[21615,21616],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":7516,"depth":584,"text":7517},{"id":7576,"depth":584,"text":7577},{"id":7607,"depth":584,"text":7608},{"id":7776,"depth":584,"text":7777},{"id":7880,"depth":584,"text":7881},{"id":7894,"depth":584,"text":7895,"children":21623},[21624,21625,21626],{"id":7898,"depth":595,"text":7899},{"id":7915,"depth":595,"text":7916},{"id":7933,"depth":595,"text":7934},{"id":1703,"depth":584,"text":1704},{},{"title":7244,"description":7984},{"id":7991,"title":7992,"badge":471,"body":21631,"description":8658,"extension":1763,"meta":22180,"navigation":167,"order":669,"path":8660,"section":6,"seo":22181,"stem":8662,"__hash__":8663},{"type":473,"value":21632,"toc":22160},[21633,21635,21639,21641,21643,21647,21649,21659,21661,21663,21665,21667,21673,21679,21681,21687,21689,21693,21821,21823,21875,21877,21881,21901,21903,21905,21907,22061,22063,22065,22067,22072,22082,22086,22088,22096,22100,22104,22106,22108,22114,22126,22128,22136,22138,22148,22150,22154,22156,22158],[476,21634,7992],{"id":7997},[480,21636,8000,21637,8004],{},[484,21638,8003],{},[480,21640,8007],{},[495,21642,8011],{"id":8010},[480,21644,8014,21645,8018],{},[484,21646,8017],{},[480,21648,8021],{},[508,21650,21651,21653,21655,21657],{},[511,21652,8026],{},[511,21654,8029],{},[511,21656,8032],{},[511,21658,8035],{},[480,21660,8038],{},[495,21662,8042],{"id":8041},[480,21664,8045],{},[732,21666,1148],{"id":1147},[480,21668,1154,21669,4929,21671,8054],{},[503,21670,1157],{},[484,21672,2080],{},[480,21674,8057,21675,4946,21677,8063],{},[484,21676,1252],{},[503,21678,8062],{},[732,21680,1265],{"id":1264},[480,21682,1154,21683,8070,21685,792],{},[503,21684,8062],{},[484,21686,1299],{},[495,21688,8076],{"id":8075},[480,21690,8079,21691,8082],{},[503,21692,8062],{},[550,21694,21695],{"className":552,"code":8085,"language":554,"meta":555,"style":555},[503,21696,21697,21705,21713,21721,21729,21737,21743,21753,21761,21769,21779,21787,21795,21805,21813],{"__ignoreMap":555},[559,21698,21699,21701,21703],{"class":561,"line":562},[559,21700,573],{"class":572},[559,21702,577],{"class":576},[559,21704,8096],{"class":580},[559,21706,21707,21709,21711],{"class":561,"line":569},[559,21708,587],{"class":572},[559,21710,577],{"class":576},[559,21712,8105],{"class":580},[559,21714,21715,21717,21719],{"class":561,"line":584},[559,21716,695],{"class":572},[559,21718,577],{"class":576},[559,21720,8114],{"class":580},[559,21722,21723,21725,21727],{"class":561,"line":595},[559,21724,6797],{"class":572},[559,21726,577],{"class":576},[559,21728,8123],{"class":580},[559,21730,21731,21733,21735],{"class":561,"line":607},[559,21732,6807],{"class":572},[559,21734,577],{"class":576},[559,21736,8132],{"class":580},[559,21738,21739,21741],{"class":561,"line":618},[559,21740,1054],{"class":572},[559,21742,657],{"class":576},[559,21744,21745,21747,21749,21751],{"class":561,"line":629},[559,21746,663],{"class":576},[559,21748,5076],{"class":572},[559,21750,577],{"class":576},[559,21752,8149],{"class":580},[559,21754,21755,21757,21759],{"class":561,"line":640},[559,21756,5086],{"class":572},[559,21758,577],{"class":576},[559,21760,5091],{"class":580},[559,21762,21763,21765,21767],{"class":561,"line":651},[559,21764,8162],{"class":572},[559,21766,577],{"class":576},[559,21768,8167],{"class":580},[559,21770,21771,21773,21775,21777],{"class":561,"line":660},[559,21772,663],{"class":576},[559,21774,5076],{"class":572},[559,21776,577],{"class":576},[559,21778,8178],{"class":580},[559,21780,21781,21783,21785],{"class":561,"line":669},[559,21782,5086],{"class":572},[559,21784,577],{"class":576},[559,21786,5111],{"class":580},[559,21788,21789,21791,21793],{"class":561,"line":676},[559,21790,8162],{"class":572},[559,21792,577],{"class":576},[559,21794,8195],{"class":580},[559,21796,21797,21799,21801,21803],{"class":561,"line":684},[559,21798,663],{"class":576},[559,21800,5076],{"class":572},[559,21802,577],{"class":576},[559,21804,8206],{"class":580},[559,21806,21807,21809,21811],{"class":561,"line":692},[559,21808,5086],{"class":572},[559,21810,577],{"class":576},[559,21812,5131],{"class":580},[559,21814,21815,21817,21819],{"class":561,"line":703},[559,21816,8162],{"class":572},[559,21818,577],{"class":576},[559,21820,8223],{"class":580},[480,21822,6845],{},[508,21824,21825,21831,21837,21849,21857,21863],{},[511,21826,21827,8234],{},[484,21828,21829],{},[503,21830,573],{},[511,21832,21833,8241],{},[484,21834,21835],{},[503,21836,587],{},[511,21838,21839,8248,21843,8252,21845,823,21847,792],{},[484,21840,21841],{},[503,21842,695],{},[503,21844,8251],{},[503,21846,8255],{},[503,21848,8258],{},[511,21850,21851,6875,21855,8267],{},[484,21852,21853],{},[503,21854,6797],{},[503,21856,739],{},[511,21858,21859,8274],{},[484,21860,21861],{},[503,21862,6807],{},[511,21864,21865,8281,21869,6280,21871,8286,21873,792],{},[484,21866,21867],{},[503,21868,1054],{},[503,21870,5076],{},[503,21872,5187],{},[503,21874,8289],{},[495,21876,8293],{"id":8292},[480,21878,3692,21879,8298],{},[503,21880,1054],{},[508,21882,21883,21889,21895],{},[511,21884,21885,8307],{},[484,21886,21887],{},[503,21888,50],{},[511,21890,21891,8314],{},[484,21892,21893],{},[503,21894,54],{},[511,21896,21897,8322],{},[484,21898,21899],{},[503,21900,8321],{},[480,21902,8325],{},[495,21904,8329],{"id":8328},[480,21906,8332],{},[550,21908,21909],{"className":552,"code":8335,"language":554,"meta":555,"style":555},[503,21910,21911,21919,21927,21935,21943,21951,21957,21967,21975,21983,21993,22001,22009,22019,22027,22035,22045,22053],{"__ignoreMap":555},[559,21912,21913,21915,21917],{"class":561,"line":562},[559,21914,573],{"class":572},[559,21916,577],{"class":576},[559,21918,8346],{"class":580},[559,21920,21921,21923,21925],{"class":561,"line":569},[559,21922,587],{"class":572},[559,21924,577],{"class":576},[559,21926,8355],{"class":580},[559,21928,21929,21931,21933],{"class":561,"line":584},[559,21930,695],{"class":572},[559,21932,577],{"class":576},[559,21934,8364],{"class":580},[559,21936,21937,21939,21941],{"class":561,"line":595},[559,21938,6797],{"class":572},[559,21940,577],{"class":576},[559,21942,8373],{"class":580},[559,21944,21945,21947,21949],{"class":561,"line":607},[559,21946,6807],{"class":572},[559,21948,577],{"class":576},[559,21950,8382],{"class":580},[559,21952,21953,21955],{"class":561,"line":618},[559,21954,1054],{"class":572},[559,21956,657],{"class":576},[559,21958,21959,21961,21963,21965],{"class":561,"line":629},[559,21960,663],{"class":576},[559,21962,5076],{"class":572},[559,21964,577],{"class":576},[559,21966,8399],{"class":580},[559,21968,21969,21971,21973],{"class":561,"line":640},[559,21970,5086],{"class":572},[559,21972,577],{"class":576},[559,21974,5091],{"class":580},[559,21976,21977,21979,21981],{"class":561,"line":651},[559,21978,8162],{"class":572},[559,21980,577],{"class":576},[559,21982,8167],{"class":580},[559,21984,21985,21987,21989,21991],{"class":561,"line":660},[559,21986,663],{"class":576},[559,21988,5076],{"class":572},[559,21990,577],{"class":576},[559,21992,8426],{"class":580},[559,21994,21995,21997,21999],{"class":561,"line":669},[559,21996,5086],{"class":572},[559,21998,577],{"class":576},[559,22000,5111],{"class":580},[559,22002,22003,22005,22007],{"class":561,"line":676},[559,22004,8162],{"class":572},[559,22006,577],{"class":576},[559,22008,8195],{"class":580},[559,22010,22011,22013,22015,22017],{"class":561,"line":684},[559,22012,663],{"class":576},[559,22014,5076],{"class":572},[559,22016,577],{"class":576},[559,22018,8206],{"class":580},[559,22020,22021,22023,22025],{"class":561,"line":692},[559,22022,5086],{"class":572},[559,22024,577],{"class":576},[559,22026,5131],{"class":580},[559,22028,22029,22031,22033],{"class":561,"line":703},[559,22030,8162],{"class":572},[559,22032,577],{"class":576},[559,22034,8223],{"class":580},[559,22036,22037,22039,22041,22043],{"class":561,"line":714},[559,22038,663],{"class":576},[559,22040,5076],{"class":572},[559,22042,577],{"class":576},[559,22044,8479],{"class":580},[559,22046,22047,22049,22051],{"class":561,"line":725},[559,22048,5086],{"class":572},[559,22050,577],{"class":576},[559,22052,5171],{"class":580},[559,22054,22055,22057,22059],{"class":561,"line":1529},[559,22056,8162],{"class":572},[559,22058,577],{"class":576},[559,22060,8223],{"class":580},[480,22062,8498],{},[495,22064,8502],{"id":8501},[480,22066,8505],{},[550,22068,22070],{"className":22069,"code":8509,"language":1315},[1313],[503,22071,8509],{"__ignoreMap":555},[480,22073,8514,22074,8517,22076,779,22078,4042,22080,8524],{},[503,22075,8062],{},[503,22077,6797],{},[503,22079,6807],{},[503,22081,1054],{},[480,22083,8527,22084,8530],{},[484,22085,1252],{},[495,22087,8534],{"id":8533},[480,22089,8537,22090,8541,22092,8545,22094,8548],{},[503,22091,8540],{},[503,22093,8544],{},[503,22095,8062],{},[480,22097,8551,22098,8554],{},[503,22099,8540],{},[480,22101,8557,22102,8560],{},[503,22103,8062],{},[495,22105,8564],{"id":8563},[732,22107,8568],{"id":8567},[480,22109,3692,22110,8573,22112,8577],{},[503,22111,695],{},[503,22113,8576],{},[550,22115,22116],{"className":552,"code":8580,"language":554,"meta":555,"style":555},[503,22117,22118],{"__ignoreMap":555},[559,22119,22120,22122,22124],{"class":561,"line":562},[559,22121,695],{"class":572},[559,22123,577],{"class":576},[559,22125,8114],{"class":580},[732,22127,8594],{"id":8593},[480,22129,8597,22130,8600,22132,8603,22134,8606],{},[503,22131,8062],{},[503,22133,4308],{},[503,22135,1054],{},[732,22137,8610],{"id":8609},[480,22139,3692,22140,8615,22142,779,22144,5683,22146,8622],{},[503,22141,8289],{},[503,22143,50],{},[503,22145,54],{},[503,22147,8321],{},[495,22149,1704],{"id":1703},[480,22151,1707,22152,8629],{},[484,22153,486],{},[480,22155,8632],{},[480,22157,1714],{},[1716,22159,8637],{},{"title":555,"searchDepth":584,"depth":584,"links":22161},[22162],{"id":7997,"depth":569,"text":7992,"children":22163},[22164,22165,22169,22170,22171,22172,22173,22174,22179],{"id":8010,"depth":584,"text":8011},{"id":8041,"depth":584,"text":8042,"children":22166},[22167,22168],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":8075,"depth":584,"text":8076},{"id":8292,"depth":584,"text":8293},{"id":8328,"depth":584,"text":8329},{"id":8501,"depth":584,"text":8502},{"id":8533,"depth":584,"text":8534},{"id":8563,"depth":584,"text":8564,"children":22175},[22176,22177,22178],{"id":8567,"depth":595,"text":8568},{"id":8593,"depth":595,"text":8594},{"id":8609,"depth":595,"text":8610},{"id":1703,"depth":584,"text":1704},{},{"title":7992,"description":8658},{"id":469,"title":470,"badge":471,"body":22183,"description":1762,"extension":1763,"meta":23105,"navigation":167,"order":676,"path":1765,"section":6,"seo":23106,"stem":1767,"__hash__":1768},{"type":473,"value":22184,"toc":23062},[22185,22187,22191,22193,22195,22197,22201,22215,22217,22219,22225,22227,22349,22351,22353,22357,22361,22363,22365,22369,22371,22375,22379,22381,22393,22397,22399,22401,22403,22405,22409,22411,22417,22421,22423,22429,22433,22435,22443,22447,22449,22451,22455,22457,22461,22467,22471,22473,22477,22479,22485,22501,22503,22505,22521,22523,22529,22537,22539,22545,22577,22579,22583,22591,22593,22595,22615,22617,22621,22629,22631,22635,22643,22645,22647,22717,22723,22725,22749,22751,22755,22760,22762,22778,22780,22782,22800,22802,22814,22816,22818,22836,22838,22850,22852,22854,23050,23052,23054,23058,23060],[476,22186,470],{"id":478},[480,22188,482,22189,487],{},[484,22190,486],{},[480,22192,490],{},[480,22194,493],{},[495,22196,498],{"id":497},[480,22198,501,22199,506],{},[503,22200,505],{},[508,22202,22203,22209],{},[511,22204,22205,516,22207],{},[503,22206,515],{},[503,22208,519],{},[511,22210,22211,516,22213],{},[503,22212,524],{},[503,22214,527],{},[480,22216,530],{},[495,22218,534],{"id":533},[480,22220,537,22221,541,22223,545],{},[503,22222,540],{},[484,22224,544],{},[480,22226,548],{},[550,22228,22229],{"className":552,"code":553,"language":554,"meta":555,"style":555},[503,22230,22231,22235,22243,22251,22259,22267,22275,22283,22291,22297,22303,22309,22315,22321,22329,22337,22345],{"__ignoreMap":555},[559,22232,22233],{"class":561,"line":562},[559,22234,566],{"class":565},[559,22236,22237,22239,22241],{"class":561,"line":569},[559,22238,573],{"class":572},[559,22240,577],{"class":576},[559,22242,581],{"class":580},[559,22244,22245,22247,22249],{"class":561,"line":584},[559,22246,587],{"class":572},[559,22248,577],{"class":576},[559,22250,592],{"class":580},[559,22252,22253,22255,22257],{"class":561,"line":595},[559,22254,598],{"class":572},[559,22256,577],{"class":576},[559,22258,604],{"class":603},[559,22260,22261,22263,22265],{"class":561,"line":607},[559,22262,610],{"class":572},[559,22264,577],{"class":576},[559,22266,615],{"class":580},[559,22268,22269,22271,22273],{"class":561,"line":618},[559,22270,621],{"class":572},[559,22272,577],{"class":576},[559,22274,626],{"class":580},[559,22276,22277,22279,22281],{"class":561,"line":629},[559,22278,632],{"class":572},[559,22280,577],{"class":576},[559,22282,637],{"class":580},[559,22284,22285,22287,22289],{"class":561,"line":640},[559,22286,643],{"class":572},[559,22288,577],{"class":576},[559,22290,648],{"class":580},[559,22292,22293,22295],{"class":561,"line":651},[559,22294,654],{"class":572},[559,22296,657],{"class":576},[559,22298,22299,22301],{"class":561,"line":660},[559,22300,663],{"class":576},[559,22302,666],{"class":580},[559,22304,22305,22307],{"class":561,"line":669},[559,22306,663],{"class":576},[559,22308,615],{"class":580},[559,22310,22311,22313],{"class":561,"line":676},[559,22312,663],{"class":576},[559,22314,681],{"class":580},[559,22316,22317,22319],{"class":561,"line":684},[559,22318,663],{"class":576},[559,22320,689],{"class":580},[559,22322,22323,22325,22327],{"class":561,"line":692},[559,22324,695],{"class":572},[559,22326,577],{"class":576},[559,22328,700],{"class":580},[559,22330,22331,22333,22335],{"class":561,"line":703},[559,22332,706],{"class":572},[559,22334,577],{"class":576},[559,22336,711],{"class":580},[559,22338,22339,22341,22343],{"class":561,"line":714},[559,22340,717],{"class":572},[559,22342,577],{"class":576},[559,22344,722],{"class":580},[559,22346,22347],{"class":561,"line":725},[559,22348,566],{"class":565},[480,22350,730],{},[732,22352,573],{"id":573},[480,22354,736,22355,740],{},[503,22356,739],{},[480,22358,22359,746],{},[484,22360,745],{},[732,22362,587],{"id":587},[480,22364,751],{},[480,22366,22367,756],{},[484,22368,745],{},[732,22370,598],{"id":598},[480,22372,761,22373,765],{},[503,22374,764],{},[480,22376,22377,770],{},[484,22378,745],{},[732,22380,610],{"id":610},[480,22382,775,22383,779,22385,779,22387,779,22389,779,22391,792],{},[503,22384,778],{},[503,22386,782],{},[503,22388,785],{},[503,22390,788],{},[503,22392,791],{},[480,22394,22395,797],{},[484,22396,745],{},[732,22398,621],{"id":621},[480,22400,802],{},[732,22402,632],{"id":805},[480,22404,808],{},[480,22406,22407,813],{},[484,22408,745],{},[732,22410,643],{"id":816},[480,22412,819,22413,823,22415,792],{},[503,22414,822],{},[503,22416,826],{},[480,22418,22419,831],{},[484,22420,745],{},[732,22422,654],{"id":654},[480,22424,836,22425,839,22427,792],{},[503,22426,73],{},[503,22428,842],{},[480,22430,22431,847],{},[484,22432,745],{},[732,22434,695],{"id":695},[480,22436,852,22437,779,22439,779,22441,792],{},[503,22438,855],{},[503,22440,858],{},[503,22442,788],{},[480,22444,22445,865],{},[484,22446,745],{},[732,22448,706],{"id":706},[480,22450,870],{},[480,22452,22453,875],{},[484,22454,745],{},[732,22456,717],{"id":878},[480,22458,881,22459,885],{},[503,22460,884],{},[480,22462,888,22463,892,22465,896],{},[503,22464,891],{},[503,22466,895],{},[480,22468,22469,901],{},[484,22470,745],{},[495,22472,905],{"id":904},[480,22474,908,22475,912],{},[484,22476,911],{},[732,22478,916],{"id":915},[480,22480,919,22481,923,22483,927],{},[503,22482,922],{},[503,22484,926],{},[550,22486,22487],{"className":930,"code":931,"language":932,"meta":555,"style":555},[503,22488,22489,22493,22497],{"__ignoreMap":555},[559,22490,22491],{"class":561,"line":562},[559,22492,939],{},[559,22494,22495],{"class":561,"line":569},[559,22496,944],{"emptyLinePlaceholder":167},[559,22498,22499],{"class":561,"line":584},[559,22500,949],{},[732,22502,953],{"id":952},[480,22504,956],{},[550,22506,22507],{"className":930,"code":959,"language":932,"meta":555,"style":555},[503,22508,22509,22513,22517],{"__ignoreMap":555},[559,22510,22511],{"class":561,"line":562},[559,22512,966],{},[559,22514,22515],{"class":561,"line":569},[559,22516,944],{"emptyLinePlaceholder":167},[559,22518,22519],{"class":561,"line":584},[559,22520,975],{},[732,22522,979],{"id":978},[480,22524,919,22525,985,22527,989],{},[503,22526,984],{},[503,22528,988],{},[550,22530,22531],{"className":930,"code":992,"language":932,"meta":555,"style":555},[503,22532,22533],{"__ignoreMap":555},[559,22534,22535],{"class":561,"line":562},[559,22536,992],{},[732,22538,1002],{"id":1001},[480,22540,919,22541,1008,22543,1012],{},[503,22542,1007],{},[503,22544,1011],{},[550,22546,22547],{"className":930,"code":1015,"language":932,"meta":555,"style":555},[503,22548,22549,22553,22557,22561,22565,22569,22573],{"__ignoreMap":555},[559,22550,22551],{"class":561,"line":562},[559,22552,1022],{},[559,22554,22555],{"class":561,"line":569},[559,22556,1027],{},[559,22558,22559],{"class":561,"line":584},[559,22560,1032],{},[559,22562,22563],{"class":561,"line":595},[559,22564,944],{"emptyLinePlaceholder":167},[559,22566,22567],{"class":561,"line":607},[559,22568,1041],{},[559,22570,22571],{"class":561,"line":618},[559,22572,1046],{},[559,22574,22575],{"class":561,"line":629},[559,22576,1051],{},[732,22578,1055],{"id":1054},[480,22580,919,22581,1061],{},[503,22582,1060],{},[550,22584,22585],{"className":930,"code":1064,"language":932,"meta":555,"style":555},[503,22586,22587],{"__ignoreMap":555},[559,22588,22589],{"class":561,"line":562},[559,22590,1064],{},[732,22592,1074],{"id":1073},[480,22594,1077],{},[550,22596,22597],{"className":930,"code":1080,"language":932,"meta":555,"style":555},[503,22598,22599,22603,22607,22611],{"__ignoreMap":555},[559,22600,22601],{"class":561,"line":562},[559,22602,1087],{},[559,22604,22605],{"class":561,"line":569},[559,22606,1092],{},[559,22608,22609],{"class":561,"line":584},[559,22610,1097],{},[559,22612,22613],{"class":561,"line":595},[559,22614,1102],{},[732,22616,1106],{"id":1105},[480,22618,919,22619,1112],{},[503,22620,1111],{},[550,22622,22623],{"className":930,"code":1115,"language":932,"meta":555,"style":555},[503,22624,22625],{"__ignoreMap":555},[559,22626,22627],{"class":561,"line":562},[559,22628,1115],{},[732,22630,1125],{"id":1124},[480,22632,919,22633,1131],{},[503,22634,1130],{},[550,22636,22637],{"className":930,"code":1134,"language":932,"meta":555,"style":555},[503,22638,22639],{"__ignoreMap":555},[559,22640,22641],{"class":561,"line":562},[559,22642,1134],{},[495,22644,1144],{"id":1143},[732,22646,1148],{"id":1147},[1150,22648,22649,22653,22657,22661,22713],{},[511,22650,1154,22651,792],{},[503,22652,1157],{},[511,22654,1160,22655,792],{},[484,22656,1163],{},[511,22658,1166,22659,1170],{},[484,22660,1169],{},[511,22662,1173,22663],{},[508,22664,22665,22669,22673,22677,22681,22685,22689,22693,22697,22701,22705,22709],{},[511,22666,22667,1181],{},[484,22668,1180],{},[511,22670,22671,1187],{},[484,22672,1186],{},[511,22674,22675,1193],{},[484,22676,1192],{},[511,22678,22679,1199],{},[484,22680,1198],{},[511,22682,22683,1205],{},[484,22684,1204],{},[511,22686,22687,1211],{},[484,22688,1210],{},[511,22690,22691,1217],{},[484,22692,1216],{},[511,22694,22695,1223],{},[484,22696,1222],{},[511,22698,22699,1229],{},[484,22700,1228],{},[511,22702,22703,1235],{},[484,22704,1234],{},[511,22706,22707,1241],{},[484,22708,1240],{},[511,22710,22711,1247],{},[484,22712,1246],{},[511,22714,1166,22715,1170],{},[484,22716,1252],{},[480,22718,1255,22719,1258,22721,792],{},[503,22720,505],{},[503,22722,1261],{},[732,22724,1265],{"id":1264},[1150,22726,22727,22731,22735,22739,22741,22743,22745],{},[511,22728,1270,22729,1273],{},[503,22730,505],{},[511,22732,1276,22733,792],{},[484,22734,1279],{},[511,22736,1282,22737,792],{},[503,22738,1261],{},[511,22740,1287],{},[511,22742,1290],{},[511,22744,1293],{},[511,22746,1296,22747,792],{},[484,22748,1299],{},[495,22750,1303],{"id":1302},[480,22752,1306,22753,1309],{},[503,22754,31],{},[550,22756,22758],{"className":22757,"code":1314,"language":1315},[1313],[503,22759,1314],{"__ignoreMap":555},[480,22761,1320],{},[508,22763,22764,22766,22768,22770,22772,22774],{},[511,22765,1325],{},[511,22767,1328],{},[511,22769,1331],{},[511,22771,1334],{},[511,22773,1337],{},[511,22775,1340,22776,1343],{},[503,22777,717],{},[495,22779,1347],{"id":1346},[732,22781,1148],{"id":1350},[1150,22783,22784,22788,22792,22794,22796],{},[511,22785,1154,22786,792],{},[503,22787,1157],{},[511,22789,1160,22790,792],{},[484,22791,1163],{},[511,22793,1363],{},[511,22795,1366],{},[511,22797,1166,22798,792],{},[484,22799,1252],{},[732,22801,1265],{"id":1373},[1150,22803,22804,22808,22810],{},[511,22805,1378,22806,792],{},[503,22807,505],{},[511,22809,1383],{},[511,22811,1296,22812,792],{},[484,22813,1299],{},[495,22815,1391],{"id":1390},[732,22817,1148],{"id":1394},[1150,22819,22820,22824,22828,22830,22834],{},[511,22821,1154,22822,792],{},[503,22823,1157],{},[511,22825,1160,22826,792],{},[484,22827,1163],{},[511,22829,1407],{},[511,22831,1410,22832,792],{},[484,22833,1413],{},[511,22835,1416],{},[732,22837,1265],{"id":1419},[1150,22839,22840,22844,22848],{},[511,22841,1270,22842,1273],{},[503,22843,505],{},[511,22845,1428,22846,792],{},[484,22847,1413],{},[511,22849,1416],{},[495,22851,1436],{"id":1435},[480,22853,1439],{},[550,22855,22856],{"className":930,"code":1442,"language":932,"meta":555,"style":555},[503,22857,22858,22862,22866,22870,22874,22878,22882,22886,22890,22894,22898,22902,22906,22910,22914,22918,22922,22926,22930,22934,22938,22942,22946,22950,22954,22958,22962,22966,22970,22974,22978,22982,22986,22990,22994,22998,23002,23006,23010,23014,23018,23022,23026,23030,23034,23038,23042,23046],{"__ignoreMap":555},[559,22859,22860],{"class":561,"line":562},[559,22861,566],{},[559,22863,22864],{"class":561,"line":569},[559,22865,1453],{},[559,22867,22868],{"class":561,"line":584},[559,22869,1458],{},[559,22871,22872],{"class":561,"line":595},[559,22873,1463],{},[559,22875,22876],{"class":561,"line":607},[559,22877,1468],{},[559,22879,22880],{"class":561,"line":618},[559,22881,1473],{},[559,22883,22884],{"class":561,"line":629},[559,22885,1478],{},[559,22887,22888],{"class":561,"line":640},[559,22889,1483],{},[559,22891,22892],{"class":561,"line":651},[559,22893,1488],{},[559,22895,22896],{"class":561,"line":660},[559,22897,1493],{},[559,22899,22900],{"class":561,"line":669},[559,22901,1498],{},[559,22903,22904],{"class":561,"line":676},[559,22905,1503],{},[559,22907,22908],{"class":561,"line":684},[559,22909,1508],{},[559,22911,22912],{"class":561,"line":692},[559,22913,1513],{},[559,22915,22916],{"class":561,"line":703},[559,22917,1518],{},[559,22919,22920],{"class":561,"line":714},[559,22921,566],{},[559,22923,22924],{"class":561,"line":725},[559,22925,944],{"emptyLinePlaceholder":167},[559,22927,22928],{"class":561,"line":1529},[559,22929,1532],{},[559,22931,22932],{"class":561,"line":1535},[559,22933,944],{"emptyLinePlaceholder":167},[559,22935,22936],{"class":561,"line":1540},[559,22937,1543],{},[559,22939,22940],{"class":561,"line":1546},[559,22941,944],{"emptyLinePlaceholder":167},[559,22943,22944],{"class":561,"line":1551},[559,22945,1554],{},[559,22947,22948],{"class":561,"line":1557},[559,22949,944],{"emptyLinePlaceholder":167},[559,22951,22952],{"class":561,"line":1562},[559,22953,1565],{},[559,22955,22956],{"class":561,"line":1568},[559,22957,944],{"emptyLinePlaceholder":167},[559,22959,22960],{"class":561,"line":1573},[559,22961,1576],{},[559,22963,22964],{"class":561,"line":1579},[559,22965,944],{"emptyLinePlaceholder":167},[559,22967,22968],{"class":561,"line":1584},[559,22969,1587],{},[559,22971,22972],{"class":561,"line":1590},[559,22973,944],{"emptyLinePlaceholder":167},[559,22975,22976],{"class":561,"line":1595},[559,22977,1598],{},[559,22979,22980],{"class":561,"line":1601},[559,22981,944],{"emptyLinePlaceholder":167},[559,22983,22984],{"class":561,"line":1606},[559,22985,1609],{},[559,22987,22988],{"class":561,"line":1612},[559,22989,944],{"emptyLinePlaceholder":167},[559,22991,22992],{"class":561,"line":1617},[559,22993,1620],{},[559,22995,22996],{"class":561,"line":1623},[559,22997,944],{"emptyLinePlaceholder":167},[559,22999,23000],{"class":561,"line":1628},[559,23001,1631],{},[559,23003,23004],{"class":561,"line":1634},[559,23005,944],{"emptyLinePlaceholder":167},[559,23007,23008],{"class":561,"line":1639},[559,23009,1642],{},[559,23011,23012],{"class":561,"line":1645},[559,23013,944],{"emptyLinePlaceholder":167},[559,23015,23016],{"class":561,"line":1650},[559,23017,1653],{},[559,23019,23020],{"class":561,"line":1656},[559,23021,944],{"emptyLinePlaceholder":167},[559,23023,23024],{"class":561,"line":1661},[559,23025,1664],{},[559,23027,23028],{"class":561,"line":1667},[559,23029,944],{"emptyLinePlaceholder":167},[559,23031,23032],{"class":561,"line":1672},[559,23033,1675],{},[559,23035,23036],{"class":561,"line":1678},[559,23037,944],{"emptyLinePlaceholder":167},[559,23039,23040],{"class":561,"line":1683},[559,23041,1686],{},[559,23043,23044],{"class":561,"line":1689},[559,23045,944],{"emptyLinePlaceholder":167},[559,23047,23048],{"class":561,"line":1694},[559,23049,1697],{},[480,23051,1700],{},[495,23053,1704],{"id":1703},[480,23055,1707,23056,1711],{},[484,23057,1710],{},[480,23059,1714],{},[1716,23061,1718],{},{"title":555,"searchDepth":584,"depth":584,"links":23063},[23064],{"id":478,"depth":569,"text":470,"children":23065},[23066,23067,23080,23090,23094,23095,23099,23103,23104],{"id":497,"depth":584,"text":498},{"id":533,"depth":584,"text":534,"children":23068},[23069,23070,23071,23072,23073,23074,23075,23076,23077,23078,23079],{"id":573,"depth":595,"text":573},{"id":587,"depth":595,"text":587},{"id":598,"depth":595,"text":598},{"id":610,"depth":595,"text":610},{"id":621,"depth":595,"text":621},{"id":805,"depth":595,"text":632},{"id":816,"depth":595,"text":643},{"id":654,"depth":595,"text":654},{"id":695,"depth":595,"text":695},{"id":706,"depth":595,"text":706},{"id":878,"depth":595,"text":717},{"id":904,"depth":584,"text":905,"children":23081},[23082,23083,23084,23085,23086,23087,23088,23089],{"id":915,"depth":595,"text":916},{"id":952,"depth":595,"text":953},{"id":978,"depth":595,"text":979},{"id":1001,"depth":595,"text":1002},{"id":1054,"depth":595,"text":1055},{"id":1073,"depth":595,"text":1074},{"id":1105,"depth":595,"text":1106},{"id":1124,"depth":595,"text":1125},{"id":1143,"depth":584,"text":1144,"children":23091},[23092,23093],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":1302,"depth":584,"text":1303},{"id":1346,"depth":584,"text":1347,"children":23096},[23097,23098],{"id":1350,"depth":595,"text":1148},{"id":1373,"depth":595,"text":1265},{"id":1390,"depth":584,"text":1391,"children":23100},[23101,23102],{"id":1394,"depth":595,"text":1148},{"id":1419,"depth":595,"text":1265},{"id":1435,"depth":584,"text":1436},{"id":1703,"depth":584,"text":1704},{},{"title":470,"description":1762},{"id":9590,"title":9591,"badge":471,"body":23108,"description":10900,"extension":1763,"meta":24199,"navigation":167,"order":684,"path":10902,"section":6,"seo":24200,"stem":10904,"__hash__":10905},{"type":473,"value":23109,"toc":24161},[23110,23112,23116,23120,23122,23124,23128,23142,23144,23146,23150,23152,23456,23458,23460,23462,23466,23468,23476,23484,23486,23488,23496,23498,23506,23514,23516,23518,23522,23524,23526,23530,23532,23534,23552,23554,23556,23558,23562,23564,23572,23576,23578,23580,23584,23586,23592,23596,23598,23602,23606,23608,23610,23614,23616,23624,23628,23630,23632,23636,23638,23640,23644,23708,23710,23712,23714,23800,23804,23806,23830,23832,23836,23841,23843,23859,23861,23863,23881,23883,23895,23897,23899,23917,23919,23931,23933,23935,24151,24153,24157,24159],[476,23111,9591],{"id":9596},[480,23113,9599,23114,9602],{},[484,23115,1710],{},[480,23117,9605,23118,9609],{},[484,23119,9608],{},[480,23121,9612],{},[495,23123,9616],{"id":9615},[480,23125,9619,23126,9622],{},[503,23127,4412],{},[508,23129,23130,23136],{},[511,23131,23132,516,23134],{},[503,23133,9629],{},[503,23135,232],{},[511,23137,23138,516,23140],{},[503,23139,9636],{},[503,23141,234],{},[480,23143,9641],{},[495,23145,9645],{"id":9644},[480,23147,9648,23148,9651],{},[503,23149,540],{},[480,23151,9654],{},[550,23153,23154],{"className":552,"code":9657,"language":554,"meta":555,"style":555},[503,23155,23156,23160,23168,23176,23184,23192,23200,23208,23216,23224,23230,23240,23248,23256,23266,23274,23282,23288,23294,23300,23306,23312,23318,23324,23330,23340,23348,23358,23366,23376,23384,23394,23402,23412,23420,23428,23436,23444,23452],{"__ignoreMap":555},[559,23157,23158],{"class":561,"line":562},[559,23159,566],{"class":565},[559,23161,23162,23164,23166],{"class":561,"line":569},[559,23163,573],{"class":572},[559,23165,577],{"class":576},[559,23167,9672],{"class":580},[559,23169,23170,23172,23174],{"class":561,"line":584},[559,23171,695],{"class":572},[559,23173,577],{"class":576},[559,23175,5903],{"class":580},[559,23177,23178,23180,23182],{"class":561,"line":595},[559,23179,6020],{"class":572},[559,23181,577],{"class":576},[559,23183,5913],{"class":603},[559,23185,23186,23188,23190],{"class":561,"line":607},[559,23187,6028],{"class":572},[559,23189,577],{"class":576},[559,23191,5923],{"class":580},[559,23193,23194,23196,23198],{"class":561,"line":618},[559,23195,587],{"class":572},[559,23197,577],{"class":576},[559,23199,9705],{"class":580},[559,23201,23202,23204,23206],{"class":561,"line":629},[559,23203,6036],{"class":572},[559,23205,577],{"class":576},[559,23207,9714],{"class":580},[559,23209,23210,23212,23214],{"class":561,"line":640},[559,23211,5647],{"class":572},[559,23213,577],{"class":576},[559,23215,9723],{"class":580},[559,23217,23218,23220,23222],{"class":561,"line":651},[559,23219,706],{"class":572},[559,23221,577],{"class":576},[559,23223,9732],{"class":580},[559,23225,23226,23228],{"class":561,"line":660},[559,23227,9737],{"class":572},[559,23229,657],{"class":576},[559,23231,23232,23234,23236,23238],{"class":561,"line":669},[559,23233,663],{"class":576},[559,23235,5477],{"class":572},[559,23237,577],{"class":576},[559,23239,9750],{"class":580},[559,23241,23242,23244,23246],{"class":561,"line":676},[559,23243,9755],{"class":572},[559,23245,577],{"class":576},[559,23247,9760],{"class":580},[559,23249,23250,23252,23254],{"class":561,"line":684},[559,23251,9765],{"class":572},[559,23253,577],{"class":576},[559,23255,9770],{"class":580},[559,23257,23258,23260,23262,23264],{"class":561,"line":692},[559,23259,663],{"class":576},[559,23261,5477],{"class":572},[559,23263,577],{"class":576},[559,23265,9781],{"class":580},[559,23267,23268,23270,23272],{"class":561,"line":703},[559,23269,9755],{"class":572},[559,23271,577],{"class":576},[559,23273,9790],{"class":580},[559,23275,23276,23278,23280],{"class":561,"line":714},[559,23277,9765],{"class":572},[559,23279,577],{"class":576},[559,23281,9799],{"class":580},[559,23283,23284,23286],{"class":561,"line":725},[559,23285,5594],{"class":572},[559,23287,657],{"class":576},[559,23289,23290,23292],{"class":561,"line":1529},[559,23291,663],{"class":576},[559,23293,5958],{"class":580},[559,23295,23296,23298],{"class":561,"line":1535},[559,23297,663],{"class":576},[559,23299,9818],{"class":580},[559,23301,23302,23304],{"class":561,"line":1540},[559,23303,663],{"class":576},[559,23305,9825],{"class":580},[559,23307,23308,23310],{"class":561,"line":1546},[559,23309,663],{"class":576},[559,23311,9832],{"class":580},[559,23313,23314,23316],{"class":561,"line":1551},[559,23315,663],{"class":576},[559,23317,9839],{"class":580},[559,23319,23320,23322],{"class":561,"line":1557},[559,23321,663],{"class":576},[559,23323,9846],{"class":580},[559,23325,23326,23328],{"class":561,"line":1562},[559,23327,9851],{"class":572},[559,23329,657],{"class":576},[559,23331,23332,23334,23336,23338],{"class":561,"line":1568},[559,23333,663],{"class":576},[559,23335,5076],{"class":572},[559,23337,577],{"class":576},[559,23339,9864],{"class":580},[559,23341,23342,23344,23346],{"class":561,"line":1573},[559,23343,9869],{"class":572},[559,23345,577],{"class":576},[559,23347,9874],{"class":580},[559,23349,23350,23352,23354,23356],{"class":561,"line":1579},[559,23351,663],{"class":576},[559,23353,5076],{"class":572},[559,23355,577],{"class":576},[559,23357,9885],{"class":580},[559,23359,23360,23362,23364],{"class":561,"line":1584},[559,23361,9869],{"class":572},[559,23363,577],{"class":576},[559,23365,9894],{"class":580},[559,23367,23368,23370,23372,23374],{"class":561,"line":1590},[559,23369,663],{"class":576},[559,23371,5076],{"class":572},[559,23373,577],{"class":576},[559,23375,9905],{"class":580},[559,23377,23378,23380,23382],{"class":561,"line":1595},[559,23379,9869],{"class":572},[559,23381,577],{"class":576},[559,23383,5965],{"class":580},[559,23385,23386,23388,23390,23392],{"class":561,"line":1601},[559,23387,663],{"class":576},[559,23389,5076],{"class":572},[559,23391,577],{"class":576},[559,23393,9924],{"class":580},[559,23395,23396,23398,23400],{"class":561,"line":1606},[559,23397,9869],{"class":572},[559,23399,577],{"class":576},[559,23401,9933],{"class":580},[559,23403,23404,23406,23408,23410],{"class":561,"line":1612},[559,23405,663],{"class":576},[559,23407,5076],{"class":572},[559,23409,577],{"class":576},[559,23411,9944],{"class":580},[559,23413,23414,23416,23418],{"class":561,"line":1617},[559,23415,9869],{"class":572},[559,23417,577],{"class":576},[559,23419,9953],{"class":580},[559,23421,23422,23424,23426],{"class":561,"line":1623},[559,23423,6044],{"class":572},[559,23425,577],{"class":576},[559,23427,5943],{"class":603},[559,23429,23430,23432,23434],{"class":561,"line":1628},[559,23431,7070],{"class":572},[559,23433,577],{"class":576},[559,23435,9970],{"class":603},[559,23437,23438,23440,23442],{"class":561,"line":1634},[559,23439,9975],{"class":572},[559,23441,577],{"class":576},[559,23443,5975],{"class":580},[559,23445,23446,23448,23450],{"class":561,"line":1639},[559,23447,9984],{"class":572},[559,23449,577],{"class":576},[559,23451,5995],{"class":580},[559,23453,23454],{"class":561,"line":1645},[559,23455,566],{"class":565},[480,23457,730],{},[732,23459,573],{"id":573},[480,23461,9999],{},[480,23463,23464,10004],{},[484,23465,745],{},[732,23467,695],{"id":695},[480,23469,10009,23470,779,23472,779,23474,792],{},[503,23471,149],{},[503,23473,145],{},[503,23475,177],{},[480,23477,23478,10020,23480,10023,23482,792],{},[484,23479,745],{},[503,23481,6044],{},[503,23483,3451],{},[732,23485,6020],{"id":6020},[480,23487,10030],{},[480,23489,23490,10035,23492,10039,23494,10043],{},[484,23491,745],{},[503,23493,10038],{},[503,23495,10042],{},[732,23497,6028],{"id":10046},[480,23499,10049,23500,779,23502,779,23504,792],{},[503,23501,151],{},[503,23503,179],{},[503,23505,10056],{},[480,23507,23508,10061,23510,10064,23512,792],{},[484,23509,745],{},[503,23511,151],{},[503,23513,179],{},[732,23515,587],{"id":587},[480,23517,10071],{},[480,23519,23520,10076],{},[484,23521,745],{},[732,23523,6036],{"id":6036},[480,23525,10081],{},[480,23527,23528,10086],{},[484,23529,745],{},[732,23531,5647],{"id":5647},[480,23533,10091],{},[508,23535,23536,23540,23544,23548],{},[511,23537,23538],{},[503,23539,10098],{},[511,23541,23542],{},[503,23543,10103],{},[511,23545,23546],{},[503,23547,503],{},[511,23549,23550],{},[503,23551,10112],{},[480,23553,10115],{},[732,23555,706],{"id":706},[480,23557,10120],{},[480,23559,23560,10125],{},[484,23561,745],{},[732,23563,9737],{"id":9737},[480,23565,10130,23566,10133,23568,5689,23570,10138],{},[503,23567,5477],{},[503,23569,573],{},[503,23571,5692],{},[480,23573,23574,10143],{},[484,23575,745],{},[732,23577,5594],{"id":5594},[480,23579,10148],{},[480,23581,23582,10153],{},[484,23583,745],{},[732,23585,9851],{"id":9851},[480,23587,10158,23588,10161,23590,10165],{},[503,23589,5076],{},[503,23591,10164],{},[480,23593,23594,10170],{},[484,23595,745],{},[732,23597,6044],{"id":6044},[480,23599,10175,23600,10178],{},[503,23601,3451],{},[480,23603,23604,10183],{},[484,23605,745],{},[732,23607,7070],{"id":7070},[480,23609,10188],{},[480,23611,23612,10193],{},[484,23613,745],{},[732,23615,9975],{"id":10196},[480,23617,10199,23618,779,23620,779,23622,792],{},[503,23619,161],{},[503,23621,188],{},[503,23623,10206],{},[480,23625,23626,10211],{},[484,23627,745],{},[732,23629,9984],{"id":10214},[480,23631,10217],{},[480,23633,23634,10222],{},[484,23635,745],{},[495,23637,905],{"id":904},[480,23639,10227],{},[480,23641,10230,23642,3075],{},[503,23643,7137],{},[550,23645,23646],{"className":930,"code":10235,"language":932,"meta":555,"style":555},[503,23647,23648,23652,23656,23660,23664,23668,23672,23676,23680,23684,23688,23692,23696,23700,23704],{"__ignoreMap":555},[559,23649,23650],{"class":561,"line":562},[559,23651,10242],{},[559,23653,23654],{"class":561,"line":569},[559,23655,944],{"emptyLinePlaceholder":167},[559,23657,23658],{"class":561,"line":584},[559,23659,10251],{},[559,23661,23662],{"class":561,"line":595},[559,23663,944],{"emptyLinePlaceholder":167},[559,23665,23666],{"class":561,"line":607},[559,23667,10260],{},[559,23669,23670],{"class":561,"line":618},[559,23671,944],{"emptyLinePlaceholder":167},[559,23673,23674],{"class":561,"line":629},[559,23675,10269],{},[559,23677,23678],{"class":561,"line":640},[559,23679,944],{"emptyLinePlaceholder":167},[559,23681,23682],{"class":561,"line":651},[559,23683,10278],{},[559,23685,23686],{"class":561,"line":660},[559,23687,10283],{},[559,23689,23690],{"class":561,"line":669},[559,23691,10288],{},[559,23693,23694],{"class":561,"line":676},[559,23695,944],{"emptyLinePlaceholder":167},[559,23697,23698],{"class":561,"line":684},[559,23699,10297],{},[559,23701,23702],{"class":561,"line":692},[559,23703,944],{"emptyLinePlaceholder":167},[559,23705,23706],{"class":561,"line":703},[559,23707,10306],{},[480,23709,10309],{},[495,23711,10313],{"id":10312},[732,23713,1148],{"id":1147},[1150,23715,23716,23720,23724,23728,23796],{},[511,23717,1154,23718,792],{},[503,23719,1157],{},[511,23721,1160,23722,792],{},[484,23723,27],{},[511,23725,1166,23726,1170],{},[484,23727,10330],{},[511,23729,1173,23730],{},[508,23731,23732,23736,23740,23744,23748,23752,23756,23760,23764,23768,23772,23776,23780,23784,23788,23792],{},[511,23733,23734,10339],{},[484,23735,1180],{},[511,23737,23738,1229],{},[484,23739,1228],{},[511,23741,23742,6021],{},[484,23743,10348],{},[511,23745,23746,10354],{},[484,23747,10353],{},[511,23749,23750,10359],{},[484,23751,1186],{},[511,23753,23754,10365],{},[484,23755,10364],{},[511,23757,23758,10371],{},[484,23759,10370],{},[511,23761,23762,1235],{},[484,23763,1234],{},[511,23765,23766,10381],{},[484,23767,10380],{},[511,23769,23770,10387],{},[484,23771,10386],{},[511,23773,23774,10393],{},[484,23775,10392],{},[511,23777,23778,10399],{},[484,23779,10398],{},[511,23781,23782,6021],{},[484,23783,10404],{},[511,23785,23786,6060],{},[484,23787,10409],{},[511,23789,23790,10415],{},[484,23791,10414],{},[511,23793,23794,10420],{},[484,23795,1246],{},[511,23797,1166,23798,1170],{},[484,23799,1252],{},[480,23801,1255,23802,10429],{},[503,23803,4412],{},[732,23805,1265],{"id":1264},[1150,23807,23808,23812,23816,23820,23822,23824,23826],{},[511,23809,1270,23810,1273],{},[503,23811,4412],{},[511,23813,1276,23814,792],{},[484,23815,1279],{},[511,23817,1282,23818,792],{},[503,23819,10446],{},[511,23821,1287],{},[511,23823,1290],{},[511,23825,1293],{},[511,23827,1296,23828,792],{},[484,23829,1299],{},[495,23831,10460],{"id":10459},[480,23833,10463,23834,10466],{},[503,23835,28],{},[550,23837,23839],{"className":23838,"code":10470,"language":1315},[1313],[503,23840,10470],{"__ignoreMap":555},[480,23842,10475],{},[508,23844,23845,23847,23849,23851,23853,23855,23857],{},[511,23846,10480],{},[511,23848,10483],{},[511,23850,10486],{},[511,23852,10489],{},[511,23854,10492],{},[511,23856,10495],{},[511,23858,10498],{},[495,23860,10502],{"id":10501},[732,23862,1148],{"id":1350},[1150,23864,23865,23869,23873,23875,23877],{},[511,23866,1154,23867,792],{},[503,23868,1157],{},[511,23870,1160,23871,792],{},[484,23872,27],{},[511,23874,10517],{},[511,23876,1366],{},[511,23878,1166,23879,792],{},[484,23880,1252],{},[732,23882,1265],{"id":1373},[1150,23884,23885,23889,23891],{},[511,23886,10530,23887,792],{},[503,23888,4412],{},[511,23890,1383],{},[511,23892,1296,23893,792],{},[484,23894,1299],{},[495,23896,10542],{"id":10541},[732,23898,1148],{"id":1394},[1150,23900,23901,23905,23909,23911,23915],{},[511,23902,1154,23903,792],{},[503,23904,1157],{},[511,23906,1160,23907,792],{},[484,23908,27],{},[511,23910,10557],{},[511,23912,1410,23913,792],{},[484,23914,1413],{},[511,23916,1416],{},[732,23918,1265],{"id":1419},[1150,23920,23921,23925,23929],{},[511,23922,1270,23923,1273],{},[503,23924,4412],{},[511,23926,10574,23927,792],{},[484,23928,1413],{},[511,23930,1416],{},[495,23932,1436],{"id":1435},[480,23934,10583],{},[550,23936,23937],{"className":930,"code":10586,"language":932,"meta":555,"style":555},[503,23938,23939,23943,23947,23951,23955,23959,23963,23967,23971,23975,23979,23983,23987,23991,23995,23999,24003,24007,24011,24015,24019,24023,24027,24031,24035,24039,24043,24047,24051,24055,24059,24063,24067,24071,24075,24079,24083,24087,24091,24095,24099,24103,24107,24111,24115,24119,24123,24127,24131,24135,24139,24143,24147],{"__ignoreMap":555},[559,23940,23941],{"class":561,"line":562},[559,23942,566],{},[559,23944,23945],{"class":561,"line":569},[559,23946,10597],{},[559,23948,23949],{"class":561,"line":584},[559,23950,10602],{},[559,23952,23953],{"class":561,"line":595},[559,23954,10607],{},[559,23956,23957],{"class":561,"line":607},[559,23958,10612],{},[559,23960,23961],{"class":561,"line":618},[559,23962,10617],{},[559,23964,23965],{"class":561,"line":629},[559,23966,10622],{},[559,23968,23969],{"class":561,"line":640},[559,23970,10627],{},[559,23972,23973],{"class":561,"line":651},[559,23974,10632],{},[559,23976,23977],{"class":561,"line":660},[559,23978,10637],{},[559,23980,23981],{"class":561,"line":669},[559,23982,10642],{},[559,23984,23985],{"class":561,"line":676},[559,23986,10647],{},[559,23988,23989],{"class":561,"line":684},[559,23990,10652],{},[559,23992,23993],{"class":561,"line":692},[559,23994,10657],{},[559,23996,23997],{"class":561,"line":703},[559,23998,10662],{},[559,24000,24001],{"class":561,"line":714},[559,24002,10667],{},[559,24004,24005],{"class":561,"line":725},[559,24006,10672],{},[559,24008,24009],{"class":561,"line":1529},[559,24010,10677],{},[559,24012,24013],{"class":561,"line":1535},[559,24014,10682],{},[559,24016,24017],{"class":561,"line":1540},[559,24018,10687],{},[559,24020,24021],{"class":561,"line":1546},[559,24022,10692],{},[559,24024,24025],{"class":561,"line":1551},[559,24026,10697],{},[559,24028,24029],{"class":561,"line":1557},[559,24030,10702],{},[559,24032,24033],{"class":561,"line":1562},[559,24034,10707],{},[559,24036,24037],{"class":561,"line":1568},[559,24038,10712],{},[559,24040,24041],{"class":561,"line":1573},[559,24042,10717],{},[559,24044,24045],{"class":561,"line":1579},[559,24046,10722],{},[559,24048,24049],{"class":561,"line":1584},[559,24050,10727],{},[559,24052,24053],{"class":561,"line":1590},[559,24054,10732],{},[559,24056,24057],{"class":561,"line":1595},[559,24058,10737],{},[559,24060,24061],{"class":561,"line":1601},[559,24062,10742],{},[559,24064,24065],{"class":561,"line":1606},[559,24066,10747],{},[559,24068,24069],{"class":561,"line":1612},[559,24070,10752],{},[559,24072,24073],{"class":561,"line":1617},[559,24074,10757],{},[559,24076,24077],{"class":561,"line":1623},[559,24078,10762],{},[559,24080,24081],{"class":561,"line":1628},[559,24082,10767],{},[559,24084,24085],{"class":561,"line":1634},[559,24086,566],{},[559,24088,24089],{"class":561,"line":1639},[559,24090,944],{"emptyLinePlaceholder":167},[559,24092,24093],{"class":561,"line":1645},[559,24094,10780],{},[559,24096,24097],{"class":561,"line":1650},[559,24098,944],{"emptyLinePlaceholder":167},[559,24100,24101],{"class":561,"line":1656},[559,24102,10789],{},[559,24104,24105],{"class":561,"line":1661},[559,24106,944],{"emptyLinePlaceholder":167},[559,24108,24109],{"class":561,"line":1667},[559,24110,10798],{},[559,24112,24113],{"class":561,"line":1672},[559,24114,10803],{},[559,24116,24117],{"class":561,"line":1678},[559,24118,10808],{},[559,24120,24121],{"class":561,"line":1683},[559,24122,10813],{},[559,24124,24125],{"class":561,"line":1689},[559,24126,10818],{},[559,24128,24129],{"class":561,"line":1694},[559,24130,944],{"emptyLinePlaceholder":167},[559,24132,24133],{"class":561,"line":10825},[559,24134,10297],{},[559,24136,24137],{"class":561,"line":10830},[559,24138,944],{"emptyLinePlaceholder":167},[559,24140,24141],{"class":561,"line":10835},[559,24142,10838],{},[559,24144,24145],{"class":561,"line":10841},[559,24146,944],{"emptyLinePlaceholder":167},[559,24148,24149],{"class":561,"line":10846},[559,24150,10849],{},[495,24152,1704],{"id":1703},[480,24154,1707,24155,10857],{},[484,24156,10856],{},[480,24158,1714],{},[1716,24160,1718],{},{"title":555,"searchDepth":584,"depth":584,"links":24162},[24163],{"id":9596,"depth":569,"text":9591,"children":24164},[24165,24166,24183,24184,24188,24189,24193,24197,24198],{"id":9615,"depth":584,"text":9616},{"id":9644,"depth":584,"text":9645,"children":24167},[24168,24169,24170,24171,24172,24173,24174,24175,24176,24177,24178,24179,24180,24181,24182],{"id":573,"depth":595,"text":573},{"id":695,"depth":595,"text":695},{"id":6020,"depth":595,"text":6020},{"id":10046,"depth":595,"text":6028},{"id":587,"depth":595,"text":587},{"id":6036,"depth":595,"text":6036},{"id":5647,"depth":595,"text":5647},{"id":706,"depth":595,"text":706},{"id":9737,"depth":595,"text":9737},{"id":5594,"depth":595,"text":5594},{"id":9851,"depth":595,"text":9851},{"id":6044,"depth":595,"text":6044},{"id":7070,"depth":595,"text":7070},{"id":10196,"depth":595,"text":9975},{"id":10214,"depth":595,"text":9984},{"id":904,"depth":584,"text":905},{"id":10312,"depth":584,"text":10313,"children":24185},[24186,24187],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":10459,"depth":584,"text":10460},{"id":10501,"depth":584,"text":10502,"children":24190},[24191,24192],{"id":1350,"depth":595,"text":1148},{"id":1373,"depth":595,"text":1265},{"id":10541,"depth":584,"text":10542,"children":24194},[24195,24196],{"id":1394,"depth":595,"text":1148},{"id":1419,"depth":595,"text":1265},{"id":1435,"depth":584,"text":1436},{"id":1703,"depth":584,"text":1704},{},{"title":9591,"description":10900},{"id":10907,"title":10908,"badge":471,"body":24202,"description":12168,"extension":1763,"meta":25258,"navigation":167,"order":692,"path":12170,"section":6,"seo":25259,"stem":12172,"__hash__":12173},{"type":473,"value":24203,"toc":25227},[24204,24206,24210,24212,24214,24216,24220,24240,24242,24254,24256,24260,24264,24652,24654,24656,24658,24662,24664,24666,24670,24672,24680,24684,24686,24690,24694,24696,24698,24702,24704,24714,24718,24720,24736,24740,24742,24752,24756,24758,24760,24762,24846,24848,24850,24852,24910,24914,24916,24940,24942,24944,24949,24951,24967,24969,24971,24989,24991,25003,25005,25007,25025,25027,25039,25041,25043,25215,25217,25219,25223,25225],[476,24205,10908],{"id":10913},[480,24207,10916,24208,10919],{},[484,24209,10856],{},[480,24211,10922],{},[480,24213,10925],{},[495,24215,10929],{"id":10928},[480,24217,10932,24218,10936],{},[503,24219,10935],{},[508,24221,24222,24228,24234],{},[511,24223,24224,516,24226],{},[503,24225,10943],{},[503,24227,25],{},[511,24229,24230,516,24232],{},[503,24231,10950],{},[503,24233,10953],{},[511,24235,24236,516,24238],{},[503,24237,10958],{},[503,24239,10961],{},[480,24241,9641],{},[480,24243,24244,10969,24246,10972,24248,3706,24250,10979,24252,10983],{},[484,24245,10968],{},[503,24247,10935],{},[503,24249,10975],{},[503,24251,10978],{},[503,24253,10982],{},[495,24255,10987],{"id":10986},[480,24257,10990,24258,10993],{},[503,24259,540],{},[480,24261,10996,24262,10999],{},[503,24263,10943],{},[550,24265,24266],{"className":552,"code":11002,"language":554,"meta":555,"style":555},[503,24267,24268,24272,24280,24288,24296,24304,24312,24318,24328,24336,24346,24354,24364,24372,24382,24390,24398,24406,24412,24422,24430,24438,24448,24456,24464,24474,24482,24490,24500,24508,24516,24524,24532,24540,24546,24556,24564,24572,24580,24590,24598,24606,24614,24624,24632,24640,24648],{"__ignoreMap":555},[559,24269,24270],{"class":561,"line":562},[559,24271,566],{"class":565},[559,24273,24274,24276,24278],{"class":561,"line":569},[559,24275,573],{"class":572},[559,24277,577],{"class":576},[559,24279,11017],{"class":580},[559,24281,24282,24284,24286],{"class":561,"line":584},[559,24283,587],{"class":572},[559,24285,577],{"class":576},[559,24287,11026],{"class":580},[559,24289,24290,24292,24294],{"class":561,"line":595},[559,24291,6787],{"class":572},[559,24293,577],{"class":576},[559,24295,11035],{"class":580},[559,24297,24298,24300,24302],{"class":561,"line":607},[559,24299,6797],{"class":572},[559,24301,577],{"class":576},[559,24303,11044],{"class":580},[559,24305,24306,24308,24310],{"class":561,"line":618},[559,24307,6807],{"class":572},[559,24309,577],{"class":576},[559,24311,11053],{"class":580},[559,24313,24314,24316],{"class":561,"line":629},[559,24315,11058],{"class":572},[559,24317,657],{"class":576},[559,24319,24320,24322,24324,24326],{"class":561,"line":640},[559,24321,663],{"class":576},[559,24323,10164],{"class":572},[559,24325,577],{"class":576},[559,24327,11071],{"class":580},[559,24329,24330,24332,24334],{"class":561,"line":651},[559,24331,5274],{"class":572},[559,24333,577],{"class":576},[559,24335,11080],{"class":580},[559,24337,24338,24340,24342,24344],{"class":561,"line":660},[559,24339,663],{"class":576},[559,24341,10164],{"class":572},[559,24343,577],{"class":576},[559,24345,5546],{"class":580},[559,24347,24348,24350,24352],{"class":561,"line":669},[559,24349,5274],{"class":572},[559,24351,577],{"class":576},[559,24353,11099],{"class":580},[559,24355,24356,24358,24360,24362],{"class":561,"line":676},[559,24357,663],{"class":576},[559,24359,10164],{"class":572},[559,24361,577],{"class":576},[559,24363,5567],{"class":580},[559,24365,24366,24368,24370],{"class":561,"line":684},[559,24367,5274],{"class":572},[559,24369,577],{"class":576},[559,24371,11118],{"class":580},[559,24373,24374,24376,24378,24380],{"class":561,"line":692},[559,24375,663],{"class":576},[559,24377,10164],{"class":572},[559,24379,577],{"class":576},[559,24381,11129],{"class":580},[559,24383,24384,24386,24388],{"class":561,"line":703},[559,24385,5274],{"class":572},[559,24387,577],{"class":576},[559,24389,11138],{"class":580},[559,24391,24392,24394,24396],{"class":561,"line":714},[559,24393,11143],{"class":572},[559,24395,577],{"class":576},[559,24397,11148],{"class":580},[559,24399,24400,24402,24404],{"class":561,"line":725},[559,24401,11153],{"class":572},[559,24403,577],{"class":576},[559,24405,11158],{"class":580},[559,24407,24408,24410],{"class":561,"line":1529},[559,24409,11163],{"class":572},[559,24411,657],{"class":576},[559,24413,24414,24416,24418,24420],{"class":561,"line":1535},[559,24415,663],{"class":576},[559,24417,5647],{"class":572},[559,24419,577],{"class":576},[559,24421,11176],{"class":580},[559,24423,24424,24426,24428],{"class":561,"line":1540},[559,24425,9755],{"class":572},[559,24427,577],{"class":576},[559,24429,11185],{"class":580},[559,24431,24432,24434,24436],{"class":561,"line":1546},[559,24433,9765],{"class":572},[559,24435,577],{"class":576},[559,24437,11194],{"class":580},[559,24439,24440,24442,24444,24446],{"class":561,"line":1551},[559,24441,663],{"class":576},[559,24443,5647],{"class":572},[559,24445,577],{"class":576},[559,24447,11205],{"class":580},[559,24449,24450,24452,24454],{"class":561,"line":1557},[559,24451,9755],{"class":572},[559,24453,577],{"class":576},[559,24455,11214],{"class":580},[559,24457,24458,24460,24462],{"class":561,"line":1562},[559,24459,9765],{"class":572},[559,24461,577],{"class":576},[559,24463,11223],{"class":580},[559,24465,24466,24468,24470,24472],{"class":561,"line":1568},[559,24467,663],{"class":576},[559,24469,5647],{"class":572},[559,24471,577],{"class":576},[559,24473,11234],{"class":580},[559,24475,24476,24478,24480],{"class":561,"line":1573},[559,24477,9755],{"class":572},[559,24479,577],{"class":576},[559,24481,11243],{"class":580},[559,24483,24484,24486,24488],{"class":561,"line":1579},[559,24485,9765],{"class":572},[559,24487,577],{"class":576},[559,24489,11252],{"class":580},[559,24491,24492,24494,24496,24498],{"class":561,"line":1584},[559,24493,663],{"class":576},[559,24495,5647],{"class":572},[559,24497,577],{"class":576},[559,24499,11263],{"class":580},[559,24501,24502,24504,24506],{"class":561,"line":1590},[559,24503,9755],{"class":572},[559,24505,577],{"class":576},[559,24507,11272],{"class":580},[559,24509,24510,24512,24514],{"class":561,"line":1595},[559,24511,9765],{"class":572},[559,24513,577],{"class":576},[559,24515,11281],{"class":580},[559,24517,24518,24520,24522],{"class":561,"line":1601},[559,24519,11286],{"class":572},[559,24521,577],{"class":576},[559,24523,11291],{"class":580},[559,24525,24526,24528,24530],{"class":561,"line":1606},[559,24527,11296],{"class":572},[559,24529,577],{"class":576},[559,24531,11301],{"class":580},[559,24533,24534,24536,24538],{"class":561,"line":1612},[559,24535,11306],{"class":572},[559,24537,577],{"class":576},[559,24539,11311],{"class":580},[559,24541,24542,24544],{"class":561,"line":1617},[559,24543,11316],{"class":572},[559,24545,657],{"class":576},[559,24547,24548,24550,24552,24554],{"class":561,"line":1623},[559,24549,663],{"class":576},[559,24551,6183],{"class":572},[559,24553,577],{"class":576},[559,24555,11329],{"class":580},[559,24557,24558,24560,24562],{"class":561,"line":1628},[559,24559,11334],{"class":572},[559,24561,577],{"class":576},[559,24563,11339],{"class":580},[559,24565,24566,24568,24570],{"class":561,"line":1634},[559,24567,11344],{"class":572},[559,24569,577],{"class":576},[559,24571,11349],{"class":580},[559,24573,24574,24576,24578],{"class":561,"line":1639},[559,24575,11354],{"class":572},[559,24577,577],{"class":576},[559,24579,11359],{"class":580},[559,24581,24582,24584,24586,24588],{"class":561,"line":1645},[559,24583,663],{"class":576},[559,24585,6183],{"class":572},[559,24587,577],{"class":576},[559,24589,11370],{"class":580},[559,24591,24592,24594,24596],{"class":561,"line":1650},[559,24593,11334],{"class":572},[559,24595,577],{"class":576},[559,24597,11379],{"class":580},[559,24599,24600,24602,24604],{"class":561,"line":1656},[559,24601,11344],{"class":572},[559,24603,577],{"class":576},[559,24605,11388],{"class":580},[559,24607,24608,24610,24612],{"class":561,"line":1661},[559,24609,11354],{"class":572},[559,24611,577],{"class":576},[559,24613,11397],{"class":580},[559,24615,24616,24618,24620,24622],{"class":561,"line":1667},[559,24617,663],{"class":576},[559,24619,6183],{"class":572},[559,24621,577],{"class":576},[559,24623,11408],{"class":580},[559,24625,24626,24628,24630],{"class":561,"line":1672},[559,24627,11334],{"class":572},[559,24629,577],{"class":576},[559,24631,11417],{"class":580},[559,24633,24634,24636,24638],{"class":561,"line":1678},[559,24635,11344],{"class":572},[559,24637,577],{"class":576},[559,24639,11426],{"class":580},[559,24641,24642,24644,24646],{"class":561,"line":1683},[559,24643,11354],{"class":572},[559,24645,577],{"class":576},[559,24647,11435],{"class":580},[559,24649,24650],{"class":561,"line":1689},[559,24651,566],{"class":565},[480,24653,730],{},[732,24655,573],{"id":573},[480,24657,11446],{},[480,24659,24660,11451],{},[484,24661,745],{},[732,24663,587],{"id":587},[480,24665,11456],{},[480,24667,24668,11461],{},[484,24669,745],{},[732,24671,6787],{"id":6787},[480,24673,11466,24674,779,24676,779,24678,792],{},[503,24675,11469],{},[503,24677,11472],{},[503,24679,2134],{},[480,24681,24682,11479],{},[484,24683,745],{},[732,24685,6797],{"id":6797},[480,24687,11484,24688,792],{},[503,24689,739],{},[480,24691,24692,11491],{},[484,24693,745],{},[732,24695,6807],{"id":6807},[480,24697,11496],{},[480,24699,24700,11501],{},[484,24701,745],{},[732,24703,11505],{"id":11504},[480,24705,11508,24706,11511,24708,823,24710,11517,24712,11520],{},[503,24707,10164],{},[503,24709,11514],{},[503,24711,84],{},[503,24713,5076],{},[480,24715,24716,11525],{},[484,24717,745],{},[732,24719,11529],{"id":11528},[480,24721,11532,24722,11535,24724,779,24726,779,24728,779,24730,5686,24732,5689,24734,11551],{},[503,24723,5647],{},[503,24725,11538],{},[503,24727,11541],{},[503,24729,109],{},[503,24731,11546],{},[503,24733,573],{},[503,24735,5692],{},[480,24737,24738,11556],{},[484,24739,745],{},[732,24741,11560],{"id":11559},[480,24743,11563,24744,779,24746,779,24748,4042,24750,11573],{},[503,24745,6183],{},[503,24747,3612],{},[503,24749,6189],{},[503,24751,11572],{},[480,24753,24754,11578],{},[484,24755,745],{},[495,24757,905],{"id":904},[480,24759,11583],{},[480,24761,11586],{},[550,24763,24764],{"className":930,"code":11589,"language":932,"meta":555,"style":555},[503,24765,24766,24770,24774,24778,24782,24786,24790,24794,24798,24802,24806,24810,24814,24818,24822,24826,24830,24834,24838,24842],{"__ignoreMap":555},[559,24767,24768],{"class":561,"line":562},[559,24769,11596],{},[559,24771,24772],{"class":561,"line":569},[559,24773,944],{"emptyLinePlaceholder":167},[559,24775,24776],{"class":561,"line":584},[559,24777,11605],{},[559,24779,24780],{"class":561,"line":595},[559,24781,944],{"emptyLinePlaceholder":167},[559,24783,24784],{"class":561,"line":607},[559,24785,11614],{},[559,24787,24788],{"class":561,"line":618},[559,24789,944],{"emptyLinePlaceholder":167},[559,24791,24792],{"class":561,"line":629},[559,24793,11623],{},[559,24795,24796],{"class":561,"line":640},[559,24797,944],{"emptyLinePlaceholder":167},[559,24799,24800],{"class":561,"line":651},[559,24801,11632],{},[559,24803,24804],{"class":561,"line":660},[559,24805,944],{"emptyLinePlaceholder":167},[559,24807,24808],{"class":561,"line":669},[559,24809,11641],{},[559,24811,24812],{"class":561,"line":676},[559,24813,11646],{},[559,24815,24816],{"class":561,"line":684},[559,24817,11651],{},[559,24819,24820],{"class":561,"line":692},[559,24821,11656],{},[559,24823,24824],{"class":561,"line":703},[559,24825,944],{"emptyLinePlaceholder":167},[559,24827,24828],{"class":561,"line":714},[559,24829,11665],{},[559,24831,24832],{"class":561,"line":725},[559,24833,944],{"emptyLinePlaceholder":167},[559,24835,24836],{"class":561,"line":1529},[559,24837,11674],{},[559,24839,24840],{"class":561,"line":1535},[559,24841,944],{"emptyLinePlaceholder":167},[559,24843,24844],{"class":561,"line":1540},[559,24845,11683],{},[480,24847,10309],{},[495,24849,11689],{"id":11688},[732,24851,1148],{"id":1147},[1150,24853,24854,24858,24862,24866,24906],{},[511,24855,1154,24856,792],{},[503,24857,1157],{},[511,24859,1160,24860,792],{},[484,24861,4733],{},[511,24863,1166,24864,1170],{},[484,24865,11706],{},[511,24867,1173,24868],{},[508,24869,24870,24874,24878,24882,24886,24890,24894,24898,24902],{},[511,24871,24872,11715],{},[484,24873,1180],{},[511,24875,24876,10365],{},[484,24877,1186],{},[511,24879,24880,11725],{},[484,24881,11724],{},[511,24883,24884,11731],{},[484,24885,11730],{},[511,24887,24888,11737],{},[484,24889,11736],{},[511,24891,24892,11742],{},[484,24893,1246],{},[511,24895,24896,11748],{},[484,24897,11747],{},[511,24899,24900,11754],{},[484,24901,11753],{},[511,24903,24904,11760],{},[484,24905,11759],{},[511,24907,1166,24908,1170],{},[484,24909,1252],{},[480,24911,1255,24912,10429],{},[503,24913,10935],{},[732,24915,1265],{"id":1264},[1150,24917,24918,24922,24926,24930,24932,24934,24936],{},[511,24919,1270,24920,1273],{},[503,24921,10935],{},[511,24923,1276,24924,792],{},[484,24925,1279],{},[511,24927,1282,24928,792],{},[503,24929,11785],{},[511,24931,1287],{},[511,24933,1290],{},[511,24935,1293],{},[511,24937,1296,24938,792],{},[484,24939,1299],{},[495,24941,11799],{"id":11798},[480,24943,11802],{},[550,24945,24947],{"className":24946,"code":11806,"language":1315},[1313],[503,24948,11806],{"__ignoreMap":555},[480,24950,11811],{},[508,24952,24953,24955,24957,24959,24961,24963],{},[511,24954,11816],{},[511,24956,11819],{},[511,24958,11822],{},[511,24960,11825],{},[511,24962,11828],{},[511,24964,11831,24965,1343],{},[503,24966,4174],{},[495,24968,11837],{"id":11836},[732,24970,1148],{"id":1350},[1150,24972,24973,24977,24981,24983,24985],{},[511,24974,1154,24975,792],{},[503,24976,1157],{},[511,24978,1160,24979,792],{},[484,24980,4733],{},[511,24982,11852],{},[511,24984,1366],{},[511,24986,1166,24987,792],{},[484,24988,1252],{},[732,24990,1265],{"id":1373},[1150,24992,24993,24997,24999],{},[511,24994,11865,24995,792],{},[503,24996,10935],{},[511,24998,1383],{},[511,25000,1296,25001,792],{},[484,25002,1299],{},[495,25004,11877],{"id":11876},[732,25006,1148],{"id":1394},[1150,25008,25009,25013,25017,25019,25023],{},[511,25010,1154,25011,792],{},[503,25012,1157],{},[511,25014,1160,25015,792],{},[484,25016,4733],{},[511,25018,11892],{},[511,25020,1410,25021,792],{},[484,25022,1413],{},[511,25024,1416],{},[732,25026,1265],{"id":1419},[1150,25028,25029,25033,25037],{},[511,25030,1270,25031,1273],{},[503,25032,10935],{},[511,25034,11909,25035,792],{},[484,25036,1413],{},[511,25038,1416],{},[495,25040,11917],{"id":11916},[480,25042,11920],{},[550,25044,25045],{"className":930,"code":11923,"language":932,"meta":555,"style":555},[503,25046,25047,25051,25055,25059,25063,25067,25071,25075,25079,25083,25087,25091,25095,25099,25103,25107,25111,25115,25119,25123,25127,25131,25135,25139,25143,25147,25151,25155,25159,25163,25167,25171,25175,25179,25183,25187,25191,25195,25199,25203,25207,25211],{"__ignoreMap":555},[559,25048,25049],{"class":561,"line":562},[559,25050,566],{},[559,25052,25053],{"class":561,"line":569},[559,25054,11934],{},[559,25056,25057],{"class":561,"line":584},[559,25058,11939],{},[559,25060,25061],{"class":561,"line":595},[559,25062,11944],{},[559,25064,25065],{"class":561,"line":607},[559,25066,11949],{},[559,25068,25069],{"class":561,"line":618},[559,25070,11954],{},[559,25072,25073],{"class":561,"line":629},[559,25074,566],{},[559,25076,25077],{"class":561,"line":640},[559,25078,944],{"emptyLinePlaceholder":167},[559,25080,25081],{"class":561,"line":651},[559,25082,11967],{},[559,25084,25085],{"class":561,"line":660},[559,25086,944],{"emptyLinePlaceholder":167},[559,25088,25089],{"class":561,"line":669},[559,25090,11976],{},[559,25092,25093],{"class":561,"line":676},[559,25094,944],{"emptyLinePlaceholder":167},[559,25096,25097],{"class":561,"line":684},[559,25098,11985],{},[559,25100,25101],{"class":561,"line":692},[559,25102,11990],{},[559,25104,25105],{"class":561,"line":703},[559,25106,11995],{},[559,25108,25109],{"class":561,"line":714},[559,25110,944],{"emptyLinePlaceholder":167},[559,25112,25113],{"class":561,"line":725},[559,25114,12004],{},[559,25116,25117],{"class":561,"line":1529},[559,25118,944],{"emptyLinePlaceholder":167},[559,25120,25121],{"class":561,"line":1535},[559,25122,12013],{},[559,25124,25125],{"class":561,"line":1540},[559,25126,944],{"emptyLinePlaceholder":167},[559,25128,25129],{"class":561,"line":1546},[559,25130,12022],{},[559,25132,25133],{"class":561,"line":1551},[559,25134,12027],{},[559,25136,25137],{"class":561,"line":1557},[559,25138,12032],{},[559,25140,25141],{"class":561,"line":1562},[559,25142,944],{"emptyLinePlaceholder":167},[559,25144,25145],{"class":561,"line":1568},[559,25146,12041],{},[559,25148,25149],{"class":561,"line":1573},[559,25150,944],{"emptyLinePlaceholder":167},[559,25152,25153],{"class":561,"line":1579},[559,25154,12050],{},[559,25156,25157],{"class":561,"line":1584},[559,25158,944],{"emptyLinePlaceholder":167},[559,25160,25161],{"class":561,"line":1590},[559,25162,12059],{},[559,25164,25165],{"class":561,"line":1595},[559,25166,944],{"emptyLinePlaceholder":167},[559,25168,25169],{"class":561,"line":1601},[559,25170,12068],{},[559,25172,25173],{"class":561,"line":1606},[559,25174,12073],{},[559,25176,25177],{"class":561,"line":1612},[559,25178,12078],{},[559,25180,25181],{"class":561,"line":1617},[559,25182,12083],{},[559,25184,25185],{"class":561,"line":1623},[559,25186,944],{"emptyLinePlaceholder":167},[559,25188,25189],{"class":561,"line":1628},[559,25190,12092],{},[559,25192,25193],{"class":561,"line":1634},[559,25194,944],{"emptyLinePlaceholder":167},[559,25196,25197],{"class":561,"line":1639},[559,25198,12101],{},[559,25200,25201],{"class":561,"line":1645},[559,25202,944],{"emptyLinePlaceholder":167},[559,25204,25205],{"class":561,"line":1650},[559,25206,12110],{},[559,25208,25209],{"class":561,"line":1656},[559,25210,944],{"emptyLinePlaceholder":167},[559,25212,25213],{"class":561,"line":1661},[559,25214,12119],{},[480,25216,12122],{},[495,25218,1704],{"id":1703},[480,25220,12127,25221,12131],{},[484,25222,12130],{},[480,25224,1714],{},[1716,25226,12136],{},{"title":555,"searchDepth":584,"depth":584,"links":25228},[25229],{"id":10913,"depth":569,"text":10908,"children":25230},[25231,25232,25242,25243,25247,25248,25252,25256,25257],{"id":10928,"depth":584,"text":10929},{"id":10986,"depth":584,"text":10987,"children":25233},[25234,25235,25236,25237,25238,25239,25240,25241],{"id":573,"depth":595,"text":573},{"id":587,"depth":595,"text":587},{"id":6787,"depth":595,"text":6787},{"id":6797,"depth":595,"text":6797},{"id":6807,"depth":595,"text":6807},{"id":11504,"depth":595,"text":11505},{"id":11528,"depth":595,"text":11529},{"id":11559,"depth":595,"text":11560},{"id":904,"depth":584,"text":905},{"id":11688,"depth":584,"text":11689,"children":25244},[25245,25246],{"id":1147,"depth":595,"text":1148},{"id":1264,"depth":595,"text":1265},{"id":11798,"depth":584,"text":11799},{"id":11836,"depth":584,"text":11837,"children":25249},[25250,25251],{"id":1350,"depth":595,"text":1148},{"id":1373,"depth":595,"text":1265},{"id":11876,"depth":584,"text":11877,"children":25253},[25254,25255],{"id":1394,"depth":595,"text":1148},{"id":1419,"depth":595,"text":1265},{"id":11916,"depth":584,"text":11917},{"id":1703,"depth":584,"text":1704},{},{"title":10908,"description":12168},{"id":12175,"title":12176,"badge":12177,"body":25261,"description":12782,"extension":1763,"meta":25681,"navigation":167,"order":703,"path":12784,"section":6,"seo":25682,"stem":12786,"__hash__":12787},{"type":473,"value":25262,"toc":25657},[25263,25265,25267,25269,25271,25273,25275,25277,25281,25315,25317,25319,25321,25323,25333,25335,25337,25341,25351,25353,25365,25367,25371,25381,25383,25395,25397,25403,25411,25413,25417,25425,25427,25431,25439,25441,25445,25453,25455,25465,25469,25471,25477,25479,25481,25485,25487,25495,25501,25503,25505,25513,25515,25517,25519,25529,25531,25533,25541,25543,25553,25555,25557,25561,25563,25577,25579,25581,25585,25593,25595,25597,25599,25607,25609,25629,25631,25633,25635,25645,25647,25649,25651,25653,25655],[476,25264,12176],{"id":12182},[480,25266,12185],{},[480,25268,12188],{},[495,25270,12192],{"id":12191},[480,25272,12195],{},[480,25274,12198],{},[495,25276,12202],{"id":12201},[480,25278,1154,25279,12207],{},[503,25280,3123],{},[508,25282,25283,25287,25291,25295,25299,25303,25307,25311],{},[511,25284,25285,12215],{},[484,25286,12214],{},[511,25288,25289,12221],{},[484,25290,12220],{},[511,25292,25293,12226],{},[484,25294,10386],{},[511,25296,25297,12232],{},[484,25298,12231],{},[511,25300,25301,12238],{},[484,25302,12237],{},[511,25304,25305,12244],{},[484,25306,12243],{},[511,25308,25309,12250],{},[484,25310,12249],{},[511,25312,25313,12256],{},[484,25314,12255],{},[480,25316,12259],{},[495,25318,12263],{"id":12262},[480,25320,12266],{},[480,25322,12269],{},[508,25324,25325,25329,25331],{},[511,25326,12274,25327,12278],{},[503,25328,12277],{},[511,25330,12281],{},[511,25332,12284],{},[480,25334,12287],{},[495,25336,12291],{"id":12290},[480,25338,1154,25339,12297],{},[503,25340,12296],{},[508,25342,25343,25345,25347,25349],{},[511,25344,12302],{},[511,25346,12305],{},[511,25348,12308],{},[511,25350,12311],{},[480,25352,12314],{},[508,25354,25355,25357,25359,25361,25363],{},[511,25356,12319],{},[511,25358,12322],{},[511,25360,12325],{},[511,25362,12328],{},[511,25364,12331],{},[495,25366,12335],{"id":12334},[480,25368,1154,25369,12341],{},[503,25370,12340],{},[508,25372,25373,25375,25377,25379],{},[511,25374,12346],{},[511,25376,12349],{},[511,25378,12352],{},[511,25380,12355],{},[480,25382,12358],{},[508,25384,25385,25387,25389,25391],{},[511,25386,12363],{},[511,25388,12366],{},[511,25390,12369],{},[511,25392,12372,25393,12375],{},[503,25394,717],{},[495,25396,12379],{"id":12378},[480,25398,1154,25399,779,25401,12387],{},[503,25400,12384],{},[503,25402,10953],{},[508,25404,25405,25407,25409],{},[511,25406,12392],{},[511,25408,12395],{},[511,25410,12398],{},[495,25412,12402],{"id":12401},[480,25414,1154,25415,12407],{},[503,25416,7527],{},[508,25418,25419,25421,25423],{},[511,25420,12412],{},[511,25422,12415],{},[511,25424,12418],{},[495,25426,12422],{"id":12421},[480,25428,1154,25429,12428],{},[503,25430,12427],{},[508,25432,25433,25435,25437],{},[511,25434,12433],{},[511,25436,12436],{},[511,25438,12439],{},[495,25440,12443],{"id":12442},[480,25442,12446,25443,12428],{},[503,25444,12449],{},[508,25446,25447,25449,25451],{},[511,25448,12454],{},[511,25450,12457],{},[511,25452,12460],{},[495,25454,12464],{"id":12463},[480,25456,1154,25457,12469,25459,12472,25461,823,25463,792],{},[503,25458,2811],{},[503,25460,3695],{},[503,25462,3606],{},[503,25464,9],{},[480,25466,12479,25467,12482],{},[503,25468,3695],{},[495,25470,12486],{"id":12485},[480,25472,1154,25473,12491,25475,12494],{},[503,25474,3123],{},[503,25476,4231],{},[480,25478,12497],{},[495,25480,12501],{"id":12500},[480,25482,1154,25483,12507],{},[503,25484,12506],{},[480,25486,12510],{},[508,25488,25489,25491,25493],{},[511,25490,12515],{},[511,25492,12518],{},[511,25494,12521],{},[480,25496,12524,25497,12528,25499,12532],{},[503,25498,12527],{},[503,25500,12531],{},[495,25502,12536],{"id":12535},[480,25504,12539],{},[508,25506,25507,25509,25511],{},[511,25508,12544],{},[511,25510,12547],{},[511,25512,12550],{},[480,25514,12553],{},[495,25516,12557],{"id":12556},[480,25518,12560],{},[508,25520,25521,25523,25525,25527],{},[511,25522,12565],{},[511,25524,12568],{},[511,25526,12571],{},[511,25528,12574],{},[480,25530,12577],{},[495,25532,12581],{"id":12580},[480,25534,12584,25535,12588,25537,12592,25539,792],{},[484,25536,12587],{},[484,25538,12591],{},[484,25540,12595],{},[480,25542,12598],{},[508,25544,25545,25547,25549,25551],{},[511,25546,12603],{},[511,25548,12606],{},[511,25550,12609],{},[511,25552,12612],{},[480,25554,12615],{},[495,25556,12619],{"id":12618},[480,25558,12622,25559,12626],{},[484,25560,12625],{},[480,25562,12629],{},[508,25564,25565,25569,25573],{},[511,25566,25567,12637],{},[503,25568,12636],{},[511,25570,25571,12643],{},[503,25572,12642],{},[511,25574,25575,12649],{},[503,25576,12648],{},[480,25578,12652],{},[495,25580,12656],{"id":12655},[480,25582,1270,25583,12661],{},[503,25584,3347],{},[508,25586,25587,25591],{},[511,25588,12666,25589,12670],{},[503,25590,12669],{},[511,25592,12673],{},[480,25594,12676],{},[495,25596,12680],{"id":12679},[480,25598,12683],{},[550,25600,25601],{"className":2586,"code":12686,"language":2578,"meta":555,"style":555},[503,25602,25603],{"__ignoreMap":555},[559,25604,25605],{"class":561,"line":562},[559,25606,12686],{},[480,25608,12695],{},[508,25610,25611,25617,25623],{},[511,25612,12700,25613,12703,25615,1343],{},[503,25614,2989],{},[503,25616,3822],{},[511,25618,12700,25619,12703,25621,1343],{},[503,25620,3347],{},[503,25622,3822],{},[511,25624,12700,25625,12703,25627,1343],{},[503,25626,12716],{},[503,25628,3822],{},[480,25630,12721],{},[495,25632,12725],{"id":12724},[480,25634,12728],{},[508,25636,25637,25639,25641,25643],{},[511,25638,12733],{},[511,25640,12736],{},[511,25642,12739],{},[511,25644,12742],{},[480,25646,12745],{},[495,25648,1704],{"id":1703},[480,25650,12750],{},[480,25652,12753],{},[480,25654,1714],{},[1716,25656,2936],{},{"title":555,"searchDepth":584,"depth":584,"links":25658},[25659],{"id":12182,"depth":569,"text":12176,"children":25660},[25661,25662,25663,25664,25665,25666,25667,25668,25669,25670,25671,25672,25673,25674,25675,25676,25677,25678,25679,25680],{"id":12191,"depth":584,"text":12192},{"id":12201,"depth":584,"text":12202},{"id":12262,"depth":584,"text":12263},{"id":12290,"depth":584,"text":12291},{"id":12334,"depth":584,"text":12335},{"id":12378,"depth":584,"text":12379},{"id":12401,"depth":584,"text":12402},{"id":12421,"depth":584,"text":12422},{"id":12442,"depth":584,"text":12443},{"id":12463,"depth":584,"text":12464},{"id":12485,"depth":584,"text":12486},{"id":12500,"depth":584,"text":12501},{"id":12535,"depth":584,"text":12536},{"id":12556,"depth":584,"text":12557},{"id":12580,"depth":584,"text":12581},{"id":12618,"depth":584,"text":12619},{"id":12655,"depth":584,"text":12656},{"id":12679,"depth":584,"text":12680},{"id":12724,"depth":584,"text":12725},{"id":1703,"depth":584,"text":1704},{},{"title":12176,"description":12782},{"id":12789,"title":12790,"badge":12177,"body":25684,"description":13294,"extension":1763,"meta":26043,"navigation":167,"order":714,"path":13296,"section":6,"seo":26044,"stem":13298,"__hash__":13299},{"type":473,"value":25685,"toc":26030},[25686,25688,25690,25692,25694,25696,25698,25721,25723,25725,25727,25767,25769,25771,25775,25777,25785,25789,25793,25801,25803,25815,25817,25819,25821,25823,25831,25843,25845,25853,25861,25863,25871,25875,25877,25879,25884,25886,25894,25896,25898,25906,25914,25916,25920,25922,25964,25966,25968,25970,25972,25974,25984,25988,25990,26002,26004,26006,26008,26018,26020,26022,26024,26026,26028],[476,25687,12790],{"id":12795},[480,25689,12798],{},[480,25691,12801],{},[480,25693,12804],{},[495,25695,12808],{"id":12807},[480,25697,12811],{},[1150,25699,25700,25705,25709,25711,25713,25715,25717],{},[511,25701,2524,25702,792],{},[2267,25703,12818],{"href":12818,"rel":25704},[2270],[511,25706,12822,25707,12826],{},[484,25708,12825],{},[511,25710,12829],{},[511,25712,12832],{},[511,25714,12835],{},[511,25716,12838],{},[511,25718,12841,25719,12845],{},[484,25720,12844],{},[480,25722,12848],{},[495,25724,12852],{"id":12851},[480,25726,12855],{},[1150,25728,25729,25735,25759,25763],{},[511,25730,12860,25731,12863,25733,7350],{},[484,25732,4606],{},[484,25734,12866],{},[511,25736,12869,25737],{},[508,25738,25739,25747,25751],{},[511,25740,25741,12877,25743,823,25745,12884],{},[484,25742,12876],{},[503,25744,12880],{},[503,25746,12883],{},[511,25748,25749,12889],{},[484,25750,1186],{},[511,25752,25753,12895,25755,12899,25757,12903],{},[484,25754,12894],{},[484,25756,12898],{},[484,25758,12902],{},[511,25760,25761,12908],{},[484,25762,2481],{},[511,25764,1166,25765,792],{},[484,25766,12913],{},[480,25768,12916],{},[495,25770,12920],{"id":12919},[480,25772,12923,25773,12927],{},[503,25774,12926],{},[480,25776,12930],{},[550,25778,25779],{"className":2586,"code":12933,"language":2578,"meta":555,"style":555},[503,25780,25781],{"__ignoreMap":555},[559,25782,25783],{"class":561,"line":562},[559,25784,12933],{},[480,25786,12942,25787,12945],{},[503,25788,12926],{},[480,25790,12948,25791,12952],{},[503,25792,12951],{},[550,25794,25795],{"className":2586,"code":12955,"language":2578,"meta":555,"style":555},[503,25796,25797],{"__ignoreMap":555},[559,25798,25799],{"class":561,"line":562},[559,25800,12955],{},[480,25802,12964],{},[550,25804,25805],{"className":2586,"code":12967,"language":2578,"meta":555,"style":555},[503,25806,25807,25811],{"__ignoreMap":555},[559,25808,25809],{"class":561,"line":562},[559,25810,12974],{},[559,25812,25813],{"class":561,"line":569},[559,25814,12979],{},[480,25816,12982],{},[495,25818,12986],{"id":12985},[480,25820,12989],{},[480,25822,12992],{},[550,25824,25825],{"className":2586,"code":12995,"language":2578,"meta":555,"style":555},[503,25826,25827],{"__ignoreMap":555},[559,25828,25829],{"class":561,"line":562},[559,25830,12995],{},[480,25832,13004,25833,13007,25835,13010,25837,779,25839,779,25841,13017],{},[503,25834,3822],{},[503,25836,3822],{},[503,25838,2989],{},[503,25840,12716],{},[503,25842,3347],{},[480,25844,13020],{},[550,25846,25847],{"className":2586,"code":12686,"language":2578,"meta":555,"style":555},[503,25848,25849],{"__ignoreMap":555},[559,25850,25851],{"class":561,"line":562},[559,25852,12686],{},[480,25854,13031,25855,2146,25857,13036,25859,13039],{},[503,25856,2989],{},[503,25858,3347],{},[503,25860,3822],{},[480,25862,13042],{},[550,25864,25865],{"className":2586,"code":13045,"language":2578,"meta":555,"style":555},[503,25866,25867],{"__ignoreMap":555},[559,25868,25869],{"class":561,"line":562},[559,25870,13045],{},[480,25872,3692,25873,13057],{},[503,25874,13056],{},[495,25876,13061],{"id":13060},[480,25878,13064],{},[550,25880,25882],{"className":25881,"code":13068,"language":1315},[1313],[503,25883,13068],{"__ignoreMap":555},[480,25885,13073],{},[550,25887,25888],{"className":2586,"code":13076,"language":2578,"meta":555,"style":555},[503,25889,25890],{"__ignoreMap":555},[559,25891,25892],{"class":561,"line":562},[559,25893,13076],{},[480,25895,13085],{},[480,25897,13088],{},[550,25899,25900],{"className":2586,"code":13091,"language":2578,"meta":555,"style":555},[503,25901,25902],{"__ignoreMap":555},[559,25903,25904],{"class":561,"line":562},[559,25905,13091],{},[480,25907,3692,25908,13103,25910,13107,25912,13111],{},[503,25909,13102],{},[503,25911,13106],{},[503,25913,13110],{},[495,25915,13115],{"id":13114},[480,25917,13118,25918,13122],{},[484,25919,13121],{},[480,25921,13125],{},[1150,25923,25924,25926,25930,25934,25940,25946,25950,25952,25958,25962],{},[511,25925,13130],{},[511,25927,3768,25928,792],{},[484,25929,13135],{},[511,25931,13138,25932,792],{},[484,25933,13141],{},[511,25935,1166,25936,2675,25938,792],{},[484,25937,13146],{},[484,25939,13149],{},[511,25941,1166,25942,2675,25944,792],{},[484,25943,13154],{},[484,25945,13157],{},[511,25947,13160,25948,792],{},[503,25949,13163],{},[511,25951,13166],{},[511,25953,13169,25954,13173,25956,13177],{},[484,25955,13172],{},[484,25957,13176],{},[511,25959,1166,25960,792],{},[484,25961,13182],{},[511,25963,13185],{},[480,25965,13188],{},[480,25967,13191],{},[495,25969,13195],{"id":13194},[480,25971,13198],{},[480,25973,13201],{},[1150,25975,25976,25980],{},[511,25977,25978,13209],{},[484,25979,13208],{},[511,25981,25982,13215],{},[484,25983,13214],{},[480,25985,13218,25986,13221],{},[484,25987,13208],{},[480,25989,13224],{},[1150,25991,25992,25994,25998,26000],{},[511,25993,13229],{},[511,25995,13232,25996,13236],{},[503,25997,13235],{},[511,25999,13239],{},[511,26001,13242],{},[480,26003,13245],{},[495,26005,13249],{"id":13248},[480,26007,13252],{},[508,26009,26010,26012,26014],{},[511,26011,13257],{},[511,26013,13260],{},[511,26015,3692,26016,13265],{},[503,26017,2366],{},[480,26019,13268],{},[495,26021,1704],{"id":1703},[480,26023,13273],{},[480,26025,13276],{},[480,26027,1714],{},[1716,26029,2936],{},{"title":555,"searchDepth":584,"depth":584,"links":26031},[26032],{"id":12795,"depth":569,"text":12790,"children":26033},[26034,26035,26036,26037,26038,26039,26040,26041,26042],{"id":12807,"depth":584,"text":12808},{"id":12851,"depth":584,"text":12852},{"id":12919,"depth":584,"text":12920},{"id":12985,"depth":584,"text":12986},{"id":13060,"depth":584,"text":13061},{"id":13114,"depth":584,"text":13115},{"id":13194,"depth":584,"text":13195},{"id":13248,"depth":584,"text":13249},{"id":1703,"depth":584,"text":1704},{},{"title":12790,"description":13294},{"id":13301,"title":13302,"badge":12177,"body":26046,"description":14135,"extension":1763,"meta":26653,"navigation":167,"order":725,"path":14137,"section":6,"seo":26654,"stem":14139,"__hash__":14140},{"type":473,"value":26047,"toc":26631},[26048,26050,26052,26058,26060,26062,26066,26070,26104,26108,26142,26146,26160,26166,26170,26218,26220,26239,26241,26277,26285,26289,26291,26293,26305,26359,26365,26381,26383,26385,26387,26415,26417,26419,26437,26439,26441,26459,26463,26465,26467,26483,26485,26505,26507,26509,26531,26535,26537,26539,26549,26551,26553,26555,26559,26581,26583,26585,26587,26589,26593,26595,26609,26613,26621,26623,26625,26627,26629],[476,26049,13302],{"id":13307},[480,26051,13310],{},[480,26053,13313,26054,2146,26056,13319],{},[484,26055,13316],{},[484,26057,13208],{},[480,26059,13322],{},[495,26061,13326],{"id":13325},[480,26063,13329,26064,13333],{},[484,26065,13332],{},[480,26067,26068],{},[484,26069,13338],{},[508,26071,26072,26078,26084,26088,26092,26096,26100],{},[511,26073,26074,2265,26076],{},[484,26075,13345],{},[503,26077,13348],{},[511,26079,26080,2265,26082],{},[484,26081,13353],{},[503,26083,13356],{},[511,26085,26086,13362],{},[484,26087,13361],{},[511,26089,26090,13368],{},[484,26091,13367],{},[511,26093,26094,13374],{},[484,26095,13373],{},[511,26097,26098,13380],{},[484,26099,13379],{},[511,26101,26102,13386],{},[484,26103,13385],{},[480,26105,26106],{},[484,26107,13391],{},[508,26109,26110,26116,26122,26126,26130,26134,26138],{},[511,26111,26112,2265,26114],{},[484,26113,13345],{},[503,26115,4321],{},[511,26117,26118,2265,26120,13407],{},[484,26119,13353],{},[503,26121,13406],{},[511,26123,26124,13412],{},[484,26125,13361],{},[511,26127,26128,13417],{},[484,26129,13367],{},[511,26131,26132,13422],{},[484,26133,13373],{},[511,26135,26136,13427],{},[484,26137,13379],{},[511,26139,26140,13432],{},[484,26141,13385],{},[480,26143,26144],{},[484,26145,13437],{},[480,26147,13440,26148,13444,26150,13447,26152,13451,26154,13455,26156,13458,26158,792],{},[484,26149,13443],{},[503,26151,4321],{},[503,26153,13450],{},[484,26155,13454],{},[503,26157,13348],{},[503,26159,13461],{},[480,26161,13464,26162,13468,26164,13472],{},[484,26163,13467],{},[484,26165,13471],{},[480,26167,26168],{},[484,26169,13477],{},[13479,26171,26172,26184],{},[13482,26173,26174],{},[13485,26175,26176,26178,26180,26182],{},[13488,26177,13490],{},[13488,26179,13493],{},[13488,26181,13496],{},[13488,26183,13499],{},[13501,26185,26186,26202],{},[13485,26187,26188,26192,26196,26200],{},[13506,26189,26190,13510],{},[484,26191,13454],{},[13506,26193,26194],{},[503,26195,13348],{},[13506,26197,26198],{},[503,26199,13461],{},[13506,26201,13521],{},[13485,26203,26204,26208,26212,26216],{},[13506,26205,26206],{},[484,26207,13443],{},[13506,26209,26210],{},[503,26211,4321],{},[13506,26213,26214],{},[503,26215,13450],{},[13506,26217,13538],{},[495,26219,13542],{"id":13541},[1150,26221,26222,26227,26231,26235,26237],{},[511,26223,2524,26224,792],{},[2267,26225,13549],{"href":13549,"rel":26226},[2270],[511,26228,1166,26229,1170],{},[484,26230,12825],{},[511,26232,3768,26233,13560],{},[484,26234,13559],{},[511,26236,13563],{},[511,26238,13566],{},[495,26240,13570],{"id":13569},[1150,26242,26243,26249,26253,26255,26273],{},[511,26244,13575,26245,2675,26247,792],{},[484,26246,13578],{},[484,26248,13581],{},[511,26250,3768,26251,13586],{},[484,26252,260],{},[511,26254,13589],{},[511,26256,13592,26257,13596,26259],{},[484,26258,13595],{},[508,26260,26261,26267],{},[511,26262,26263,2265,26265],{},[484,26264,13345],{},[503,26266,13348],{},[511,26268,26269,2265,26271],{},[484,26270,13609],{},[503,26272,13461],{},[511,26274,1166,26275,792],{},[484,26276,13616],{},[480,26278,13619,26279,13444,26281,13447,26283,13626],{},[484,26280,13443],{},[503,26282,4321],{},[503,26284,13450],{},[480,26286,13629,26287,13633],{},[503,26288,13632],{},[495,26290,13637],{"id":13636},[480,26292,13640],{},[1150,26294,26295,26299],{},[511,26296,1154,26297,7449],{},[503,26298,2811],{},[511,26300,7452,26301,13651,26303,13654],{},[503,26302,3530],{},[503,26304,3602],{},[550,26306,26307],{"className":3413,"code":13657,"language":3415,"meta":555,"style":555},[503,26308,26309,26315,26325,26335,26345,26355],{"__ignoreMap":555},[559,26310,26311,26313],{"class":561,"line":562},[559,26312,3530],{"class":565},[559,26314,3543],{"class":576},[559,26316,26317,26319,26321,26323],{"class":561,"line":569},[559,26318,3548],{"class":565},[559,26320,577],{"class":576},[559,26322,13674],{"class":580},[559,26324,3443],{"class":576},[559,26326,26327,26329,26331,26333],{"class":561,"line":584},[559,26328,3560],{"class":565},[559,26330,577],{"class":576},[559,26332,3652],{"class":580},[559,26334,3443],{"class":576},[559,26336,26337,26339,26341,26343],{"class":561,"line":595},[559,26338,3572],{"class":565},[559,26340,577],{"class":576},[559,26342,13695],{"class":580},[559,26344,3443],{"class":576},[559,26346,26347,26349,26351,26353],{"class":561,"line":607},[559,26348,3584],{"class":565},[559,26350,577],{"class":576},[559,26352,3589],{"class":580},[559,26354,3443],{"class":576},[559,26356,26357],{"class":561,"line":618},[559,26358,3596],{"class":576},[1150,26360,26361,26363],{"start":584},[511,26362,13716],{},[511,26364,13719],{},[550,26366,26367],{"className":2586,"code":13722,"language":2578,"meta":555,"style":555},[503,26368,26369,26373,26377],{"__ignoreMap":555},[559,26370,26371],{"class":561,"line":562},[559,26372,12995],{},[559,26374,26375],{"class":561,"line":569},[559,26376,13733],{},[559,26378,26379],{"class":561,"line":584},[559,26380,13738],{},[480,26382,13741],{},[495,26384,13745],{"id":13744},[480,26386,13748],{},[1150,26388,26389,26391,26397,26401,26405,26411],{},[511,26390,13753],{},[511,26392,13756,26393,2675,26395,792],{},[484,26394,13759],{},[484,26396,13762],{},[511,26398,1166,26399,792],{},[484,26400,13767],{},[511,26402,13770,26403,792],{},[484,26404,13773],{},[511,26406,13169,26407,13779,26409,13783],{},[484,26408,13778],{},[484,26410,13782],{},[511,26412,13169,26413,13789],{},[484,26414,13788],{},[495,26416,13793],{"id":13792},[480,26418,13796],{},[1150,26420,26421,26425,26431,26435],{},[511,26422,13801,26423,792],{},[484,26424,13804],{},[511,26426,13807,26427,13810,26429,792],{},[484,26428,13208],{},[484,26430,13813],{},[511,26432,13816,26433,13820],{},[484,26434,13819],{},[511,26436,13823],{},[495,26438,13827],{"id":13826},[480,26440,13830],{},[1150,26442,26443,26447,26449,26453,26455,26457],{},[511,26444,13835,26445,792],{},[484,26446,13838],{},[511,26448,13841],{},[511,26450,1166,26451,792],{},[484,26452,13846],{},[511,26454,13849],{},[511,26456,13852],{},[511,26458,13855],{},[480,26460,13858,26461,13861],{},[484,26462,13782],{},[495,26464,13865],{"id":13864},[480,26466,13868],{},[1150,26468,26469,26473,26475,26477,26481],{},[511,26470,13873,26471,1343],{},[484,26472,1163],{},[511,26474,13878],{},[511,26476,13881],{},[511,26478,1166,26479,792],{},[484,26480,1252],{},[511,26482,13888],{},[480,26484,13891],{},[508,26486,26487,26489,26497],{},[511,26488,13896],{},[511,26490,12666,26491,13902,26493,13905,26495,13909],{},[503,26492,13901],{},[503,26494,4820],{},[503,26496,13908],{},[511,26498,13912,26499,13905,26501,13918,26503,13922],{},[503,26500,13915],{},[503,26502,12951],{},[503,26504,13921],{},[495,26506,13926],{"id":13925},[480,26508,13929],{},[1150,26510,26511,26515,26517,26523,26527],{},[511,26512,1270,26513,13937],{},[484,26514,13936],{},[511,26516,13940],{},[511,26518,13943,26519,13946,26521,792],{},[503,26520,13348],{},[503,26522,4321],{},[511,26524,13951,26525,792],{},[503,26526,13461],{},[511,26528,13956,26529,13960],{},[484,26530,13959],{},[480,26532,13963,26533,13967],{},[484,26534,13966],{},[495,26536,13971],{"id":13970},[480,26538,13974],{},[508,26540,26541,26543,26545,26547],{},[511,26542,13979],{},[511,26544,13982],{},[511,26546,13985],{},[511,26548,13208],{},[480,26550,13990],{},[495,26552,7895],{"id":7894},[732,26554,13996],{"id":13995},[480,26556,13999,26557,14003],{},[503,26558,14002],{},[550,26560,26561],{"className":14006,"code":14007,"language":14008,"meta":555,"style":555},[503,26562,26563],{"__ignoreMap":555},[559,26564,26565,26567,26569,26571,26573,26575,26577,26579],{"class":561,"line":562},[559,26566,14015],{"class":576},[559,26568,14018],{"class":572},[559,26570,14021],{"class":565},[559,26572,14024],{"class":576},[559,26574,14027],{"class":580},[559,26576,14030],{"class":576},[559,26578,14018],{"class":572},[559,26580,14035],{"class":576},[480,26582,14038],{},[732,26584,14042],{"id":14041},[480,26586,14045],{},[732,26588,4825],{"id":4824},[480,26590,14050,26591,14053],{},[484,26592,13936],{},[732,26594,14057],{"id":14056},[480,26596,14060,26597,14063,26599,14066,26601,14069,26603,2146,26605,14076,26607,14079],{},[503,26598,13461],{},[503,26600,13461],{},[503,26602,13348],{},[503,26604,14072],{},[503,26606,14075],{},[503,26608,14072],{},[732,26610,14083,26611,14086],{"id":14082},[503,26612,4321],{},[480,26614,14089,26615,14093,26617,13458,26619,14098],{},[484,26616,14092],{},[503,26618,13348],{},[503,26620,13461],{},[495,26622,1704],{"id":1703},[480,26624,14103],{},[480,26626,14106],{},[480,26628,1714],{},[1716,26630,14111],{},{"title":555,"searchDepth":584,"depth":584,"links":26632},[26633],{"id":13307,"depth":569,"text":13302,"children":26634},[26635,26636,26637,26638,26639,26640,26641,26642,26643,26644,26645,26652],{"id":13325,"depth":584,"text":13326},{"id":13541,"depth":584,"text":13542},{"id":13569,"depth":584,"text":13570},{"id":13636,"depth":584,"text":13637},{"id":13744,"depth":584,"text":13745},{"id":13792,"depth":584,"text":13793},{"id":13826,"depth":584,"text":13827},{"id":13864,"depth":584,"text":13865},{"id":13925,"depth":584,"text":13926},{"id":13970,"depth":584,"text":13971},{"id":7894,"depth":584,"text":7895,"children":26646},[26647,26648,26649,26650,26651],{"id":13995,"depth":595,"text":13996},{"id":14041,"depth":595,"text":14042},{"id":4824,"depth":595,"text":4825},{"id":14056,"depth":595,"text":14057},{"id":14082,"depth":595,"text":14133},{"id":1703,"depth":584,"text":1704},{},{"title":13302,"description":14135},{"id":14142,"title":14143,"badge":12177,"body":26656,"description":16037,"extension":1763,"meta":28159,"navigation":167,"order":1529,"path":16039,"section":6,"seo":28160,"stem":16041,"__hash__":16042},{"type":473,"value":26657,"toc":28147},[26658,26660,26662,26664,26666,26668,26672,26678,26702,26708,26732,26752,26760,26764,26814,26816,26818,26822,26832,26848,26852,26894,26898,26920,26924,26932,26938,26940,26942,26946,26956,26960,27005,27009,27027,27029,27033,27037,27039,27041,27045,27053,27057,27097,27101,27119,27121,27125,27129,27131,27133,27139,27143,27145,27219,27223,27441,27445,27457,27459,27461,27465,27475,27479,27483,27647,27651,27971,27975,27977,27981,28005,28009,28133,28139,28141,28143,28145],[476,26659,14143],{"id":14148},[480,26661,14151],{},[480,26663,14154],{},[480,26665,14157],{},[495,26667,14161],{"id":14160},[480,26669,14164,26670,14168],{},[484,26671,14167],{},[480,26673,26674,14173,26676,792],{},[484,26675,13338],{},[503,26677,13348],{},[508,26679,26680,26686,26690,26694,26698],{},[511,26681,26682,2265,26684],{},[484,26683,13353],{},[503,26685,13356],{},[511,26687,26688,14189],{},[484,26689,14188],{},[511,26691,26692,14195],{},[484,26693,14194],{},[511,26695,26696,14201],{},[484,26697,14200],{},[511,26699,26700,14207],{},[484,26701,14206],{},[480,26703,26704,14173,26706,792],{},[484,26705,13391],{},[503,26707,4321],{},[508,26709,26710,26716,26720,26724,26728],{},[511,26711,26712,2265,26714,14222],{},[484,26713,13353],{},[503,26715,13406],{},[511,26717,26718,14227],{},[484,26719,14188],{},[511,26721,26722,14232],{},[484,26723,14194],{},[511,26725,26726,14237],{},[484,26727,14200],{},[511,26729,26730,14242],{},[484,26731,14206],{},[480,26733,26734,14248,26736,13444,26738,4352,26740,14255,26742,13444,26744,4352,26746,14262,26748,14266,26750,14270],{},[484,26735,14247],{},[484,26737,13454],{},[503,26739,13348],{},[503,26741,13461],{},[484,26743,13443],{},[503,26745,4321],{},[503,26747,13406],{},[503,26749,14265],{},[503,26751,14269],{},[480,26753,14273,26754,14276,26756,14279,26758,792],{},[484,26755,13443],{},[503,26757,13348],{},[503,26759,13461],{},[480,26761,26762],{},[484,26763,14286],{},[13479,26765,26766,26778],{},[13482,26767,26768],{},[13485,26769,26770,26772,26774,26776],{},[13488,26771,13490],{},[13488,26773,13493],{},[13488,26775,14299],{},[13488,26777,14302],{},[13501,26779,26780,26796],{},[13485,26781,26782,26786,26790,26794],{},[13506,26783,26784,14311],{},[484,26785,13454],{},[13506,26787,26788],{},[503,26789,13348],{},[13506,26791,26792],{},[503,26793,13461],{},[13506,26795,13521],{},[13485,26797,26798,26802,26806,26812],{},[13506,26799,26800,14328],{},[484,26801,13443],{},[13506,26803,26804],{},[503,26805,4321],{},[13506,26807,26808,14337,26810],{},[503,26809,13450],{},[503,26811,14340],{},[13506,26813,2566],{},[495,26815,14346],{"id":14345},[480,26817,14349],{},[480,26819,26820],{},[484,26821,14354],{},[508,26823,26824,26826,26828,26830],{},[511,26825,14359],{},[511,26827,14362],{},[511,26829,14365],{},[511,26831,14368],{},[480,26833,26834,14374,26836,14377,26838,14380,26840,14383,26842,14386,26844,14389,26846,792],{},[484,26835,14373],{},[503,26837,14340],{},[503,26839,13461],{},[503,26841,14340],{},[503,26843,14265],{},[503,26845,13461],{},[503,26847,13461],{},[480,26849,26850],{},[484,26851,14396],{},[1150,26853,26854,26856,26860,26868,26870,26890],{},[511,26855,14401],{},[511,26857,14404,26858,792],{},[484,26859,14407],{},[511,26861,1166,26862,2675,26864,2675,26866,792],{},[484,26863,14412],{},[484,26865,14415],{},[484,26867,14418],{},[511,26869,14421],{},[511,26871,14424,26872],{},[508,26873,26874,26878,26884],{},[511,26875,26876,14432],{},[484,26877,14431],{},[511,26879,26880,2265,26882],{},[484,26881,13345],{},[503,26883,13348],{},[511,26885,26886,2265,26888],{},[484,26887,14443],{},[503,26889,13461],{},[511,26891,1166,26892,792],{},[484,26893,14450],{},[480,26895,26896],{},[484,26897,14455],{},[1150,26899,26900,26916],{},[511,26901,14460,26902],{},[508,26903,26904,26910],{},[511,26905,26906,2265,26908],{},[484,26907,13345],{},[503,26909,4321],{},[511,26911,26912,2265,26914],{},[484,26913,14443],{},[503,26915,13450],{},[511,26917,14477,26918,14480],{},[503,26919,2811],{},[480,26921,14483,26922,14486],{},[503,26923,12951],{},[480,26925,26926,14492,26928,14496,26930,14499],{},[484,26927,14491],{},[503,26929,14495],{},[503,26931,14495],{},[480,26933,26934,14505,26936,792],{},[484,26935,14504],{},[484,26937,14508],{},[495,26939,14512],{"id":14511},[480,26941,14515],{},[480,26943,26944],{},[484,26945,14520],{},[508,26947,26948,26950,26952,26954],{},[511,26949,14525],{},[511,26951,14528],{},[511,26953,14531],{},[511,26955,14534],{},[480,26957,26958],{},[484,26959,14396],{},[1150,26961,26962,26964,26969,26975,26977,27001],{},[511,26963,14543],{},[511,26965,14546,26966,792],{},[2267,26967,14549],{"href":14549,"rel":26968},[2270],[511,26970,1166,26971,2675,26973,792],{},[484,26972,14555],{},[484,26974,14558],{},[511,26976,14561],{},[511,26978,14564,26979,14567,26981,13447,26983,14573,26985,14577,26987],{},[484,26980,13443],{},[503,26982,4321],{},[503,26984,14572],{},[484,26986,14576],{},[508,26988,26989,26995],{},[511,26990,26991,2265,26993],{},[484,26992,13345],{},[503,26994,13348],{},[511,26996,26997,2265,26999],{},[484,26998,14590],{},[503,27000,13461],{},[511,27002,1166,27003,792],{},[484,27004,14597],{},[480,27006,27007],{},[484,27008,14455],{},[1150,27010,27011],{},[511,27012,14606,27013],{},[508,27014,27015,27021],{},[511,27016,27017,2265,27019],{},[484,27018,13345],{},[503,27020,4321],{},[511,27022,27023,2265,27025],{},[484,27024,14590],{},[503,27026,14572],{},[480,27028,14623],{},[480,27030,27031,14628],{},[484,27032,14491],{},[480,27034,27035,14634],{},[484,27036,14633],{},[495,27038,14638],{"id":14637},[480,27040,14641],{},[480,27042,27043],{},[484,27044,14646],{},[508,27046,27047,27049,27051],{},[511,27048,14651],{},[511,27050,14654],{},[511,27052,14657],{},[480,27054,27055],{},[484,27056,14396],{},[1150,27058,27059,27061,27065,27071,27073,27093],{},[511,27060,14666],{},[511,27062,14669,27063,792],{},[484,27064,14672],{},[511,27066,1166,27067,2675,27069,792],{},[484,27068,14677],{},[484,27070,14680],{},[511,27072,14683],{},[511,27074,14686,27075,14689,27077,14577,27079],{},[484,27076,13443],{},[484,27078,14576],{},[508,27080,27081,27087],{},[511,27082,27083,2265,27085],{},[484,27084,13345],{},[503,27086,13348],{},[511,27088,27089,2265,27091],{},[484,27090,14590],{},[503,27092,13461],{},[511,27094,1166,27095,792],{},[484,27096,14710],{},[480,27098,27099],{},[484,27100,14455],{},[1150,27102,27103],{},[511,27104,14719,27105],{},[508,27106,27107,27113],{},[511,27108,27109,2265,27111],{},[484,27110,13345],{},[503,27112,4321],{},[511,27114,27115,2265,27117],{},[484,27116,14590],{},[503,27118,14734],{},[480,27120,14737],{},[480,27122,27123,14742],{},[484,27124,14491],{},[480,27126,27127,14748],{},[484,27128,14747],{},[495,27130,14752],{"id":14751},[480,27132,14755],{},[480,27134,27135,14761,27137,14765],{},[484,27136,14760],{},[484,27138,14764],{},[480,27140,27141],{},[484,27142,14396],{},[480,27144,14772],{},[1150,27146,27147,27161,27167,27175,27217],{},[511,27148,14777,27149,27157,14790,27159,2476],{},[550,27150,27151],{"className":2586,"code":14780,"language":2578,"meta":555,"style":555},[503,27152,27153],{"__ignoreMap":555},[559,27154,27155],{"class":561,"line":562},[559,27156,14780],{},[14788,27158],{},[503,27160,13356],{},[511,27162,14795,27163,14799,27165,792],{},[484,27164,14798],{},[503,27166,14802],{},[511,27168,14805,27169,14809,27171,14812,27173,792],{},[484,27170,14808],{},[503,27172,13356],{},[503,27174,14802],{},[511,27176,14817,27177,14821,27179,14824,27181],{},[503,27178,14820],{},[503,27180,14802],{},[550,27182,27183],{"className":14827,"code":14828,"language":14829,"meta":555,"style":555},[503,27184,27185,27189,27193,27197,27201,27205,27209,27213],{"__ignoreMap":555},[559,27186,27187],{"class":561,"line":562},[559,27188,14836],{},[559,27190,27191],{"class":561,"line":569},[559,27192,14841],{},[559,27194,27195],{"class":561,"line":584},[559,27196,14846],{},[559,27198,27199],{"class":561,"line":595},[559,27200,14851],{},[559,27202,27203],{"class":561,"line":607},[559,27204,14856],{},[559,27206,27207],{"class":561,"line":618},[559,27208,14861],{},[559,27210,27211],{"class":561,"line":629},[559,27212,14866],{},[559,27214,27215],{"class":561,"line":640},[559,27216,14871],{},[511,27218,14874],{},[480,27220,27221],{},[484,27222,14879],{},[1150,27224,27225,27239,27265,27405,27437],{},[511,27226,14884,27227,27235,14790,27237,2476],{},[550,27228,27229],{"className":2586,"code":14887,"language":2578,"meta":555,"style":555},[503,27230,27231],{"__ignoreMap":555},[559,27232,27233],{"class":561,"line":562},[559,27234,14887],{},[14788,27236],{},[503,27238,13406],{},[511,27240,14795,27241,14902,27243,2265,27245,14908,27247,14912,27249,27261,14929,27263,14933],{},[484,27242,14798],{},[484,27244,14905],{},[503,27246,14802],{},[503,27248,14911],{},[508,27250,27251,27255],{},[511,27252,14917,27253,2476],{},[503,27254,13406],{},[511,27256,27257,2146,27259,792],{},[503,27258,2808],{},[503,27260,14926],{},[14788,27262],{},[503,27264,14932],{},[511,27266,14936,27267,14940,27269],{},[503,27268,14939],{},[550,27270,27271],{"className":14943,"code":14944,"language":14945,"meta":555,"style":555},[503,27272,27273,27293,27313,27317,27327,27349,27363,27375,27391,27395,27399],{"__ignoreMap":555},[559,27274,27275,27277,27279,27281,27283,27285,27287,27289,27291],{"class":561,"line":562},[559,27276,14952],{"class":3422},[559,27278,14955],{"class":576},[559,27280,14958],{"class":603},[559,27282,14961],{"class":576},[559,27284,14024],{"class":3422},[559,27286,14966],{"class":565},[559,27288,14969],{"class":576},[559,27290,14972],{"class":580},[559,27292,14975],{"class":576},[559,27294,27295,27297,27299,27301,27303,27305,27307,27309,27311],{"class":561,"line":569},[559,27296,14952],{"class":3422},[559,27298,14955],{"class":576},[559,27300,14984],{"class":603},[559,27302,14961],{"class":576},[559,27304,14024],{"class":3422},[559,27306,14966],{"class":565},[559,27308,14969],{"class":576},[559,27310,14995],{"class":580},[559,27312,14975],{"class":576},[559,27314,27315],{"class":561,"line":584},[559,27316,944],{"emptyLinePlaceholder":167},[559,27318,27319,27321,27323,27325],{"class":561,"line":595},[559,27320,15006],{"class":3422},[559,27322,15009],{"class":3422},[559,27324,15012],{"class":565},[559,27326,15015],{"class":576},[559,27328,27329,27331,27333,27335,27337,27339,27341,27343,27345,27347],{"class":561,"line":607},[559,27330,15020],{"class":3422},[559,27332,14955],{"class":576},[559,27334,15025],{"class":603},[559,27336,14961],{"class":576},[559,27338,14024],{"class":3422},[559,27340,15032],{"class":3422},[559,27342,15035],{"class":3422},[559,27344,14969],{"class":576},[559,27346,15040],{"class":580},[559,27348,14975],{"class":576},[559,27350,27351,27353,27355,27357,27359,27361],{"class":561,"line":618},[559,27352,15020],{"class":3422},[559,27354,15049],{"class":603},[559,27356,15052],{"class":3422},[559,27358,15032],{"class":3422},[559,27360,15057],{"class":565},[559,27362,15060],{"class":576},[559,27364,27365,27367,27369,27371,27373],{"class":561,"line":629},[559,27366,15020],{"class":3422},[559,27368,15067],{"class":603},[559,27370,15052],{"class":3422},[559,27372,15072],{"class":565},[559,27374,15075],{"class":576},[559,27376,27377,27379,27381,27383,27385,27387,27389],{"class":561,"line":640},[559,27378,15080],{"class":3422},[559,27380,15083],{"class":565},[559,27382,15086],{"class":576},[559,27384,15089],{"class":603},[559,27386,15092],{"class":3422},[559,27388,15095],{"class":603},[559,27390,15098],{"class":576},[559,27392,27393],{"class":561,"line":651},[559,27394,15103],{"class":576},[559,27396,27397],{"class":561,"line":660},[559,27398,944],{"emptyLinePlaceholder":167},[559,27400,27401,27403],{"class":561,"line":669},[559,27402,12951],{"class":565},[559,27404,15060],{"class":576},[511,27406,14795,27407,13810,27409,3075,27411],{},[484,27408,15118],{},[484,27410,15121],{},[508,27412,27413,27417,27423,27427,27433],{},[511,27414,27415,15129],{},[484,27416,15128],{},[511,27418,27419,15135,27421,1343],{},[484,27420,15134],{},[503,27422,15138],{},[511,27424,27425,15144],{},[484,27426,15143],{},[511,27428,27429,2265,27431,792],{},[484,27430,15149],{},[503,27432,14939],{},[511,27434,27435,15157],{},[484,27436,15156],{},[511,27438,1166,27439,15163],{},[484,27440,15162],{},[480,27442,27443],{},[484,27444,15168],{},[508,27446,27447,27449,27451,27455],{},[511,27448,15173],{},[511,27450,15176],{},[511,27452,15179,27453,792],{},[503,27454,3347],{},[511,27456,15184],{},[495,27458,15188],{"id":15187},[480,27460,15191],{},[480,27462,27463],{},[484,27464,15196],{},[508,27466,27467,27469,27471,27473],{},[511,27468,15201],{},[511,27470,15204],{},[511,27472,15207],{},[511,27474,15210],{},[480,27476,27477],{},[484,27478,14396],{},[480,27480,15217,27481,15220],{},[503,27482,13356],{},[1150,27484,27485,27489,27501,27525,27537,27587,27619],{},[511,27486,27487,15228],{},[484,27488,15227],{},[511,27490,27491,27493],{},[484,27492,15233],{},[550,27494,27495],{"className":2586,"code":15236,"language":2578,"meta":555,"style":555},[503,27496,27497],{"__ignoreMap":555},[559,27498,27499],{"class":561,"line":562},[559,27500,15236],{},[511,27502,27503,27505],{},[484,27504,15247],{},[550,27506,27507],{"className":15250,"code":15251,"language":15252,"meta":555,"style":555},[503,27508,27509],{"__ignoreMap":555},[559,27510,27511,27513,27515,27517,27519,27521,27523],{"class":561,"line":562},[559,27512,15259],{"class":565},[559,27514,15262],{"class":580},[559,27516,15265],{"class":576},[559,27518,15259],{"class":565},[559,27520,15270],{"class":580},[559,27522,15273],{"class":580},[559,27524,15276],{"class":603},[511,27526,27527,15282,27529,14809,27531,3706,27533,15290,27535,1343],{},[484,27528,15281],{},[484,27530,14808],{},[503,27532,13356],{},[503,27534,15289],{},[503,27536,15293],{},[511,27538,27539,15299,27541,657,27543],{},[484,27540,15298],{},[503,27542,15302],{},[550,27544,27545],{"className":15305,"code":15306,"language":15307,"meta":555,"style":555},[503,27546,27547,27551,27555,27559,27563,27567,27571,27575,27579,27583],{"__ignoreMap":555},[559,27548,27549],{"class":561,"line":562},[559,27550,15314],{},[559,27552,27553],{"class":561,"line":569},[559,27554,15319],{},[559,27556,27557],{"class":561,"line":584},[559,27558,15324],{},[559,27560,27561],{"class":561,"line":595},[559,27562,15329],{},[559,27564,27565],{"class":561,"line":607},[559,27566,15334],{},[559,27568,27569],{"class":561,"line":618},[559,27570,944],{"emptyLinePlaceholder":167},[559,27572,27573],{"class":561,"line":629},[559,27574,15343],{},[559,27576,27577],{"class":561,"line":640},[559,27578,15348],{},[559,27580,27581],{"class":561,"line":651},[559,27582,15353],{},[559,27584,27585],{"class":561,"line":660},[559,27586,15103],{},[511,27588,27589,27591],{},[484,27590,15362],{},[550,27592,27593],{"className":15250,"code":15365,"language":15252,"meta":555,"style":555},[503,27594,27595,27605,27611],{"__ignoreMap":555},[559,27596,27597,27599,27601,27603],{"class":561,"line":562},[559,27598,15372],{"class":565},[559,27600,15375],{"class":603},[559,27602,15378],{"class":580},[559,27604,15381],{"class":580},[559,27606,27607,27609],{"class":561,"line":569},[559,27608,15307],{"class":565},[559,27610,15388],{"class":603},[559,27612,27613,27615,27617],{"class":561,"line":584},[559,27614,15393],{"class":565},[559,27616,15396],{"class":580},[559,27618,15399],{"class":580},[511,27620,27621,27623],{},[484,27622,15404],{},[550,27624,27625],{"className":15250,"code":15407,"language":15252,"meta":555,"style":555},[503,27626,27627,27637],{"__ignoreMap":555},[559,27628,27629,27631,27633,27635],{"class":561,"line":562},[559,27630,15414],{"class":565},[559,27632,15270],{"class":580},[559,27634,15419],{"class":580},[559,27636,15422],{"class":603},[559,27638,27639,27641,27643,27645],{"class":561,"line":569},[559,27640,15427],{"class":565},[559,27642,15430],{"class":603},[559,27644,15433],{"class":603},[559,27646,15436],{"class":580},[480,27648,27649],{},[484,27650,14455],{},[1150,27652,27653,27657,27715,27723,27821,27849,27911,27943],{},[511,27654,27655,15447],{},[484,27656,15227],{},[511,27658,27659,27661],{},[484,27660,15452],{},[550,27662,27663],{"className":15250,"code":15455,"language":15252,"meta":555,"style":555},[503,27664,27665,27681,27695,27705],{"__ignoreMap":555},[559,27666,27667,27669,27671,27673,27675,27677,27679],{"class":561,"line":562},[559,27668,15259],{"class":565},[559,27670,15262],{"class":580},[559,27672,15265],{"class":576},[559,27674,15259],{"class":565},[559,27676,15270],{"class":580},[559,27678,15273],{"class":580},[559,27680,15276],{"class":603},[559,27682,27683,27685,27687,27689,27691,27693],{"class":561,"line":569},[559,27684,15478],{"class":565},[559,27686,15481],{"class":603},[559,27688,15484],{"class":580},[559,27690,15487],{"class":3422},[559,27692,15490],{"class":565},[559,27694,15493],{"class":580},[559,27696,27697,27699,27701,27703],{"class":561,"line":584},[559,27698,15259],{"class":565},[559,27700,15270],{"class":580},[559,27702,15502],{"class":603},[559,27704,15505],{"class":580},[559,27706,27707,27709,27711,27713],{"class":561,"line":595},[559,27708,2622],{"class":565},[559,27710,15270],{"class":580},[559,27712,15514],{"class":603},[559,27714,15517],{"class":580},[511,27716,27717,15282,27719,15524,27721,15527],{},[484,27718,15281],{},[503,27720,13406],{},[503,27722,2808],{},[511,27724,27725,15536,27729],{},[484,27726,15532,27727],{},[503,27728,15535],{},[550,27730,27731],{"className":14943,"code":15539,"language":14945,"meta":555,"style":555},[503,27732,27733,27745,27749,27753,27761,27769,27777,27785,27793,27797,27805,27809,27813,27817],{"__ignoreMap":555},[559,27734,27735,27737,27739,27741,27743],{"class":561,"line":562},[559,27736,15546],{"class":603},[559,27738,792],{"class":576},[559,27740,15551],{"class":603},[559,27742,15052],{"class":3422},[559,27744,15556],{"class":576},[559,27746,27747],{"class":561,"line":569},[559,27748,15561],{"class":576},[559,27750,27751],{"class":561,"line":584},[559,27752,15566],{"class":576},[559,27754,27755,27757,27759],{"class":561,"line":595},[559,27756,15571],{"class":576},[559,27758,15574],{"class":580},[559,27760,3443],{"class":576},[559,27762,27763,27765,27767],{"class":561,"line":607},[559,27764,15581],{"class":576},[559,27766,15584],{"class":580},[559,27768,3443],{"class":576},[559,27770,27771,27773,27775],{"class":561,"line":618},[559,27772,15591],{"class":576},[559,27774,15594],{"class":580},[559,27776,3443],{"class":576},[559,27778,27779,27781,27783],{"class":561,"line":629},[559,27780,15601],{"class":576},[559,27782,15604],{"class":580},[559,27784,3443],{"class":576},[559,27786,27787,27789,27791],{"class":561,"line":640},[559,27788,15611],{"class":576},[559,27790,15040],{"class":580},[559,27792,3443],{"class":576},[559,27794,27795],{"class":561,"line":651},[559,27796,15620],{"class":576},[559,27798,27799,27801,27803],{"class":561,"line":660},[559,27800,15625],{"class":576},[559,27802,15628],{"class":580},[559,27804,3443],{"class":576},[559,27806,27807],{"class":561,"line":669},[559,27808,15635],{"class":576},[559,27810,27811],{"class":561,"line":676},[559,27812,15640],{"class":576},[559,27814,27815],{"class":561,"line":684},[559,27816,3496],{"class":576},[559,27818,27819],{"class":561,"line":692},[559,27820,15103],{"class":576},[511,27822,27823,27825],{},[484,27824,15653],{},[550,27826,27827],{"className":15250,"code":15656,"language":15252,"meta":555,"style":555},[503,27828,27829,27837,27843],{"__ignoreMap":555},[559,27830,27831,27833,27835],{"class":561,"line":562},[559,27832,15663],{"class":565},[559,27834,15666],{"class":580},[559,27836,15669],{"class":580},[559,27838,27839,27841],{"class":561,"line":569},[559,27840,15663],{"class":565},[559,27842,15676],{"class":580},[559,27844,27845,27847],{"class":561,"line":584},[559,27846,15663],{"class":565},[559,27848,15683],{"class":580},[511,27850,27851,15688,27853,657,27855],{},[484,27852,15298],{},[503,27854,15302],{},[550,27856,27857],{"className":15305,"code":15693,"language":15307,"meta":555,"style":555},[503,27858,27859,27863,27867,27871,27875,27879,27883,27887,27891,27895,27899,27903,27907],{"__ignoreMap":555},[559,27860,27861],{"class":561,"line":562},[559,27862,15314],{},[559,27864,27865],{"class":561,"line":569},[559,27866,15319],{},[559,27868,27869],{"class":561,"line":584},[559,27870,15324],{},[559,27872,27873],{"class":561,"line":595},[559,27874,944],{"emptyLinePlaceholder":167},[559,27876,27877],{"class":561,"line":607},[559,27878,15343],{},[559,27880,27881],{"class":561,"line":618},[559,27882,15720],{},[559,27884,27885],{"class":561,"line":629},[559,27886,15725],{},[559,27888,27889],{"class":561,"line":640},[559,27890,15730],{},[559,27892,27893],{"class":561,"line":651},[559,27894,15735],{},[559,27896,27897],{"class":561,"line":660},[559,27898,15740],{},[559,27900,27901],{"class":561,"line":669},[559,27902,15745],{},[559,27904,27905],{"class":561,"line":676},[559,27906,15353],{},[559,27908,27909],{"class":561,"line":684},[559,27910,15103],{},[511,27912,27913,27915],{},[484,27914,15362],{},[550,27916,27917],{"className":15250,"code":15365,"language":15252,"meta":555,"style":555},[503,27918,27919,27929,27935],{"__ignoreMap":555},[559,27920,27921,27923,27925,27927],{"class":561,"line":562},[559,27922,15372],{"class":565},[559,27924,15375],{"class":603},[559,27926,15378],{"class":580},[559,27928,15381],{"class":580},[559,27930,27931,27933],{"class":561,"line":569},[559,27932,15307],{"class":565},[559,27934,15388],{"class":603},[559,27936,27937,27939,27941],{"class":561,"line":584},[559,27938,15393],{"class":565},[559,27940,15396],{"class":580},[559,27942,15399],{"class":580},[511,27944,27945,27947],{},[484,27946,15404],{},[550,27948,27949],{"className":15250,"code":15407,"language":15252,"meta":555,"style":555},[503,27950,27951,27961],{"__ignoreMap":555},[559,27952,27953,27955,27957,27959],{"class":561,"line":562},[559,27954,15414],{"class":565},[559,27956,15270],{"class":580},[559,27958,15419],{"class":580},[559,27960,15422],{"class":603},[559,27962,27963,27965,27967,27969],{"class":561,"line":569},[559,27964,15427],{"class":565},[559,27966,15430],{"class":603},[559,27968,15433],{"class":603},[559,27970,15436],{"class":580},[480,27972,27973,15819],{},[484,27974,15818],{},[495,27976,15823],{"id":15822},[480,27978,27979],{},[484,27980,15828],{},[508,27982,27983,27993],{},[511,27984,27985,15836,27987,13444,27989,4352,27991,15843],{},[484,27986,15835],{},[484,27988,13454],{},[503,27990,13348],{},[503,27992,13461],{},[511,27994,27995,15849,27997,13444,27999,4352,28001,823,28003,1343],{},[484,27996,15848],{},[484,27998,13443],{},[503,28000,4321],{},[503,28002,13450],{},[503,28004,14340],{},[480,28006,28007],{},[484,28008,15862],{},[13479,28010,28011,28023],{},[13482,28012,28013],{},[13485,28014,28015,28017,28019,28021],{},[13488,28016,15871],{},[13488,28018,15874],{},[13488,28020,15877],{},[13488,28022,2156],{},[13501,28024,28025,28045,28065,28085,28105,28119],{},[13485,28026,28027,28031,28037,28043],{},[13506,28028,28029],{},[484,28030,15888],{},[13506,28032,15891,28033,13447,28035],{},[503,28034,14265],{},[503,28036,13461],{},[13506,28038,15891,28039,13447,28041],{},[503,28040,14269],{},[503,28042,13450],{},[13506,28044,15904],{},[13485,28046,28047,28051,28057,28063],{},[13506,28048,28049],{},[484,28050,15911],{},[13506,28052,15891,28053,13447,28055],{},[503,28054,14265],{},[503,28056,13461],{},[13506,28058,15891,28059,13447,28061],{},[503,28060,14269],{},[503,28062,13450],{},[13506,28064,15926],{},[13485,28066,28067,28071,28077,28083],{},[13506,28068,28069],{},[484,28070,15933],{},[13506,28072,15891,28073,13447,28075],{},[503,28074,14265],{},[503,28076,13461],{},[13506,28078,15891,28079,13447,28081],{},[503,28080,14269],{},[503,28082,14572],{},[13506,28084,15926],{},[13485,28086,28087,28091,28097,28103],{},[13506,28088,28089],{},[484,28090,14672],{},[13506,28092,15891,28093,13447,28095],{},[503,28094,14265],{},[503,28096,13461],{},[13506,28098,15891,28099,13447,28101],{},[503,28100,14269],{},[503,28102,14734],{},[13506,28104,15926],{},[13485,28106,28107,28111,28115,28117],{},[13506,28108,28109],{},[484,28110,15974],{},[13506,28112,15977,28113,15980],{},[503,28114,13461],{},[13506,28116,15983],{},[13506,28118,15986],{},[13485,28120,28121,28125,28129,28131],{},[13506,28122,28123],{},[484,28124,15993],{},[13506,28126,15996,28127],{},[503,28128,13461],{},[13506,28130,16001],{},[13506,28132,16004],{},[480,28134,16007,28135,16011,28137,792],{},[484,28136,16010],{},[484,28138,16014],{},[495,28140,1704],{"id":1703},[480,28142,16019],{},[480,28144,1714],{},[1716,28146,16024],{},{"title":555,"searchDepth":584,"depth":584,"links":28148},[28149],{"id":14148,"depth":569,"text":14143,"children":28150},[28151,28152,28153,28154,28155,28156,28157,28158],{"id":14160,"depth":584,"text":14161},{"id":14345,"depth":584,"text":14346},{"id":14511,"depth":584,"text":14512},{"id":14637,"depth":584,"text":14638},{"id":14751,"depth":584,"text":14752},{"id":15187,"depth":584,"text":15188},{"id":15822,"depth":584,"text":15823},{"id":1703,"depth":584,"text":1704},{},{"title":14143,"description":16037},{"id":16044,"title":16045,"badge":12177,"body":28162,"description":16722,"extension":1763,"meta":28656,"navigation":167,"order":1535,"path":16724,"section":6,"seo":28657,"stem":16726,"__hash__":16727},{"type":473,"value":28163,"toc":28627},[28164,28166,28168,28174,28176,28178,28180,28210,28212,28216,28232,28234,28236,28270,28272,28274,28276,28302,28304,28322,28324,28340,28342,28360,28362,28364,28378,28382,28384,28386,28406,28408,28424,28426,28436,28438,28440,28442,28450,28455,28457,28459,28461,28469,28471,28473,28479,28533,28535,28551,28553,28555,28561,28563,28573,28579,28581,28583,28585,28589,28593,28597,28599,28601,28603,28605,28609,28611,28615,28617,28619,28621,28623,28625],[476,28165,16045],{"id":16050},[480,28167,16053],{},[480,28169,16056,28170,16060,28172,16064],{},[503,28171,16059],{},[503,28173,16063],{},[480,28175,16067],{},[495,28177,16071],{"id":16070},[480,28179,16074],{},[508,28181,28182,28189,28196,28203],{},[511,28183,28184,6911,28186],{},[484,28185,16081],{},[2267,28187,16084],{"href":16084,"rel":28188},[2270],[511,28190,28191,6911,28193],{},[484,28192,16090],{},[2267,28194,16093],{"href":16093,"rel":28195},[2270],[511,28197,28198,6911,28200],{},[484,28199,16099],{},[2267,28201,16102],{"href":16102,"rel":28202},[2270],[511,28204,28205,6911,28207,16113],{},[484,28206,16108],{},[2267,28208,16111],{"href":16111,"rel":28209},[2270],[480,28211,16116],{},[480,28213,28214],{},[484,28215,16121],{},[1150,28217,28218,28220,28224,28226,28228,28230],{},[511,28219,16126],{},[511,28221,16129,28222,792],{},[503,28223,16059],{},[511,28225,16134],{},[511,28227,16137],{},[511,28229,16140],{},[511,28231,16143],{},[495,28233,16147],{"id":16146},[480,28235,16150],{},[508,28237,28238,28246,28260,28264],{},[511,28239,28240,2265,28242,16160,28244,792],{},[484,28241,16157],{},[503,28243,16059],{},[503,28245,16163],{},[511,28247,28248,16172,28252,779,28254,4042,28256,16182,28258,16185],{},[484,28249,919,28250,16171],{},[503,28251,16170],{},[503,28253,16175],{},[503,28255,16178],{},[503,28257,16181],{},[503,28259,16170],{},[511,28261,28262,16191],{},[484,28263,16190],{},[511,28265,28266,16197,28268,16201],{},[484,28267,16196],{},[503,28269,16200],{},[495,28271,16205],{"id":16204},[480,28273,16208],{},[732,28275,15888],{"id":16211},[1150,28277,28278,28280,28282,28290,28294,28300],{},[511,28279,16216],{},[511,28281,16219],{},[511,28283,2638,28284,4352,28286,4352,28288,792],{},[484,28285,16224],{},[484,28287,16227],{},[484,28289,16230],{},[511,28291,1166,28292,792],{},[484,28293,16235],{},[511,28295,16238,28296,16241,28298,792],{},[503,28297,16059],{},[484,28299,16244],{},[511,28301,16247],{},[732,28303,15911],{"id":16250},[1150,28305,28306,28308,28312,28318,28320],{},[511,28307,16255],{},[511,28309,2638,28310,16260],{},[484,28311,14407],{},[511,28313,1166,28314,2675,28316,792],{},[484,28315,16265],{},[484,28317,16268],{},[511,28319,16271],{},[511,28321,16274],{},[732,28323,15933],{"id":16277},[1150,28325,28326,28328,28334,28338],{},[511,28327,16282],{},[511,28329,16285,28330,4352,28332,792],{},[484,28331,13135],{},[484,28333,16230],{},[511,28335,1166,28336,16295],{},[484,28337,16294],{},[511,28339,16298],{},[732,28341,14672],{"id":16301},[1150,28343,28344,28348,28350,28356,28358],{},[511,28345,14669,28346,792],{},[484,28347,16308],{},[511,28349,16311],{},[511,28351,2638,28352,4352,28354,792],{},[484,28353,16227],{},[484,28355,16318],{},[511,28357,16271],{},[511,28359,16323],{},[495,28361,16327],{"id":16326},[480,28363,16330],{},[1150,28365,28366,28372],{},[511,28367,28368,16338,28370,792],{},[484,28369,16337],{},[503,28371,16059],{},[511,28373,28374,16346,28376,792],{},[484,28375,16345],{},[503,28377,16349],{},[480,28379,16352,28380,16356],{},[484,28381,16355],{},[480,28383,16359],{},[732,28385,16081],{"id":16362},[1150,28387,28388,28390,28396,28400,28404],{},[511,28389,16367],{},[511,28391,1166,28392,16373,28394,16377],{},[484,28393,16372],{},[484,28395,16376],{},[511,28397,16380,28398,16384],{},[484,28399,16383],{},[511,28401,1166,28402,16390],{},[484,28403,16389],{},[511,28405,16393],{},[732,28407,16090],{"id":16396},[1150,28409,28410,28412,28416,28420],{},[511,28411,16401],{},[511,28413,16404,28414,16408],{},[484,28415,16407],{},[511,28417,1166,28418,792],{},[484,28419,16413],{},[511,28421,16416,28422,792],{},[484,28423,1252],{},[732,28425,16422],{"id":16421},[1150,28427,28428,28430,28434],{},[511,28429,16427],{},[511,28431,7452,28432,16432],{},[484,28433,16407],{},[511,28435,16435],{},[495,28437,16439],{"id":16438},[480,28439,16442],{},[480,28441,16445],{},[508,28443,28444,28446,28448],{},[511,28445,16450],{},[511,28447,16453],{},[511,28449,16456],{},[480,28451,16459,28452,792],{},[2267,28453,16462],{"href":16462,"rel":28454},[2270],[495,28456,16467],{"id":16466},[480,28458,16470],{},[480,28460,16473],{},[480,28462,28463,16479,28465,16483,28467,792],{},[484,28464,16478],{},[484,28466,16482],{},[484,28468,16486],{},[480,28470,16489],{},[495,28472,16493],{"id":16492},[480,28474,16496,28475,14821,28477,3075],{},[503,28476,3695],{},[503,28478,2811],{},[550,28480,28481],{"className":3413,"code":16503,"language":3415,"meta":555,"style":555},[503,28482,28483,28489,28499,28509,28519,28529],{"__ignoreMap":555},[559,28484,28485,28487],{"class":561,"line":562},[559,28486,3530],{"class":565},[559,28488,3543],{"class":576},[559,28490,28491,28493,28495,28497],{"class":561,"line":569},[559,28492,3548],{"class":565},[559,28494,577],{"class":576},[559,28496,3641],{"class":580},[559,28498,3443],{"class":576},[559,28500,28501,28503,28505,28507],{"class":561,"line":584},[559,28502,3560],{"class":565},[559,28504,577],{"class":576},[559,28506,3652],{"class":580},[559,28508,3443],{"class":576},[559,28510,28511,28513,28515,28517],{"class":561,"line":595},[559,28512,3572],{"class":565},[559,28514,577],{"class":576},[559,28516,13695],{"class":580},[559,28518,3443],{"class":576},[559,28520,28521,28523,28525,28527],{"class":561,"line":607},[559,28522,3584],{"class":565},[559,28524,577],{"class":576},[559,28526,3589],{"class":580},[559,28528,3443],{"class":576},[559,28530,28531],{"class":561,"line":618},[559,28532,3596],{"class":576},[480,28534,16558],{},[550,28536,28537],{"className":2586,"code":16561,"language":2578,"meta":555,"style":555},[503,28538,28539,28543,28547],{"__ignoreMap":555},[559,28540,28541],{"class":561,"line":562},[559,28542,12995],{},[559,28544,28545],{"class":561,"line":569},[559,28546,16572],{},[559,28548,28549],{"class":561,"line":584},[559,28550,13738],{},[480,28552,16579],{},[495,28554,16583],{"id":16582},[480,28556,16586,28557,2146,28559,16591],{},[503,28558,16059],{},[503,28560,16349],{},[480,28562,16594],{},[508,28564,28565,28569],{},[511,28566,28567,16601],{},[503,28568,3712],{},[511,28570,28571,16607],{},[503,28572,16606],{},[480,28574,16610,28575,16613,28577,16617],{},[503,28576,16059],{},[503,28578,16616],{},[480,28580,16620],{},[495,28582,16624],{"id":16623},[480,28584,16627],{},[480,28586,28587,16633],{},[484,28588,16632],{},[480,28590,28591,16639],{},[484,28592,16638],{},[480,28594,28595,16645],{},[484,28596,16644],{},[495,28598,7895],{"id":7894},[732,28600,16651],{"id":16650},[480,28602,16654],{},[732,28604,16658],{"id":16657},[480,28606,16661,28607,16664],{},[484,28608,16482],{},[732,28610,16668],{"id":16667},[480,28612,16671,28613,16675],{},[503,28614,16674],{},[732,28616,16679],{"id":16678},[480,28618,16682],{},[495,28620,1704],{"id":1703},[480,28622,16687],{},[480,28624,1714],{},[1716,28626,16692],{},{"title":555,"searchDepth":584,"depth":584,"links":28628},[28629],{"id":16050,"depth":569,"text":16045,"children":28630},[28631,28632,28633,28639,28644,28645,28646,28647,28648,28649,28655],{"id":16070,"depth":584,"text":16071},{"id":16146,"depth":584,"text":16147},{"id":16204,"depth":584,"text":16205,"children":28634},[28635,28636,28637,28638],{"id":16211,"depth":595,"text":15888},{"id":16250,"depth":595,"text":15911},{"id":16277,"depth":595,"text":15933},{"id":16301,"depth":595,"text":14672},{"id":16326,"depth":584,"text":16327,"children":28640},[28641,28642,28643],{"id":16362,"depth":595,"text":16081},{"id":16396,"depth":595,"text":16090},{"id":16421,"depth":595,"text":16422},{"id":16438,"depth":584,"text":16439},{"id":16466,"depth":584,"text":16467},{"id":16492,"depth":584,"text":16493},{"id":16582,"depth":584,"text":16583},{"id":16623,"depth":584,"text":16624},{"id":7894,"depth":584,"text":7895,"children":28650},[28651,28652,28653,28654],{"id":16650,"depth":595,"text":16651},{"id":16657,"depth":595,"text":16658},{"id":16667,"depth":595,"text":16668},{"id":16678,"depth":595,"text":16679},{"id":1703,"depth":584,"text":1704},{},{"title":16045,"description":16722},{"id":16729,"title":16730,"badge":2134,"body":28659,"description":17053,"extension":1763,"meta":28883,"navigation":167,"order":1540,"path":17055,"section":6,"seo":28884,"stem":17057,"__hash__":17058},{"type":473,"value":28660,"toc":28871},[28661,28663,28665,28667,28669,28673,28675,28689,28691,28693,28695,28701,28703,28715,28717,28719,28721,28747,28749,28751,28765,28767,28769,28776,28778,28804,28806,28808,28810,28817,28819,28841,28843,28845,28847,28861,28863,28865,28867,28869],[476,28662,16730],{"id":16735},[480,28664,16738],{},[480,28666,16741],{},[495,28668,16745],{"id":16744},[480,28670,16748,28671,16751],{},[503,28672,34],{},[480,28674,16754],{},[1150,28676,28677,28681,28685],{},[511,28678,28679,16762],{},[484,28680,16761],{},[511,28682,28683,16768],{},[484,28684,16767],{},[511,28686,28687,16774],{},[484,28688,16773],{},[480,28690,16777],{},[495,28692,16781],{"id":16780},[480,28694,16784],{},[480,28696,28697],{},[484,28698,28699],{},[2267,28700,16792],{"href":16791},[480,28702,16795],{},[508,28704,28705,28707,28709,28711,28713],{},[511,28706,16800],{},[511,28708,16803],{},[511,28710,16806],{},[511,28712,16809],{},[511,28714,16812],{},[480,28716,16815],{},[495,28718,16819],{"id":16818},[480,28720,16822],{},[508,28722,28723,28731,28735,28739,28743],{},[511,28724,28725,16197,28727,16832,28729,16835],{},[484,28726,16829],{},[503,28728,3054],{},[503,28730,3153],{},[511,28732,28733,16841],{},[484,28734,16840],{},[511,28736,28737,16847],{},[484,28738,16846],{},[511,28740,28741,16853],{},[484,28742,16852],{},[511,28744,28745,16858],{},[484,28746,16803],{},[495,28748,16862],{"id":16861},[480,28750,16865],{},[508,28752,28753,28757,28761],{},[511,28754,28755,16873],{},[484,28756,16872],{},[511,28758,28759,16879],{},[484,28760,16878],{},[511,28762,28763,16885],{},[484,28764,16884],{},[495,28766,16889],{"id":16888},[480,28768,16892],{},[480,28770,28771],{},[484,28772,28773],{},[2267,28774,16900],{"href":190,"rel":28775},[2270],[480,28777,16903],{},[508,28779,28780,28784,28788,28792,28796,28800],{},[511,28781,28782,16911],{},[484,28783,16910],{},[511,28785,28786,16917],{},[484,28787,16916],{},[511,28789,28790,16923],{},[484,28791,16922],{},[511,28793,28794,16929],{},[484,28795,16928],{},[511,28797,28798,16935],{},[484,28799,16934],{},[511,28801,28802,16941],{},[484,28803,16940],{},[480,28805,16944],{},[495,28807,16948],{"id":16947},[480,28809,16951],{},[480,28811,28812],{},[484,28813,28814],{},[2267,28815,16960],{"href":16958,"rel":28816},[2270],[480,28818,16963],{},[508,28820,28821,28825,28829,28833,28837],{},[511,28822,28823,16971],{},[484,28824,16970],{},[511,28826,28827,16977],{},[484,28828,16976],{},[511,28830,28831,16982],{},[484,28832,1957],{},[511,28834,28835,16988],{},[484,28836,16987],{},[511,28838,28839,16994],{},[484,28840,16993],{},[480,28842,16997],{},[495,28844,17001],{"id":17000},[480,28846,17004],{},[508,28848,28849,28853,28857],{},[511,28850,28851,17012],{},[484,28852,17011],{},[511,28854,28855,17018],{},[484,28856,17017],{},[511,28858,28859,17024],{},[484,28860,17023],{},[495,28862,17028],{"id":17027},[480,28864,17031],{},[480,28866,17034],{},[480,28868,17037],{},[480,28870,17040],{},{"title":555,"searchDepth":584,"depth":584,"links":28872},[28873],{"id":16735,"depth":569,"text":16730,"children":28874},[28875,28876,28877,28878,28879,28880,28881,28882],{"id":16744,"depth":584,"text":16745},{"id":16780,"depth":584,"text":16781},{"id":16818,"depth":584,"text":16819},{"id":16861,"depth":584,"text":16862},{"id":16888,"depth":584,"text":16889},{"id":16947,"depth":584,"text":16948},{"id":17000,"depth":584,"text":17001},{"id":17027,"depth":584,"text":17028},{},{"title":16730,"description":17053},1793025057804]