CINXE.COM
Guides
<!DOCTYPE html><html class="__variable_881a5c __variable_f5b710 uncontained tailwind tailwind-no-preflight" lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5"/><link rel="preload" href="/vc-ap-vercel-docs/_next/static/media/569ce4b8f30dc480-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/vc-ap-vercel-docs/_next/static/media/93f479601ee12b01.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/97144c00692ff406.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/2c5627935258938b.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/e122c19221bacfe3.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/b7d8aa6d16e9a8ba.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/cb7d8ca32d5257d0.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/f9279b20fe5c4dab.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/c589ce71a3a0bc97.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/a9d0e0ecff9bde1a.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/dc1085e7e696021b.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/89a8888cb97a7d81.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/a9d9ee0d8351a1c0.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/90db48acd7590ba7.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/68876113637876f1.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/219a105f176f472e.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/d2abf3a96e70d994.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/02aeb390aa7f3018.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/6548cab375ff7513.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/d6b31c2705c7cc3c.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="stylesheet" href="/vc-ap-vercel-docs/_next/static/css/d2e4dc11461480df.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/vc-ap-vercel-docs/_next/static/chunks/webpack-2cced738b72b1e88.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN"/><script src="/vc-ap-vercel-docs/_next/static/chunks/4f6e7a91-c56b372de79fafa4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/95968-9caf3e5456b458c1.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/main-app-bdb92e2391e377fd.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/82288-a3103e5937e23d07.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/51552-3bdcbc8d7fac01de.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/71899-bee0ac76574c2329.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/55981-f504e7ec99d111ae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/10363-103c1d1503b2f45a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/32433-95d35670624bce73.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/75306-58debcdacc7aa317.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/72915-43a0dc7883c11e0e.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/56337-dcc136b2a6762900.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/31032-be931a5f0eb37519.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/51889-3ac40039a9eff36e.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/12415-d865e108dd254eac.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/app/%5BrootFlagsCode%5D/guides/layout-b9adca20c9ca1f42.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/10123-497ba2e911bf683a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/app/%5BrootFlagsCode%5D/not-found-9ce370a38d5162e9.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/13275-71bb23b83ee0eca9.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/53645-454ca107ce7a3fae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/42845-c32c0475f8f16cb7.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script src="/vc-ap-vercel-docs/_next/static/chunks/app/%5BrootFlagsCode%5D/guides/page-0c555392c6bfe1a5.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><meta name="next-size-adjust" content=""/><meta name="theme-color" content="#0a0a0a"/><meta name="color-scheme" content="dark light"/><title>Guides</title><meta content="How-tos and Tutorials." name="description"/><link href="https://vercel.com/guides" rel="canonical"/><meta content="https://vercel.com/guides" property="og:url"/><meta content="Guides" property="og:title"/><meta content="How-tos and Tutorials." property="og:description"/><meta content="https://vercel.com/api/dynamic-og?title=Guides" property="og:image:url"/><meta content="Guides" name="twitter:title"/><meta content="How-tos and Tutorials." name="twitter:description"/><meta content="summary_large_image" name="twitter:card"/><meta content="https://vercel.com/api/dynamic-og?title=Guides" name="twitter:image"/><title>Guides</title><meta name="description" content="How-tos and Tutorials."/><meta name="robots" content="index, follow"/><meta name="googlebot" content="index, max-video-preview:-1, max-image-preview:large, max-snippet:-1"/><meta name="trace-attributes" content="{"next.appdir":true}"/><meta property="og:title" content="Guides"/><meta property="og:description" content="How-tos and Tutorials."/><meta property="og:url" content="https://vercel.com/guides"/><meta property="og:site_name" content="Vercel Guides"/><meta property="og:locale" content="en_US"/><meta property="og:image" content="https://vercel.com/api/dynamic-og?title=Vercel%20Guides"/><meta property="og:image:alt" content="Vercel Guides"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="Guides"/><meta name="twitter:description" content="How-tos and Tutorials."/><meta name="twitter:image" content="https://vercel.com/api/dynamic-og?title=Vercel%20Guides"/><meta name="twitter:image:alt" content="Vercel Guides"/><link rel="shortcut icon" href="https://assets.vercel.com/image/upload/q_auto/front/favicon/vercel/favicon.ico"/><link rel="icon" href="https://assets.vercel.com/image/upload/q_auto/front/favicon/vercel/32x32.png"/><link rel="apple-touch-icon" href="https://assets.vercel.com/image/upload/q_auto/front/favicon/vercel/apple-touch-icon-180x180.png"/><script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><script src="/vc-ap-vercel-docs/_next/static/chunks/polyfills-42372ed130431b0a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" noModule=""></script></head><body><script>((e,t,r,n,o,i,a,s)=>{let u=document.documentElement,l=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&i?o.map(e=>i[e]||e):o;r?(u.classList.remove(...n),u.classList.add(i&&i[t]?i[t]:t)):u.setAttribute(e,t)}),r=t,s&&l.includes(r)&&(u.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=a&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}})("class","zeit-theme","system",null,["light","dark"],{"light":"light-theme","dark":"dark-theme"},true,true)</script><!--$--><!--/$--><div class="header_wrapper__b0EEc"><div class="header_header__TSZx7 header_primary__Xrxau" data-navigation-header=""><div class="header_topHeader__qMwEP"><div class="header_leftSection__FNUvw"><div class="header_logoSection__Gs4TB"><a aria-label="Vercel Docs Home" data-testid="header/navbar/logo" data-zone="same" class="link_link__hbWKh" href="/docs"><svg aria-label="Vercel logotype" height="18" role="img" viewBox="0 0 262 52" xmlns="http://www.w3.org/2000/svg"><path d="M59.8019 52L29.9019 0L0.00190544 52H59.8019ZM89.9593 49.6328L114.947 2.36365H104.139L86.9018 36.6921L69.6647 2.36365H58.8564L83.8442 49.6328H89.9593ZM260.25 2.36365V49.6329H251.302V2.36365H260.25ZM210.442 31.99C210.442 28.3062 211.211 25.0661 212.749 22.2699C214.287 19.4737 216.431 17.321 219.181 15.812C221.93 14.3029 225.146 13.5484 228.828 13.5484C232.09 13.5484 235.026 14.2585 237.636 15.6788C240.245 17.0991 242.319 19.2074 243.857 22.0036C245.395 24.7998 246.187 28.2174 246.234 32.2564V34.3202H219.88C220.066 37.2496 220.928 39.5576 222.466 41.2442C224.051 42.8864 226.171 43.7075 228.828 43.7075C230.505 43.7075 232.043 43.2637 233.441 42.376C234.839 41.4883 235.888 40.2899 236.587 38.7808L245.745 39.4466C244.626 42.7754 242.529 45.4385 239.453 47.4358C236.377 49.4331 232.835 50.4317 228.828 50.4317C225.146 50.4317 221.93 49.6772 219.181 48.1681C216.431 46.6591 214.287 44.5064 212.749 41.7102C211.211 38.914 210.442 35.6739 210.442 31.99ZM237.006 28.6612C236.68 25.7762 235.771 23.668 234.28 22.3365C232.789 20.9606 230.971 20.2726 228.828 20.2726C226.358 20.2726 224.354 21.0049 222.816 22.4696C221.278 23.9343 220.322 25.9982 219.95 28.6612H237.006ZM195.347 22.3365C196.838 23.5348 197.77 25.1993 198.143 27.3297L207.371 26.8637C207.044 24.1562 206.089 21.8039 204.505 19.8066C202.92 17.8093 200.869 16.278 198.353 15.2128C195.883 14.1032 193.157 13.5484 190.174 13.5484C186.492 13.5484 183.277 14.3029 180.527 15.812C177.777 17.321 175.634 19.4737 174.096 22.2699C172.558 25.0661 171.789 28.3062 171.789 31.99C171.789 35.6739 172.558 38.914 174.096 41.7102C175.634 44.5064 177.777 46.6591 180.527 48.1681C183.277 49.6772 186.492 50.4317 190.174 50.4317C193.25 50.4317 196.046 49.8769 198.563 48.7673C201.079 47.6133 203.13 45.9933 204.714 43.9072C206.299 41.8212 207.254 39.38 207.58 36.5838L198.283 36.1844C197.957 38.5367 197.048 40.3565 195.557 41.6436C194.065 42.8864 192.271 43.5078 190.174 43.5078C187.285 43.5078 185.048 42.5091 183.463 40.5118C181.879 38.5145 181.086 35.6739 181.086 31.99C181.086 28.3062 181.879 25.4656 183.463 23.4683C185.048 21.471 187.285 20.4723 190.174 20.4723C192.178 20.4723 193.902 21.0937 195.347 22.3365ZM149.955 14.3457H158.281L158.522 21.1369C159.113 19.2146 159.935 17.7218 160.988 16.6585C162.514 15.1166 164.642 14.3457 167.371 14.3457H170.771V21.6146H167.302C165.359 21.6146 163.763 21.8789 162.514 22.4075C161.311 22.9362 160.386 23.7732 159.739 24.9186C159.137 26.064 158.837 27.5178 158.837 29.2799V49.6328H149.955V14.3457ZM111.548 22.2699C110.01 25.0661 109.241 28.3062 109.241 31.99C109.241 35.6739 110.01 38.914 111.548 41.7102C113.086 44.5064 115.229 46.6591 117.979 48.1681C120.729 49.6772 123.944 50.4317 127.626 50.4317C131.634 50.4317 135.176 49.4331 138.252 47.4358C141.327 45.4385 143.425 42.7754 144.543 39.4466L135.385 38.7808C134.686 40.2899 133.638 41.4883 132.24 42.376C130.842 43.2637 129.304 43.7075 127.626 43.7075C124.97 43.7075 122.849 42.8864 121.265 41.2442C119.727 39.5576 118.865 37.2496 118.678 34.3202H145.032V32.2564C144.986 28.2174 144.194 24.7998 142.656 22.0036C141.118 19.2074 139.044 17.0991 136.434 15.6788C133.824 14.2585 130.888 13.5484 127.626 13.5484C123.944 13.5484 120.729 14.3029 117.979 15.812C115.229 17.321 113.086 19.4737 111.548 22.2699ZM133.079 22.3365C134.57 23.668 135.479 25.7762 135.805 28.6612H118.748C119.121 25.9982 120.076 23.9343 121.614 22.4696C123.152 21.0049 125.156 20.2726 127.626 20.2726C129.77 20.2726 131.587 20.9606 133.079 22.3365Z" fill="var(--geist-foreground)"></path></svg></a></div></div><div class="header_rightSection__9_IdE"><div class="flex flex-1 lg:hidden"><div class="cmdklaunch_wrapper__KrfZL"><button class="cmdklaunch_launcher__q063Y" type="button"><div class="stack_stack__iZkUS stack" data-version="v1" style="--stack-flex:initial;--stack-direction:row;--stack-align:center;--stack-justify:flex-start;--stack-padding:0px;--stack-gap:12px"><svg class="cmdklaunch_inputIcon__hiTMv" data-testid="geist-icon" height="16" stroke-linejoin="round" style="color:var(--ds-gray-700)" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M1.5 6.5C1.5 3.73858 3.73858 1.5 6.5 1.5C9.26142 1.5 11.5 3.73858 11.5 6.5C11.5 9.26142 9.26142 11.5 6.5 11.5C3.73858 11.5 1.5 9.26142 1.5 6.5ZM6.5 0C2.91015 0 0 2.91015 0 6.5C0 10.0899 2.91015 13 6.5 13C8.02469 13 9.42677 12.475 10.5353 11.596L13.9697 15.0303L14.5 15.5607L15.5607 14.5L15.0303 13.9697L11.596 10.5353C12.475 9.42677 13 8.02469 13 6.5C13 2.91015 10.0899 0 6.5 0Z" fill="currentColor"/></svg><span class="cmdklaunch_placeholder__LBF11">Search...</span></div><div class="stack_stack__iZkUS stack cmdklaunch_rightIcon__LA5qd" data-version="v1" style="--stack-flex:initial;--stack-direction:row;--stack-align:center;--stack-justify:flex-start;--stack-padding:0px;--stack-gap:0px"><kbd class="kbd_kbd__tWm25 kbd_small__ZiPfe cmdklaunch_keyboard__lDsZX" data-geist-kbd="" data-version="v1"><span>⌘ K</span></kbd></div></button></div></div><div class="header_avatarContainer__IPKhg"><!--$--><div class="header_avatarWrapper__0M74_"><div class="header_feedback__7JZ1Z"><button type="submit" class="button_base__BjwbK reset_reset__KRyvc button_button__81573 reset_reset__KRyvc button_secondary__kMMNc button_small__iQMBm button_invert__YNhnn" data-geist-button="" data-prefix="false" data-suffix="false" data-version="v1" style="--geist-icon-size:16px"><span class="button_content__1aE1_">Feedback</span></button></div><div class="header_placeholder__TztVN"></div></div><!--/$--></div><!--$--><!--/$--><style> @media (min-width: 951px) { #mobile-menu-toggle { display: none; } } </style><div class="mobile-menu_root__PX9iM" id="mobile-menu-toggle"><button aria-label="Open menu" class="toggle_mobileMenuToggle__W5y02" data-expanded="false" disabled="" style="opacity:0" type="button"><div class="toggle_bar__ySl8w toggle_disabled__4oWP9" data-position="top"></div><div class="toggle_bar__ySl8w toggle_disabled__4oWP9" data-position="bottom"></div></button></div></div></div></div></div><main class="border-solid border-b border-0 border-[var(--ds-gray-alpha-400)] mb-[90px]" data-soft-nav-target="1"><!--$--><div class="guides_guideBack__gICJW"><div class="guides_headerContainerStars__PvL_5"><div class="guides_headerTitle__udcZH"><h1>Guides</h1></div></div><div class="guides_contentWrapper__Djg4k"><div class="guides_guidesSBContainer__Z7HTh"><aside class="sidebar_sidebarGuides__aUUTP sidebar_sidebarWithStyledScrollbar__YrVco"><div><!--$--><div class="w-full max-w-xs"><ul class="flex flex-col space-y-4 p-0 mt-10"><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rgn7ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rgn7ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-account">Account, Projects & Teams</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rh77ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rh77ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-ai">AI</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rhn7ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rhn7ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-analytics">Analytics</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Ri77ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Ri77ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-api-cli">API & CLI</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rin7ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rin7ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-build">Build, Deployment & Git</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rj77ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rj77ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-databases">Databases & CMS</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rjn7ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rjn7ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-dns">Domains & DNS</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rk77ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rk77ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-middleware">Edge Middleware</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rkn7ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rkn7ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-edge">Edge Network & Caching</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rl77ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rl77ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-environment">Environment Variables</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rln7ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rln7ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-frameworks">Frameworks</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rm77ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rm77ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-functions">Functions</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rmn7ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rmn7ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-integrations">Integrations & Logs</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rn77ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rn77ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-limits">Limits, Usage and Pricing</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rnn7ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rnn7ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-observability">Observability</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Ro77ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Ro77ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-og-image-generation">OG Image Generation</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Ron7ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Ron7ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-security">Policy & Security</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rp77ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rp77ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-runtimes">Runtimes</label></div></li><li class="list-none cursor-pointer text-[var(--accents-6)] hover:text-[var(--geist-foreground)]"><div class="flex items-center space-x-4"><label class="checkbox_container__DIhWx" data-version="v1" for="checkbox-«Rpn7ar95nb»"><span class="checkbox_check__5FdyV"><input id="checkbox-«Rpn7ar95nb»" class="geist-sr-only checkbox_input__ydSbd" type="checkbox"/><span aria-hidden="true" class="checkbox_icon__6T6ug"><svg fill="none" height="16" viewBox="0 0 20 20" width="16"><path d="M14 7L8.5 12.5L6 10" stroke="var(--geist-background)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"></path><line stroke="var(--checkbox-color)" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" x1="5" x2="15" y1="10" y2="10"></line></svg></span></span></label><label class="text-sm font-normal cursor-pointer" for="topic-streaming">Streaming</label></div></li></ul></div><!--/$--></div></aside><div class="mt-10 sm:mt-0"><div class="withSidebar_mobileBar__GpWgP"><div class="withSidebar_mobileBarWrapper__yQOqq"><div aria-label="Toggle guides filters" class="withSidebar_showFiltersBtn__LZMte" role="button" tabindex="0"><svg class="withSidebar_filtersBtnStyle___ucxf" data-testid="geist-icon" height="16" stroke-linejoin="round" style="color:currentColor" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M10.75 5.5C11.7165 5.5 12.5 4.7165 12.5 3.75C12.5 2.7835 11.7165 2 10.75 2C9.7835 2 9 2.7835 9 3.75C9 4.7165 9.7835 5.5 10.75 5.5ZM10.75 0.75C12.1479 0.75 13.3225 1.70608 13.6555 3H15.25H16V4.5H15.25H13.6555C13.3225 5.79392 12.1479 6.75 10.75 6.75C9.35212 6.75 8.17754 5.79392 7.84451 4.5H0.75H0V3H0.75H7.84451C8.17754 1.70608 9.35212 0.75 10.75 0.75ZM15.25 13H16V11.5H15.25L8.15549 11.5C7.82245 10.2061 6.64788 9.25 5.25 9.25C3.85212 9.25 2.67755 10.2061 2.34451 11.5H0.75H0V13H0.75H2.34451C2.67755 14.2939 3.85212 15.25 5.25 15.25C6.64788 15.25 7.82246 14.2939 8.15549 13L15.25 13ZM7 12.2513C7 12.2509 7 12.2504 7 12.25C7 12.2496 7 12.2491 7 12.2487C6.99929 11.2828 6.21606 10.5 5.25 10.5C4.2835 10.5 3.5 11.2835 3.5 12.25C3.5 13.2165 4.2835 14 5.25 14C6.21606 14 6.99929 13.2172 7 12.2513Z" fill="currentColor"/></svg></div></div></div><div class="w-full max-w-[840px] pl-6 mt-7"><ul class="list-none p-0 mt-0 mb-8 w-full"><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/nextjs-multi-tenant-application"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Build a Multi-Tenant App with Custom Domains Using Next.js</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a full-stack application with multi-tenancy and custom domain support using Next.js App Router, Postgres, and the Vercel Domains API.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/vector-databases"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Vector Databases Explained</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about vector databases: what they are, 8 of the best examples and how to build an AI semantic search app with them.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/nextjs-prisma-postgres"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Build a Fullstack App with Next.js, Prisma, and Postgres</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a fullstack application with Next.js, Prisma, Postgres, and deploy to Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/fine-tuning-openai-nextjs"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Fine-tuning GPT with OpenAI, Next.js and Vercel AI SDK</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">In this guide, we will build Shooketh – an AI bot fine-tuned on Shakespeare's literary works with OpenAI GPT-4o and the Vercel AI SDK.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-react-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a React Site with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create your React app and deploy it with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/ai-agents"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">AI Agents on Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">This guide provides an overview of how to build and deploy AI agents on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/troubleshooting-function-250mb-limit"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Troubleshooting Build Error: “Serverless Function has exceeded the unzipped maximum size of 250 MB”</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to troubleshoot builds failing due to exceeding the maximum function size limit on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/is-sqlite-supported-in-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Is SQLite supported in Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">SQLite is a popular and fast database engine. In this article, we discuss whether it can be used in a serverless environment like Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-optimize-next.js-sitecore-jss"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Optimize Next.js + Sitecore JSS</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">This guide covers performance and usage considerations when building and deploying your Next.js and Sitecore JSS application.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/where-can-i-get-copies-of-my-vercel-invoices"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Where can I get copies of my Vercel Invoices?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about how you can get access to your Vercel invoices.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-block-bots-openai-gptbot"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to block bots from OpenAI GPTBot</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use the Vercel WAF to block, rate limit, or challenge traffic from OpenAI GPTBot.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-integrate-optimizely-feature-experimentation-next-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Integrate Optimizely Feature Experimentation with Next.js and Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">This guide covers setting up feature flags, implementing A/B tests, and optimizing performance using React Server Components and streaming.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-optimize-rsc-payload-size"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Optimize RSC Payload Size</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use React Server Components efficiently in Next.js to reduce cost and improve performance</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-are-my-vercel-builds-queued"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why are my Vercel builds queued?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about why your Vercel builds may be getting queued and how to resolve this.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/hosting-backend-apis"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Hosting your API on Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to build and scale performant APIs on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/corepack-errors-github-actions"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">“Cannot Find Matching Keyid” Errors or “Corepack/PNPM Not Found” on GitHub Actions</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">How to debug and address this corepack issue with GitHub Actions.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/what-should-i-do-if-i-receive-a-503-error-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">What should I do if I receive a 503 error on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about when Serverless Functions return a 503 status code and what can be done about them.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/cloudflare-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Should I use Cloudflare in front of Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on using Cloudflare together with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/optimizing-hard-navigations"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Optimizing hard navigations</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to improve performance for navigations that require a full page reload</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-increase-the-limit-of-redirects-or-use-dynamic-redirects-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I increase the limit of redirects or use dynamic redirects on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Instructions on how to use Serverless Functions to handle redirects on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/isr-observability-framework-discrepancies"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">ISR Observability: Framework Discrepancies </p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Understanding ISR Observability with Different Frameworks</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/branch-variables-and-domains-not-linked-to-cli-deployments"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why are my branch specific variables and domains not linked to my CLI deployments?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">How to link CLI deployments to the correct branch for use with custom environments and branch specific domains and environment variables</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/troubleshooting-vercel-cron-jobs"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Troubleshooting Vercel Cron Jobs</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to troubleshoot cron jobs that aren't being run or logged when using Vercel Cron Jobs.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-delete-a-vercel-team"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I delete a Vercel team?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on deleting a Vercel team.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/use-my-domain-bluesky"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Use your Vercel-owned domain on Bluesky</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to add your domain as your handle on Bluesky</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/export-domain-dns-records-via-api"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Export Your Domain's DNS Records from Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to utilize our API to export your domain's DNS records from Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-transfer-my-domain-out-of-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I transfer my domain out of Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to transfer a domain out of Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/integrate-vercel-and-contentstack"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Integrate Vercel and Contentstack for your Headless CMS</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Integrate Vercel with Contentstack, a headless CMS, to build and deploy dynamic, high-performance websites.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/sending-emails-from-an-application-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Sending Emails from an application on Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn best practices for sending emails from an application on Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-use-github-actions-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I use GitHub Actions with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use GitHub Actions to deploy to Vercel including support for GitHub Enterprise Server.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-allow-the-vercel-support-team-to-access-your-deployment-source-code"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to allow the Vercel Support team to access Your Deployments' source code?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">To help troubleshoot problems, you can allow the Vercel Support team to access your Deployments' source code.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-is-my-deployed-project-giving-404"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why is my deployed project showing a 404 error?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn the possible reasons a successful deployment gives a 404 error</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-nextjs-using-fathom-analytics-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using Fathom Analytics with Next.js</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to integrate Fathom Analytics with Next.js.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-aren-t-commits-triggering-deployments-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why aren't commits triggering deployments on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about why commits that you've pushed aren't triggering new Vercel Deployments. </p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-delete-an-individual-deployment"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I delete an individual deployment?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on deleting an individual deployment.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/custom-build-timeout"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I set a custom build timeout?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Wrap your Vercel build command with the timeout command to ensure builds terminate gracefully before exceeding Vercel’s maximum build duration.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/is-vercel-certified-under-dpf"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Is Vercel certified under DPF?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">The EU-U.S. Data Privacy Framework (DPF) enables secure data transfers from the EU, UK, and Switzerland to the U.S. Vercel is DPF certified, ensuring compliance with data protection laws. Learn more in our Privacy Notice.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-manage-vercel-dns-records"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I manage my Vercel DNS records?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to view, add, and remove Vercel DNS records.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/what-can-i-do-about-vercel-serverless-functions-timing-out"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">What can I do about Vercel Functions timing out?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about how you can fix Vercel Functions timing out.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/troubleshooting-sigkill-out-of-memory-errors"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Troubleshooting Builds Failing with SIGKILL or Out of Memory Errors</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to troubleshoot builds failing with SIGKILL or Out of Memory errors on a Vercel Deployment. </p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/change-caa-records-with-vercel-cname"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I change CAA records when using the Vercel CNAME record?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to change CAA records when using the Vercel CNAME record.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/optimizing-core-web-vitals-in-2024"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Optimizing Core Web Vitals in 2024</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to optimize Core Web Vitals for your site, including INP, CLS, LCP, and more.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/blue_green_deployments_on_vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Implementing Blue-Green Deployments on Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600"> This guide outlines how to implement blue-green deployments on Vercel, leveraging GitHub Actions for seamless and controlled application updates with minimal downtime.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/implementing_canary_deployments_on_vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Implementing Canary Deployments on Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">This guide explains how to set up canary deployments on Vercel, enabling developers to gradually roll out new versions to a subset of users with minimal risk by leveraging Skew Protection, Edge Config, and Middleware in Next.js.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/vercel-support-queue-time"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How long does it take to get a response from Vercel Support?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how long it might take Vercel Support to respond to your request.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-is-my-vercel-deployment-url-being-shortened"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why is my Vercel Deployment URL being shortened?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on why a Vercel Deployment URL may be shortened.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/npm-run-start-not-working"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why does npm run start not work on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on why commands that start servers may not work with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-i-set-a-cookie-from-my-vercel-project-subdomain-to-vercel-app"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I Set a Cookie from My Vercel Project Subdomain to Vercel.app?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">If you set a cookie at the level of `vercel.app` in your Vercel project, will the cookie be applied to `vercel.app`?</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-has-email-stopped-working"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why am I no longer receiving email after adding my domain to Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on why you may not be receiving email after verifying your domain with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-store-logs-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I store logs on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to store logs on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/does-vercel-support-ruby-on-rails-applications"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Does Vercel support Ruby on Rails applications?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how you can use Ruby on Rails with your frontend on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/creating-a-minimal-reproducible-example"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I create a minimal reproducible example for Vercel Support?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to create a minimal reproducible example for Vercel Support.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-i-get-a-refund-for-a-domain-purchased-or-renewed-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I get a refund for a domain purchased or renewed with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on getting a refund for a domain purchased or renewed with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-debug-a-502-error"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I debug a 502 error from a Vercel Serverless Function?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to debug a 502 error from a Vercel Serverless Function.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-resolve-alias-errors-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I resolve alias related errors on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on resolving alias related errors on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-i-route-based-on-letter-casing-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I route based on letter casing on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on whether or not it is possible to route based on letting casing with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-transfer-ownership-of-a-vercel-team"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I transfer ownership of a Vercel team?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to transfer ownership of a Vercel team.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-does-my-serverless-function-work-locally-but-not-when-deployed"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why does my Serverless Function work locally but not when deployed?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to troubleshoot your Serverless Functions. </p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/does-vercel-support-htaccess-files"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Does Vercel support .htaccess files?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on Vercel's support for .htaccess files.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-use-files-in-serverless-functions"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I use files in Vercel Functions?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to import files inside Serverless Functions on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/using-express-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using Express.js with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use Express.js in a Serverless environment.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/integrating_aws_secrets_manager_with_vercel_using_terraform"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Integrating AWS Secrets Manager with Vercel Using Terraform</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to seamlessly integrate AWS Secrets Manager with Vercel for enhanced security and efficiency in your web deployments using Terraform with our comprehensive guide.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/resolve-err-ssl-protocol-error-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I resolve "ERR_SSL_PROTOCOL_ERROR" with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information about how to resolve the "ERR_SSL_PROTOCOL_ERROR" error with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/per-environment-and-per-branch-build-commands"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Per-environment and per-branch Build Commands on Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Customize your commands for specific behaviors based on branch, environment, and more.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/is-vercel-pci-compliant"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Does Vercel support PCI compliance?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about Vercel and PCI compliance.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-generate-a-sitemap-for-my-nextjs-app-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I generate a “sitemap.xml” for my Next.js app on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Guidance on how to generate a "sitemap.xml" at build time and runtime.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/missing-routes-manifest-or-output-turborepo-nx"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Missing routes-manifest.json file or No Output Directory when using Turborepo or NX</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">How to solve the error `The file "/vercel/path0/apps/web/.next/routes-manifest.json" couldn't be found` or `No Output Directory` when using Turborepo or NX.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/access-nextjs-localhost-https-certificate-self-signed"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I run Next.js on localhost through HTTPS?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to create a self-signed certificate for use with local Next.js development.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/leave-page-confirmation-dialog-before-unload-nextjs-react"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to detect when user leaves the page and display a confirmation dialog?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use React and Next.js to show an alert asking the user to confirm they want to exit a page using the window beforeunload event listener.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-integrate-nextjs-with-prismic"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Integrate Next.js with Prismic's Headless CMS</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to connect Next.js with Prismic's CMS and deploy the integrated website to Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/share-vercel-cache-across-deployments-nextjs"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I share my Vercel cache across deployments?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to reuse cached responses across deployments with the Next.js App Router and the Vercel Data Cache.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-vercel-sponsor-my-open-source-project"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can Vercel sponsor my open source project?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how Vercel can sponsor your open source project and how to apply.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/does-streaming-affect-seo"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Does streaming affect SEO and can streamed content be indexed?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Streamed content does not affect SEO and will still be indexed by Google. Learn more in this guide.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/serverless-function-contains-invalid-runtime-error"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Serverless Function contains invalid runtime error</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">A guide for the "Serverless Function contains invalid runtime" error for Node.js v20 deployments.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/enhancing-security-for-redirects-and-rewrites"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Enhancing Security for Redirects and Rewrites</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how security measures in URI handling can prevent semantic attacks, where malicious hosts exploit redirects and rewrites to mimic trusted sites, leading to phishing and data breaches.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/sql-vs-nosql-databases"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">SQL vs. NoSQL databases</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about the differences between SQL and NoSQL, each with a unique set of benefits suited for particular use cases.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/mysql-vs-postgresql-vs-mongodb"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Comparing MySQL, PostgreSQL, and MongoDB </p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Explore database selection for optimal performance, focusing on SQL options like MySQL, PostgreSQL, and NoSQL's MongoDB. Consider data types, indexing, concurrency, scalability, replication, and ACID compliance for your application's needs.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/geolocation-script"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Load Google Analytics script based on user location in Next.js</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how you can conditionally load a Google Analytics script based on your user's location</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-build-ai-app"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to build an AI app: A step-by-step guide</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Discover how to build AI applications by using technologies like OpenAI's GPT-4 and Replicate's cloud-hosted models. </p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/what-s-vercel-s-policy-regarding-load-testing-deployments"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">What is Vercel's policy regarding load testing deployments?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about Vercel's policies regarding load tests.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/is-vercel-soc-2-compliant"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Does Vercel have a SOC 2 Type 2 attestation?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about Vercel and SOC 2 Type 2 attestation.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/loading-static-file-nextjs-api-route"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Load Data from a File in Next.js</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to display and read the contents of a static json file in your Next.js application.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/is-vercel-iso-27001-certified"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Is Vercel ISO 27001 certified?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Vercel is ISO 27001:2013 certified. See our certificate here.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/understanding-xss-attacks"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Understanding XSS Attacks</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about XSS attacks, their types, risks, and effective prevention strategies in this comprehensive guide for web security.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/understanding-cookies"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Understanding Cookies</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Discover how web cookies function, the importance of cookie attributes for security, and methods for inspecting and debugging cookies.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/understanding-csrf-attacks"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Understanding CSRF attacks</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Understand the mechanics and risks of Cross-Site Request Forgery (CSRF) attacks, and discover crucial development practices, like anti-CSRF tokens and appropriate use of HTTP methods, to fortify web applications against such threats</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/understanding-the-samesite-cookie-attribute"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Understanding the SameSite cookie attribute</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Explore the SameSite cookie attribute's significance in ensuring web security and user privacy to strike the right balance between security and usability.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/first-input-delay-vs-interaction-to-next-paint"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">First Input Delay (FID) vs. Interaction to Next Paint (INP)</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about the differences between FID and INP and how to optimize your website's INP score.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/openai-function-calling"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to use OpenAI Function Calling with Next.js and the Vercel AI SDK</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use OpenAI Function Calling and Vercel AI SDK in a Next.js Application to build AI-powered user experiences.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/geo-ip-headers-geolocation-vercel-functions"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I use geolocation IP headers?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to read geolocation headers on Vercel with Next.js or any frontend framework.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-are-my-build-logs-loading-infinitely-and-not-showing-up"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why are my Build Logs loading infinitely and not showing up?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">How to mitigate the issue when build logs aren't showing up?</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-allowlist-deployment-ip-address"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I allowlist IP addresses for a deployment?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">You can secure a deployment using Vercel Secure Compute to a specific list of IPs.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/what-is-a-large-language-model"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">What is a Large Language Model (LLM)?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Large Language Models are foundational machine learning models that use deep learning algorithms to process and understand natural language.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/displaying-article-headlines-in-social-previews"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Displaying headlines in social previews with Vercel OG</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Twitter/X is planning to remove headlines from social previews. To get around this limitation, Vercel OG offers a way to display article titles directly inside OG images.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/retrieval-augmented-generation"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">What is Retrieval Augmented Generation (RAG)?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Enhancing Language Models with Retrieval Augmented Generation (RAG): Overcoming Limits for Accuracy and Sourcing.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-is-my-account-deployment-blocked"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why has my account or deployment been paused?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on why a Vercel account or deployment may have been paused.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/cohere-nextjs-vercel-ai-sdk"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Building an AI Chatbot with Cohere, Next.js, and the Vercel AI SDK</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to build a generative AI application using Cohere, Next.js, and Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/nextjs-langchain-vercel-ai"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Building an AI chatbot with Next.js, Langchain, and OpenAI</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Dive into the world of LangChain.js and Next.js with our detailed guide. Learn how to set up a chatbot, structure outputs, integrate agents, and more. Perfect for developers looking to harness the power of AI in their web applications.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/vercel-reverse-proxy-rewrites-external"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I use Vercel as a reverse proxy?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use rewrites to proxy requests from Vercel to other deployments.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-i-use-a-proxy-on-top-of-my-vercel-deployment"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I use a proxy on top of my Vercel Deployment?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">General information about using an external proxy to serve a Vercel Deployment.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/posthog-nextjs-vercel-feature-flags-analytics"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using PostHog with the Next.js App Router and Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use PostHog with Next.js and Vercel to add analytics, feature flags, and more.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/securing-ai-app-rate-limiting"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Securing your AI applications with Rate Limiting</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to secure your AI applications with rate limiting using Vercel WAF and Vercel AI SDK</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-serve-multiple-projects-under-a-single-domain"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I serve multiple projects under a single domain?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to serve multiple Vercel projects from a single domain.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/library-sdk-compatible-with-vercel-edge-runtime-and-functions"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I make my library compatible with the Vercel Edge Functions runtime?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to make your library or SDK compatible with Vercel Edge Functions and Vercel Edge Middleware.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/session-store-nextjs-redis-vercel-kv"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Creating a Session Store with Redis and Next.js</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to durably store sessions with Redis and Next.js.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/add-rate-limiting-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Add Rate Limiting with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to implement rate limiting with Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/preview-deployment-suffix-without-vercel-nameservers"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I use Preview Deployment Suffix without switching to Vercel Nameservers?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to use Preview Deployment Suffix without Vercel Nameservers</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/using-sveltekit-form-actions"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using SvelteKit Form Actions</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">This guide explains how to use form actions in SvelteKit to handle form submissions, process form data, and enhance form interactions, providing seamless integration with the endpoint system.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/integration-guide-for-sap-composable-storefront"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Vercel Integration Guide for SAP Composable Storefront</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Integrate Vercel and SAP Composable Storefront with advanced rendering methods by leveraging the Vercel Build Output API</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/ml-models-hugging-face"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Use ML Models from Hugging Face in Vercel Functions</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">This guide provides step-by-step instructions on how to integrate ML models from Hugging Face into Vercel Functions</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/ai-powered-article-embeddings-with-chroma-and-gpt-4"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Building AI-powered Article Embeddings with Chroma and GPT-4</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">This guide provides step-by-step instructions on using Chroma and GPT-4 to build AI-powered article embeddings for tasks like similarity-based search and recommendation systems.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/debugging-and-troubleshooting-vercel-logs-with-sematext"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Debug and Troubleshoot Logs with Vercel and Sematext</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Automatically send all Vercel logs to Sematext to understand how your application is running.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-use-python-and-javascript-in-the-same-application"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I use Python and JavaScript in the same application?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Unlock the power of Python and JavaScript in your apps. Learn to integrate Flask and Next.js for dynamic frontends with AI-capable backends. Perfect for developers keen on hybrid programming.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/chained-openai-llm-calls-vercel-inngest"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Deploying Chained OpenAI LLM Calls to Vercel with the Inngest SDK</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Discover how to deploy chained OpenAI LLMs (GPT-4) to Vercel using Inngest SDK for improved conversational AI, multi-turn interactions, and error correction.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/react-context-state-management-nextjs"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using React Context for State Management with Next.js</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use React context inside Next.js in both client and server components for state management in your application.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-use-circleci-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I use CircleCI with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use CircleCI to deploy to Vercel with custom CI/CD.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/fix-shared-array-buffer-not-defined-nextjs-react"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I fix SharedArrayBuffer is not defined?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to enable cross-origin isolation to fix SharedArrayBuffer not being defined.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/wildcard-domain-without-vercel-nameservers"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I use wildcard domains without switching to Vercel Nameservers?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to use wildcard domains without Vercel Nameservers</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-setup-cron-jobs-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Setup Cron Jobs on Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to setup and use cron jobs on Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/using-private-dependencies-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I use private dependencies with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to use private dependencies with a Vercel deployment.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-improve-serverless-function-lambda-cold-start-performance-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I improve function cold start performance on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">This guide will help you improve the performance of your Vercel Functions and understand how to determine if the latency increase is from a cold start.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/what-can-i-do-when-i-run-into-build-output-limits-with-next-js-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">What can I do when I run into build output limits with Next.js on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to work with build output limits for Next.js on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/using-email-with-your-vercel-domain"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I send and receive emails with my Vercel purchased domain?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to send and receive emails with a domain purchased from Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-delete-my-vercel-account"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I delete my Vercel account?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on deleting a Vercel account.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-use-the-ignored-build-step-field-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I use the "Ignored Build Step" field on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Instructions on how to use the "Ignored Build Step" field to programmatically prevent a new deployment from being built.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/serverless-functions-and-smtp"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I use SMTP with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on SMTP and email usage in Serverless Functions.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-is-my-vercel-domain-unverified"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why is my Vercel domain not verified?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on why a Vercel domain may not be verified and how to verify it.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/building-ecommerce-sites-with-next-js-and-shopify"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Building Ecommerce Sites with Next.js and Shopify</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to integrate Next.js and Shopify together for the fastest storefronts using the Storefront GraphQL API.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/integrating-next-js-and-contentful-for-your-headless-cms"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Integrating Next.js and Contentful for your Headless CMS</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600"> Next.js with Contentful gives you the power to quickly build scalable dynamic static websites with improved search engine optimization (SEO) and enhanced performance.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-determine-which-vercel-deployment-introduced-an-issue"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to determine which Vercel Deployment introduced an issue?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Process to quickly determine when a deployment issue was introduced using the Vercel CLI</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-transfer-my-domain-to-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I transfer my domain to Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to transfer a domain to Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/unable-to-find-github-repository"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Unable to find GitHub repository</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">This is a guide to check GitHub permissions to ensure your Vercel account has sufficient access to import your repository.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-configure-the-cache-control-response-header-in-vercel-projects"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Configure the Cache-Control Response Header in Vercel Projects</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">After reviewing this guide, you will be able to set a cache-control header of any value to be returned when a specific page of your deployment is requested.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-add-password-protection-to-my-vercel-deployment"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I add password protection to my Vercel deployment?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about how to add password protection to your websites.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/best-practices-for-hosting-videos-on-vercel-nextjs-mp4-gif"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">What are the best practices for hosting videos on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn the ideal solutions for using video files like .mp4 and .gif on Vercel to prevent excess bandwidth consumption.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-use-special-characters-in-my-custom-domain"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I use special characters in my custom domain on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">How to resolve error 'The specified value "yöur-domaín.com" is not a fully qualified domain name' when using special characters for a custom domain in Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-get-notified-when-my-vercel-deployment-fails"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I get notified when my Vercel deployment fails?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">When your Vercel deployment fails, both a web notification and an email notification are sent to the creator of the deployment.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/storybook-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Deploying Storybook with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to deploy Storybook applications to Vercel in minutes.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-alias-a-preview-deployment-using-the-cli"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to alias a preview deployment using the CLI</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to automatically alias a Vercel preview deployment.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/connection-pooling-with-serverless-functions"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Connection Pooling with Serverless Functions</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn best practices for connecting to relational databases with Serverless Functions.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-running-another-cdn-on-top-of-vercel-is-not-recommended"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why is running another CDN on top of Vercel not recommended?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information about possible strategies when using a CDN on top of Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/application-authentication-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Application Authentication on Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn best practices for application authentication Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/using-a-headless-cms-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using a Headless CMS with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn best practices for using databases in a serverless environment with Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-upload-and-store-files-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Upload and Store Files with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to upload and store files with Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/ab-testing-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">A/B Testing on Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn best practices for A/B testing on Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-use-aws-sdk-environment-variables-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I use AWS SDK Environment Variables on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">How to use AWS SDK Environment Variables on Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-use-aws-s3-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I use AWS S3 with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Example how to use AWS S3 library on Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/zero-downtime-migration"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I migrate a site to Vercel without downtime?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information about how to assign a Vercel deployment to a domain without downtime.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/zero-downtime-migration-for-dns"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I do a "Zero Downtime" DNS migration to Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information about how to migrate your DNS records to Vercel without downtime.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-resolve-a-module-not-found-error"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I resolve a 'module not found' error?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on resolving a 'module not found' error.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-reduce-my-serverless-execution-usage-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I reduce my Serverless Execution usage on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information about how to reduce the usage of Serverless Functions on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/publish-and-subscribe-to-realtime-data-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Publish and Subscribe to Realtime Data on Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to upload and store files with Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-get-vercel-support"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">What is the best way to get support from Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to get help from Vercel Support through the available channels.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-reduce-my-build-time-with-next-js-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I reduce my build time with Next.js on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">When building a Next.js project with thousands of static pages, you may hit the maximum build time per deployment limit of 45 minutes. Learn some strategies for reducing your build times by reducing computation during each build.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/are-vercel-preview-deployment-indexed-by-search-engines"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Are Vercel Preview Deployments indexed by search engines?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on whether a Vercel Deployment will be indexed by search engines.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-run-end-to-end-tests-after-my-vercel-preview-deployment"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I run end-to-end tests after my Vercel Preview Deployment?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use the Vercel CLI in combination with your CI/CD provider to run end-to-end tests for every code change.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/using-vercel-cli-for-custom-workflows"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I use the Vercel CLI for custom workflows?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">You can use the Vercel CLI to deploy any application, including custom git providers and restricted source code.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/migrate-to-vercel-from-netlify"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Migrate to Vercel from Netlify</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Migrate your website's configuration from Netlify to Vercel</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-prevent-vercel-github-comments"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I prevent the Vercel for GitHub integration comments?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to prevent the Vercel for GitHub integration from adding comments.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-change-my-nameservers-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I change my Nameservers on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about how to change Nameservers for domains registered with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-enable-cors"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I enable CORS on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to enable CORS on Vercel Serverless Functions.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-i-get-a-fixed-ip-address"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I get a fixed IP address for my Vercel deployments?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">You can allowlist IP addresses with Vercel Secure Compute.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/do-vercel-serverless-functions-support-websocket-connections"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Do Vercel Serverless Functions support WebSocket connections?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on Vercel's support for WebSocket connections with Vercel Functions.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/does-vercel-support-yarn-2"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Does Vercel support Yarn 2?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on Vercel's support for Yarn 2.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/does-vercel-support-yarn-4"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Does Vercel support Yarn 4?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on Vercel's support for Yarn 4.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/does-vercel-support-yarn-3"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Does Vercel support Yarn 3?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on Vercel's support for Yarn 3.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-add-a-domain-using-the-vercel-api"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I add a domain using the Vercel API?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on adding a domain using the Vercel API.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-is-vercel-cli-asking-me-to-log-in"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why is Vercel CLI asking me to log in? </p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on why you may be getting prompted to log in to Vercel CLI.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-add-a-custom-build-step-to-my-project"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I add a custom build step to my project? </p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to add a custom build step for your project.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-remove-a-domain-from-my-vercel-account"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I remove a domain from my Vercel account?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to completely remove a domain from your Vercel account?</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-i-deploy-discord-bots-to-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I deploy Discord bots to Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about whether it's possible to deploy Discord Bots to Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-i-use-a-non-default-branch-for-production"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I use a non-default branch for production?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about whether setting a non-default branch as production is possible?</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-do-my-vercel-deployments-have-multiple-domains"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why do my Vercel deployments have multiple domains?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about why Vercel auto generates URLs for your deployments.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/pointing-subdomains-to-external-services"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I point a subdomain to a service outside of Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to make a subdomain available to a service outside of Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-resolve-a-process-env-ci-true-error"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I resolve a 'process.env.CI = true' error?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on resolving a 'process.env.CI = true' error.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-prerender-my-application-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I prerender my application on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to enable prerendering with your frontend framework on Vercel for better performance and SEO.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-i-use-bitbucket-data-center-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I use Bitbucket Data Center with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">You can use Bitbucket Data Center and Bitbucket Pipelines to deploy your application to Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-i-use-github-enterprise-server-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I use GitHub Enterprise Server with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">You can use GitHub Enterprise Server and GitHub Actions to deploy your application to Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-i-use-self-managed-gitlab-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I use self-managed GitLab with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">You can use self-managed GitLab and GitHub Pipelines to deploy your application to Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-use-bitbucket-pipelines-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I use Bitbucket Pipelines with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use Bitbucket Pipelines to deploy to Vercel including support for Bitbucket Data Center.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-use-gitlab-pipelines-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I use GitLab Pipelines with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use GitLab Pipelines to deploy to Vercel including support for self-managed GitLab.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-perform-vercel-redirects-based-on-query-strings"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I perform Vercel redirects based on query strings?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">When using redirects with the `vercel.json` or `next.config.js` configuration file, your URL may contain query parameters that you would like to use in your re-direction, this is possible with 2 different methods.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-bypass-vercel-body-size-limit-serverless-functions"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I bypass the 4.5MB body size limit of Vercel Serverless Functions?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to deal with the body size limit of Serverless Functions on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-lower-my-serverless-function-execution-time"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I lower my Vercel Function execution time?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to lower your Serverless Function execution time.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/wordpress-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using Headless WordPress with Next.js and Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use Headless WordPress with your Next.js application and deploy it to Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-you-deploy-based-on-tags-releases-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can you deploy based on tags/releases on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to deploy based on tags/releases on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-add-vercel-environment-variables"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I add environment variables to my Vercel project?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to add Environment Variables to your Vercel project.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-use-the-latest-npm-version-for-my-vercel-deployment"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I use the latest npm version for my Vercel Deployment?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use the latest npm version for Vercel deployments.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-i-redirect-from-a-subdomain-to-a-subpath"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I redirect from a subdomain to a subpath?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to redirect from your subdomain to a subpath on Vercel with a vercel.json file or with Next.js</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/does-vercel-support-docker-deployments"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Does Vercel support Docker deployments?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">While Vercel does not support deploying Docker images directly, you can use Docker as part of your development toolchain when building for Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-can-i-not-signup"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why am I unable to login or signup to the Vercel platform?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on what to do if you are experiencing issues logging in or signing up to the Vercel platform.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-get-the-raw-body-of-a-serverless-function"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I get the raw body of a Serverless Function?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to disable body parsing for Vercel Serverless Functions to enable reading the raw data from a POST request.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-to-move-a-domain-between-vercel-projects-with-zero-downtime"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to move a domain between Vercel projects with "Zero Downtime"?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information about how to move your domain between Vercel projects without downtime.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-locally-built-nextjs"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I deploy a locally built Next.js app to Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to deploy a locally built Next.js application to Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-yarn-monorepos-to-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Deploying a Monorepo Using Yarn Workspaces to Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">In this guide, you will deploy a monorepo that includes two frontend applications and one shared library with Yarn workspaces.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-move-a-domain-to-a-team"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I move a domain to a Vercel team?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to move domains between accounts on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-a-caa-record-be-added-to-a-subdomain-configured-with-cname"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can a CAA record be added to a Subdomain Configured with CNAME?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">This guide is for any users with requirements on customization of CAA records on subdomains.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-use-a-vercel-api-access-token"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I use a Vercel API Access Token?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">An Access Token is required in order to use the Vercel API. Tokens can be created and managed at the level of your account.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/integrating-terraform-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Integrating Terraform with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Understand the benefits of Terraform and how to set up the Integration with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/set-up-and-use-deploy-hooks-with-vercel-and-headless-cms"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to use Deploy Hooks with Vercel and a Headless CMS</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create your own Deploy Hooks to trigger automatic deployments on Vercel when using a Headless CMS.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/can-i-use-vercel-to-deploy-to-a-private-cloud"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I use Vercel to deploy to a private cloud?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about if it's possible to deploy to a private cloud with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/renewal-of-ssl-certificates-with-a-vercel-domain"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">When is the SSL Certificate on my Vercel Domain renewed?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information about the when renewal of a Vercel Domain's SSL certificate will be processed.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-brunch-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Brunch App with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Brunch app and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-middleman-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Middleman App with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Middleman app and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-solid-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Solid App with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Solidjs app and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-jekyll-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Jekyll Site with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Jekyll website and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-add-a-custom-domain-to-my-vercel-project"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I add a custom domain to my Vercel project?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to add a custom domain to your Vercel project. </p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/where-to-submit-feature-requests"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Where can I submit Vercel feature requests?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to make feature requests for the Vercel platform.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/what-is-vercel-green-energy-policy"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">What is Vercel's Green Energy Policy?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information about Vercel's Green Energy Policy.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-long-to-update-dns-records"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How long will it take for my Vercel DNS records to update?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on the length of time it may take for Vercel DNS changes to take place.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/connecting-teams-with-personal-git-accounts"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I connect a Pro team to a personal Git account?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on connecting personal Git accounts to a Vercel team.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-change-the-name-of-my-vercel-project"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I change the name of my Vercel Project?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on changing the name of a Vercel Project.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-change-my-vercel-avatar"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I change my Vercel avatar?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on changing your Vercel avatar.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-change-my-vercel-username"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I change my Vercel username?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on changing your Vercel username.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-disable-git-notifications-from-deployments"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I disable Git Notifications from Deployments?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">If your project is connected via a Git account to your deployment, you will receive email notifications whenever the deployment has completed. How can you disable these notifications?</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-generate-an-sha-for-uploading-a-file-to-the-vercel-api"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I generate an SHA for uploading a file to the Vercel API?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">When using the Vercel API to create a deployment, you first need to upload your files. An SHA is required to upload these files.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-select-a-team-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I select a team on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on selecting a team on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-disable-auto-renewals-for-a-domain-registered-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I disable auto renewals for a domain registered with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about disabling auto-renewal of domains registered with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/does-using-vercel-s-nameserver-s-lock-you-in"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Does using Vercel's Nameserver's lock you in?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about how using Vercel's Nameservers doesn't lock you to anything.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/why-use-domain-nameservers-method-wildcard-domains"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why must we use the Domain Nameservers method for Wildcard Domains on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn why the domain Nameservers method is needed to set up a wildcard domain as custom domain.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-does-vercel-handle-copyright-infringement-claims"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How does Vercel handle copyright infringement claims?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on the process Vercel will follow when receiving a copyright infringement claim.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/resolve-err-too-many-redirects-when-using-cloudflare-proxy-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I resolve "err_too_many_redirects" when using a Cloudflare proxy with Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information about how to resolve the "err_too_many_redirects" error when using a Cloudflare proxy with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/a-record-and-caa-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Can I use my domain on Vercel with A records?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to use A records with Vercel to verify a domain.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/is-vercel-hipaa-compliant"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Does Vercel support HIPAA compliance?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn about Vercel and HIPAA compliance.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/does-vercel-support-permanent-redirects"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Does Vercel support permanent redirects?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on Vercel's support for permanent redirects.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/domain-not-generating-ssl-certificate"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Why is my domain not automatically generating an SSL certificate?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on why a domain may not be automatically generating an SSL certificate.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/set-up-a-staging-environment-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I set up a staging environment on Vercel?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to set up a staging environment on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/custom-404-page"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Custom 404 Page</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a custom 404 page and deploy with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-do-i-migrate-away-from-vercel-json-env-and-build-env"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How do I migrate away from `vercel.json` env and build.env?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Information on how to migrate your `vercel.json` environment variables to the Environment Variables UI.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-angular-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy an Angular Site with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create your Angular app and deploy it with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-redwood-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Redwood Site with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create your Redwood app and deploy it with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-preact-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Preact Site with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create your Preact app and deploy it with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-remix-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Remix Site with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create your Remix app and deploy it with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-vuejs-to-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Vue.js Site with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create your Vue.js app and deploy it with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/how-can-i-debug-a-dns-record"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How can I debug a DNS record?</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to troubleshoot and debug DNS records.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-next-and-userbase-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Deploy Next.js and Userbase with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Todo app with Next.js and Userbase and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/add-auth-to-nextjs-with-magic"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Add Auth to a Next.js Site with Magic.link</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to add user authentication to a Next.js site using Magic.link.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/getting-started-with-nextjs-typescript-stripe"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Getting started with Next.js, TypeScript, and Stripe Checkout</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Add payments functionality to your Next.js applications with Stripe and deploy to Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-dojo-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Dojo App with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Dojo app and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/monitor-frontend-performance-with-debugbear-and-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Monitor Frontend Performance with DebugBear and Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Automatically test each Vercel deployment and report performance changes to GitHub.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/client-side-error-reports-with-uriports-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Error Reports for Your Projects with URIports and Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Enable error reporting for your websites deployed with Vercel and act fast on issues.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/monitoring-performance-with-calibre-and-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Monitor Performance with Calibre and Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Receive performance reports directly in your GitHub Pull Requests, following a Vercel deployment.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-foundation-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Deploy Foundation with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Foundation app and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-crystallize-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Create and Deploy a Crystallize E-commerce Site with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">How to launch an e-commerce site using Next.js and Crystallize on Vercel in minutes.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-polymer-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Polymer App with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Polymer app and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-stencil-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Stencil app with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Stencil app and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-umijs-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy an UmiJS App with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create an UmiJS app and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-aurelia-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy an Aurelia App with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create an Aurelia app and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-hexo-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Hexo Blog with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Hexo blog and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-eleventy-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy an Eleventy Site with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create an Eleventy website and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-mdx-deck-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy MDX Deck with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a React based slideshow with MDX Deck and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/transferring-domains-to-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Transferring Domains to Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">How to transfer your domain to Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-ember-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy an Ember App with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create an Ember app and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-docusaurus-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Docusaurus Site with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Docusaurus documentation site and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-react-forms-using-formspree-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Deploying React Forms Using Formspree with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create and deploy a React form with the help of Formspree and Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-pusher-channels-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Deploying Real-Time Apps with Pusher Channels and Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">How to get started building and deploying real-time apps with Channels on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/handling-node-request-body"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Handling Node.js Request Bodies with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Parse Node.js request bodies for use inside Serverless Functions deployed with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-charge-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Charge App with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Charge App and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deploying-hugo-with-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">How to Deploy a Hugo Site with Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Create a Hugo website and deploy it live with Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/using-tailwind"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using Tailwind CSS with your OG Image</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use Tailwind CSS to style your OG images.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/using-svg-image"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using an SVG image in your OG image</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use SVG embedded content to generate your OG images.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/using-emoji-in-image"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using emoji in your OG image</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use emojis to generate an OG image.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/using-different-languages"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using languages in your OG image</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use other languages in the text of your OG image.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/using-custom-font"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using a custom font in your OG Image</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use a custom font from the tile system in your OG images.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/using-an-external-dynamic-image"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using an external image as OG image</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to pass the username as a URL parameter to pull an external profile image for the image generation.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/use-crypto-web-api"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using the crypto Web API to redirect requests with a unique token</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use the Crypto Web API in your Edge Middleware.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/understand-cost-impact-of-function-invocations"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Understand the Cost Impact of Function Invocations</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use Observability to understand function invocations and their cost impact.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/troubleshooting-content-link"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Troubleshooting Content Link</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">This guide provides troubleshooting information for common issues when using Content Link</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/traffic-spikes"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Traffic Spikes</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to block traffic from a specific IP address.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/team-management"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Team and User Management with Vercel SDK</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use the Vercel SDK through real-life examples.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/suspicious-traffic-in-specific-countries"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Suspicious Traffic in Specific Countries</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to block traffic in specific geographical regions.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/streaming-from-llm"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Streaming responses from LLMs</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Explore streaming on Vercel with code samples that work out of the box.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/set-cache-control-headers"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Set cache control headers for functions</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to set headers to cache your function's responses.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/sending-sample-to-speed-insights"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Sending a sample of events to Speed Insights</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to send a sample of your data to Speed insights.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/rendering-content-based-on-device"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Rendering content based on device</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to render different content based on the user agent in your Edge Middleware.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/project-management"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Project Management with Vercel SDK</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use the Vercel SDK through real-life examples.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/processing-data-chunks"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Processing Data Chunks</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to create an API endpoint that processes data chunks.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/penetration-testing-on-vercel"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Penetration testing on Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to perform pentesting on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/pause-your-project"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Pause your project</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Use a webhook to pause your project based on spend management.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/modify-request-headers"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Modifying request headers</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to modify request headers in your Edge Middleware.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/logs-monitoring"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Logs and Monitoring with Vercel SDK</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use the Vercel SDK through real-life examples.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/limit-abuse-with-rate-limiting"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Limit Abuse with Rate Limiting</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to protect your authentication endpoints against abuse.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/investigate-latency-issues-and-slowness"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Investigate latency issues and slowness on Vercel</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use Observability to investigate latency issues and slowness on Vercel.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/integrations"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Integrations with Vercel SDK</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use the Vercel SDK through real-life examples.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/handling-backpressure"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Handling Backpressure</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to handle backpressure by pushing data into a steam as it's needed, rather than as it's ready.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/filter-query-parameters"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Filtering query parameters</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to filter query parameters in your Edge Middleware.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/environment-variables"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Environment Variables with Vercel SDK</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use the Vercel SDK through real-life examples.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/encrypting-parameters"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Encrypting parameters</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to encrypt parameters so that only certain values can be passed to generate your image.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/emergency-redirect"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Emergency Redirect</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to implement an emergency redirect without re-deploying your site.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/dynamic-text-as-image"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Using dynamic text as your OG Image</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to pass the image title as a URL parameter.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/dynamic-build-commands"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Dynamically run build commands</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to run different scripts based on the environment or branch.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/domain-management"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Domain Management with Vercel SDK</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use the Vercel SDK through real-life examples.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deployments-automation"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Deployment Automation with Vercel SDK</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to use the Vercel SDK through real-life examples.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/dependencies-from-package-json-missing-after-install"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Dependencies from package.json are missing after install</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Understand why dependencies may not being installed during a build and how to fix.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deny-traffic-from-a-set-of-ip-addresses"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Deny traffic from a Set of IP Addresses</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to specific IP addresses with the Vercel WAF API.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/deny-non-browser-traffic-or-blocklisted-asns"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Deny non-browser Traffic or Blocklisted ASNs</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to block traffic from known threats with the Vercel WAF API.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/challenge-curl-requests"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Challenge cURL Requests</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to challenge curl requests with the Vercel WAF API.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/challenge-cookieless-requests-on-a-specific-path"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Challenge Cookieless Requests on a Specific Path</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to challenge specific requests with the Vercel WAF API.</p></div></a></li><li class="group"><a data-zone="same" class="link_link__hbWKh flex h-full w-full items-center justify-between px-2 py-2" href="/guides/add-response-header"><div class="flex flex-col mb-4 flex-wrap w-full max-w-[475px] sm:max-w-full"><p class="text_wrapper__i87JK m-0 p-0 font-semibold group-hover:underline" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:1.25rem;--text-line-height:1.625rem;--text-letter-spacing:-0.4px;--text-weight:600;letter-spacing:-0.005em">Adding a response header</p><p class="text_wrapper__i87JK font-normal" data-version="v1" style="--text-color:var(--ds-gray-900);--text-size:1rem;--text-line-height:1.5rem;--text-letter-spacing:-0.32px;--text-weight:600">Learn how to add a response header in your Edge Middleware.</p></div></a></li></ul></div><button type="submit" tabindex="0" class="button_base__BjwbK reset_reset__KRyvc button_button__81573 reset_reset__KRyvc scroll-to-top_scrollToTop__iudB_ button_secondary__kMMNc button_invert__YNhnn" data-geist-button="" data-prefix="true" data-suffix="false" data-version="v1" style="--geist-icon-size:16px"><span class="button_prefix__2XlwH"><svg data-testid="geist-icon" height="16" stroke-linejoin="round" style="color:currentColor" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.25 10.75V11.5H8.75V10.75V6.56066L10.2197 8.03033L10.75 8.56066L11.8107 7.5L11.2803 6.96967L8.53033 4.21967C8.23744 3.92678 7.76256 3.92678 7.46967 4.21967L4.71967 6.96967L4.18934 7.5L5.25 8.56066L5.78033 8.03033L7.25 6.56066V10.75ZM14.5 8C14.5 11.5899 11.5899 14.5 8 14.5C4.41015 14.5 1.5 11.5899 1.5 8C1.5 4.41015 4.41015 1.5 8 1.5C11.5899 1.5 14.5 4.41015 14.5 8ZM8 16C12.4183 16 16 12.4183 16 8C16 3.58172 12.4183 0 8 0C3.58172 0 0 3.58172 0 8C0 12.4183 3.58172 16 8 16Z" fill="currentColor"/></svg></span><span class="button_content__1aE1_">Back to top</span></button></div></div></div></div><!--/$--><!--$--><!--/$--><!--$--><!--/$--></main><footer class="geist-footer_footer__pIcfx footer_marketingFooterContainer__cJMpP border-0" data-version="v1" data-variant="elevated"><nav aria-label="Vercel Directory"><div class="footer_marketingFooter__l2bjL"><div class="geist-footer_group__kmfVW"><h2 class="geist-footer_header__7gH2r">Products</h2><ul class="geist-footer_list__xPmDi"><li class="geist-footer_item__Hte4A"><a href="/ai" style="font-feature-settings:'ss05'" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">AI</a></li><li class="geist-footer_item__Hte4A"><a href="/enterprise" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Enterprise</a></li><li class="geist-footer_item__Hte4A"><a href="/fluid" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Fluid Compute</a></li><li class="geist-footer_item__Hte4A"><a href="/solutions/nextjs" data-zone="vercel-site" class="link_link__hbWKh link_secondary__F1rqx">Next.js</a></li><li class="geist-footer_item__Hte4A"><a href="/products/observability" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Observability</a></li><li class="geist-footer_item__Hte4A"><a href="/products/previews" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Previews</a></li><li class="geist-footer_item__Hte4A"><a href="/products/rendering" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Rendering</a></li><li class="geist-footer_item__Hte4A"><a href="/security" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Security</a></li><li class="geist-footer_item__Hte4A"><a href="/solutions/turborepo" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Turbo</a></li><li class="geist-footer_item__Hte4A"><a href="https://v0.dev/" rel="noopener" target="_blank" data-zone="null" class="link_link__hbWKh link_external__0a5cc link_secondary__F1rqx">v0<svg data-testid="geist-icon" height="16" stroke-linejoin="round" style="color:currentColor" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.5 9.75V11.25C11.5 11.3881 11.3881 11.5 11.25 11.5H4.75C4.61193 11.5 4.5 11.3881 4.5 11.25L4.5 4.75C4.5 4.61193 4.61193 4.5 4.75 4.5H6.25H7V3H6.25H4.75C3.7835 3 3 3.7835 3 4.75V11.25C3 12.2165 3.7835 13 4.75 13H11.25C12.2165 13 13 12.2165 13 11.25V9.75V9H11.5V9.75ZM8.5 3H9.25H12.2495C12.6637 3 12.9995 3.33579 12.9995 3.75V6.75V7.5H11.4995V6.75V5.56066L8.53033 8.52978L8 9.06011L6.93934 7.99945L7.46967 7.46912L10.4388 4.5H9.25H8.5V3Z" fill="currentColor"/></svg></a></li></ul></div><div class="geist-footer_group__kmfVW"><h2 class="geist-footer_header__7gH2r">Resources</h2><ul class="geist-footer_list__xPmDi"><li class="geist-footer_item__Hte4A"><a href="https://community.vercel.com/" rel="noopener" target="_blank" data-zone="null" class="link_link__hbWKh link_external__0a5cc link_secondary__F1rqx">Community<svg data-testid="geist-icon" height="16" stroke-linejoin="round" style="color:currentColor" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.5 9.75V11.25C11.5 11.3881 11.3881 11.5 11.25 11.5H4.75C4.61193 11.5 4.5 11.3881 4.5 11.25L4.5 4.75C4.5 4.61193 4.61193 4.5 4.75 4.5H6.25H7V3H6.25H4.75C3.7835 3 3 3.7835 3 4.75V11.25C3 12.2165 3.7835 13 4.75 13H11.25C12.2165 13 13 12.2165 13 11.25V9.75V9H11.5V9.75ZM8.5 3H9.25H12.2495C12.6637 3 12.9995 3.33579 12.9995 3.75V6.75V7.5H11.4995V6.75V5.56066L8.53033 8.52978L8 9.06011L6.93934 7.99945L7.46967 7.46912L10.4388 4.5H9.25H8.5V3Z" fill="currentColor"/></svg></a></li><li class="geist-footer_item__Hte4A"><a data-zone="same" class="link_link__hbWKh link_secondary__F1rqx" href="/docs">Docs</a></li><li class="geist-footer_item__Hte4A"><a data-zone="same" class="link_link__hbWKh link_secondary__F1rqx" href="/guides">Guides</a></li><li class="geist-footer_item__Hte4A"><a data-zone="same" class="link_link__hbWKh link_secondary__F1rqx" href="/help">Help</a></li><li class="geist-footer_item__Hte4A"><a href="/integrations" data-zone="vercel-site" class="link_link__hbWKh link_secondary__F1rqx">Integrations</a></li><li class="geist-footer_item__Hte4A"><a href="/pricing" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Pricing</a></li><li class="geist-footer_item__Hte4A"><a href="/resources" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Resources</a></li><li class="geist-footer_item__Hte4A"><a href="/partners/solution-partners" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Solution Partners</a></li><li class="geist-footer_item__Hte4A"><a href="/templates" data-zone="vercel-site" class="link_link__hbWKh link_secondary__F1rqx">Templates</a></li></ul></div><div class="geist-footer_group__kmfVW"><h2 class="geist-footer_header__7gH2r">Company</h2><ul class="geist-footer_list__xPmDi"><li class="geist-footer_item__Hte4A"><a href="/about" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">About</a></li><li class="geist-footer_item__Hte4A"><a href="/blog" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Blog</a></li><li class="geist-footer_item__Hte4A"><a href="/careers" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Careers</a></li><li class="geist-footer_item__Hte4A"><a href="/changelog" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Changelog</a></li><li class="geist-footer_item__Hte4A"><a href="/contact" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Contact Us</a></li><li class="geist-footer_item__Hte4A"><a href="/customers" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Customers</a></li><li class="geist-footer_item__Hte4A"><a href="/partners" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Partners</a></li><li class="geist-footer_item__Hte4A"><a href="/legal/privacy-policy" data-zone="vercel-marketing" class="link_link__hbWKh link_secondary__F1rqx">Privacy Policy</a></li><li class="footer_legalButton__eSfwa"><button type="submit" aria-haspopup="true" aria-expanded="false" aria-controls="menu-«Rader95nb»" aria-label="Legal" data-testid="footer/legal-button" data-geist-menu-button="" data-is-open="false" id="menu-button-«Rader95nbH1»" style="--geist-icon-size:16px" class="button_base__BjwbK reset_reset__KRyvc footer_legalMenuButton__7D9MK" data-geist-button="" data-prefix="false" data-suffix="false" data-version="v1"><span class="button_content__1aE1_ button_flex__fCY56 button_center__nyfP_"><span class="footer_link__8OH36 footer_secondary__2yfhO" style="display:flex;align-items:center;gap:2px;width:100%">Legal<svg data-testid="geist-icon" height="16" stroke-linejoin="round" style="width:16px;height:16px;color:currentColor" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.0607 6.74999L11.5303 7.28032L8.7071 10.1035C8.31657 10.4941 7.68341 10.4941 7.29288 10.1035L4.46966 7.28032L3.93933 6.74999L4.99999 5.68933L5.53032 6.21966L7.99999 8.68933L10.4697 6.21966L11 5.68933L12.0607 6.74999Z" fill="currentColor"/></svg></span></span></button></li></ul></div><div class="geist-footer_group__kmfVW"><h2 class="geist-footer_header__7gH2r">Social</h2><ul class="geist-footer_list__xPmDi"><li class="geist-footer_item__Hte4A"><a href="https://github.com/vercel" rel="noopener" target="_blank" data-zone="null" class="link_link__hbWKh link_secondary__F1rqx footer_socialIcon__jQjkd"><svg data-testid="geist-icon" height="16" stroke-linejoin="round" style="color:currentColor" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 1.46252C4.40875 1.46252 1.5 4.37029 1.5 7.96032C1.5 10.8356 3.36062 13.2642 5.94438 14.1251C6.26937 14.182 6.39125 13.987 6.39125 13.8165C6.39125 13.6621 6.38313 13.1504 6.38313 12.6063C4.75 12.9068 4.3275 12.2083 4.1975 11.8428C4.12437 11.6559 3.8075 11.0793 3.53125 10.9249C3.30375 10.8031 2.97875 10.5026 3.52312 10.4945C4.035 10.4863 4.40062 10.9656 4.5225 11.1605C5.1075 12.1433 6.04188 11.8671 6.41563 11.6966C6.4725 11.2742 6.64313 10.9899 6.83 10.8275C5.38375 10.665 3.8725 10.1046 3.8725 7.61919C3.8725 6.91255 4.12438 6.32775 4.53875 5.87291C4.47375 5.71046 4.24625 5.04444 4.60375 4.15099C4.60375 4.15099 5.14812 3.98042 6.39125 4.81701C6.91125 4.67081 7.46375 4.59771 8.01625 4.59771C8.56875 4.59771 9.12125 4.67081 9.64125 4.81701C10.8844 3.9723 11.4288 4.15099 11.4288 4.15099C11.7863 5.04444 11.5588 5.71046 11.4938 5.87291C11.9081 6.32775 12.16 6.90443 12.16 7.61919C12.16 10.1127 10.6406 10.665 9.19438 10.8275C9.43 11.0305 9.63313 11.4204 9.63313 12.0296C9.63313 12.8987 9.625 13.5972 9.625 13.8165C9.625 13.987 9.74687 14.1901 10.0719 14.1251C11.3622 13.6896 12.4835 12.8606 13.2779 11.7547C14.0722 10.6488 14.4997 9.32178 14.5 7.96032C14.5 4.37029 11.5913 1.46252 8 1.46252Z" fill="currentColor"/></svg>GitHub</a></li><li class="geist-footer_item__Hte4A"><a href="https://linkedin.com/company/vercel" rel="noopener" target="_blank" data-zone="null" class="link_link__hbWKh link_secondary__F1rqx footer_socialIcon__jQjkd"><svg data-testid="geist-icon" height="16" stroke-linejoin="round" style="color:currentColor" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M3.5 2C2.67157 2 2 2.67157 2 3.5V12.5C2 13.3284 2.67157 14 3.5 14H12.5C13.3284 14 14 13.3284 14 12.5V3.5C14 2.67157 13.3284 2 12.5 2H3.5ZM4.74556 5.5C5.21057 5.5 5.5 5.16665 5.5 4.75006C5.49133 4.3241 5.21057 4 4.75438 4C4.29824 4 4 4.3241 4 4.75006C4 5.16665 4.28937 5.5 4.73687 5.5H4.74556ZM5.5 6.5V12H4V6.5H5.5ZM7 12H8.5V8.89479C8.5 8.89479 8.60415 7.78962 9.55208 7.78962C10.5 7.78962 10.5 9.02275 10.5 9.02275V12H12V8.8133C12 7.13837 11.25 6.5025 10.125 6.5025C9 6.5025 8.5 7.27778 8.5 7.27778V6.5025H7.00005C7.02383 7.01418 7 12 7 12Z" fill="currentColor"/></svg>LinkedIn</a></li><li class="geist-footer_item__Hte4A"><a href="https://x.com/vercel" rel="noopener" target="_blank" data-zone="null" class="link_link__hbWKh link_secondary__F1rqx footer_socialIcon__jQjkd"><svg data-testid="geist-icon" height="16" stroke-linejoin="round" style="color:currentColor" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M1.60022 2H5.80022L8.78759 6.16842L12.4002 2H14.0002L9.5118 7.17895L14.4002 14H10.2002L7.21285 9.83158L3.60022 14H2.00022L6.48864 8.82105L1.60022 2ZM10.8166 12.8L3.93657 3.2H5.18387L12.0639 12.8H10.8166Z" fill="currentColor"/></svg> Twitter</a></li><li class="geist-footer_item__Hte4A"><a href="https://youtube.com/@VercelHQ" rel="noopener" target="_blank" data-zone="null" class="link_link__hbWKh link_secondary__F1rqx footer_socialIcon__jQjkd"><svg data-testid="geist-icon" height="16" stroke-linejoin="round" style="color:currentColor" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M13.4695 3.39273C14.0722 3.55407 14.5459 4.02773 14.7073 4.63046C14.9988 5.72183 15 8.00023 15 8.00023C15 8.00023 15 10.2786 14.7073 11.37C14.5459 11.9728 14.0722 12.4464 13.4695 12.6077C12.3782 12.9005 7.99998 12.9005 7.99998 12.9005C7.99998 12.9005 3.62183 12.9005 2.53045 12.6077C1.92773 12.4464 1.45407 11.9728 1.29272 11.37C1 10.2786 1 8.00023 1 8.00023C1 8.00023 1 5.72183 1.29272 4.63046C1.45407 4.02773 1.92773 3.55407 2.53045 3.39273C3.62183 3.10001 7.99998 3.10001 7.99998 3.10001C7.99998 3.10001 12.3782 3.10001 13.4695 3.39273ZM10.2362 8.00046L6.59906 10.1002V5.90068L10.2362 8.00046Z" fill="currentColor"/></svg>YouTube</a></li></ul></div><a href="/home" data-zone="vercel-marketing" class="link_link__hbWKh footer_logoVercel__Yjmd9"><svg data-testid="geist-icon" height="16" stroke-linejoin="round" style="width:16px;height:32px;color:var(--ds-gray-1000)" viewBox="0 0 16 16" width="16" aria-label="Vercel logo"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 1L16 15H0L8 1Z" fill="currentColor"/></svg></a></div><div class="footer_statusRow__FHZde"><a href="https://vercel-status.com" rel="noopener" target="_blank" data-no-border="true" data-testid="footer/status" data-zone="null" class="link_link__hbWKh status-indicator_link__OFbPq"><div class="status-indicator_content__Lqlf4 status-indicator_noBorder__3Wyse"><span class="status-indicator_indicator__Wc_JX status-indicator_secondary__Aa8mG" data-testid="footer/status/secondary"></span><p class="text_wrapper__i87JK status-indicator_statusText__7P9EM status-indicator_secondary__Aa8mG geist-ellipsis" data-version="v1" style="--text-color:var(--ds-gray-1000);--text-size:0.875rem;--text-line-height:1.25rem;--text-letter-spacing:initial;--text-weight:400">Loading status…</p></div></a><fieldset class="tailwind theme-switcher_root__DrzBE ml-auto" data-small=""><legend class="sr-only">Select a display theme:</legend><span style="height:100%"><input aria-label="system" id="theme-switch-system-«Raer95nb»" type="radio" value="system"/><label for="theme-switch-system-«Raer95nb»"><span class="sr-only">system</span><svg data-testid="geist-icon" height="16" stroke-linejoin="round" style="color:currentColor" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M0.5 3.25C0.5 1.45507 1.95507 0 3.75 0H8.25C10.0449 0 11.5 1.45507 11.5 3.25V11.25V12H10.75H1.25H0.5V11.25V3.25ZM3.75 1.5C2.7835 1.5 2 2.2835 2 3.25V10.5H10V3.25C10 2.2835 9.2165 1.5 8.25 1.5H3.75ZM3 3.5C3 2.94772 3.44772 2.5 4 2.5H8C8.55228 2.5 9 2.94772 9 3.5V7H3V3.5ZM6.5 9.5H9V8H6.5V9.5Z" fill="currentColor" transform="translate(2.5, 2)"/> </svg></label></span><span style="height:100%"><input aria-label="light" id="theme-switch-light-«Raer95nb»" type="radio" value="light"/><label for="theme-switch-light-«Raer95nb»"><span class="sr-only">light</span><svg data-testid="geist-icon" height="16" stroke-linejoin="round" style="color:currentColor" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.75 1V0.25H6.25V1V1.25V2H7.75V1.25V1ZM7 9C8.10457 9 9 8.10457 9 7C9 5.89543 8.10457 5 7 5C5.89543 5 5 5.89543 5 7C5 8.10457 5.89543 9 7 9ZM7 10.5C8.933 10.5 10.5 8.933 10.5 7C10.5 5.067 8.933 3.5 7 3.5C5.067 3.5 3.5 5.067 3.5 7C3.5 8.933 5.067 10.5 7 10.5ZM7.75 12V12.75V13V13.75H6.25V13V12.75V12H7.75ZM12 6.25H12.75H13H13.75V7.75H13H12.75H12V6.25ZM1 6.25H0.25V7.75H1H1.25H2V6.25H1.25H1ZM10.0052 2.93414L10.5355 2.40381L10.7123 2.22703L11.2426 1.6967L12.3033 2.75736L11.773 3.28769L11.5962 3.46447L11.0659 3.9948L10.0052 2.93414ZM2.22703 10.7123L1.6967 11.2426L2.75736 12.3033L3.28769 11.773L3.46447 11.5962L3.9948 11.0659L2.93414 10.0052L2.40381 10.5355L2.22703 10.7123ZM2.93414 3.9948L2.40381 3.46447L2.22703 3.28769L1.6967 2.75736L2.75736 1.6967L3.28769 2.22703L3.46447 2.40381L3.9948 2.93414L2.93414 3.9948ZM10.7123 11.773L11.2426 12.3033L12.3033 11.2426L11.773 10.7123L11.5962 10.5355L11.0659 10.0052L10.0052 11.0659L10.5355 11.5962L10.7123 11.773Z" fill="currentColor" transform="translate(1.25, 1.25)" /></svg></label></span><span style="height:100%"><input aria-label="dark" id="theme-switch-dark-«Raer95nb»" type="radio" value="dark"/><label for="theme-switch-dark-«Raer95nb»"><span class="sr-only">dark</span><svg data-testid="geist-icon" height="16" stroke-linejoin="round" style="color:currentColor" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" clip-rule="evenodd" d="M10.5 0.25V1V1.5H11L11.75 1.5V3H11H10.5V3.5V4.25H9V3.5V3H8.5H7.75V1.5H8.5H9V1V0.25H10.5ZM3.25514 2.75496C2.33413 3.53491 1.75 4.69972 1.75 6C1.75 8.34721 3.65279 10.25 6 10.25C7.30029 10.25 8.4651 9.66587 9.24505 8.74485C9.16377 8.74827 9.08207 8.74999 9 8.74999C5.82436 8.74999 3.25 6.17563 3.25 2.99999C3.25 2.91792 3.25172 2.83623 3.25514 2.75496ZM0.25 6C0.25 3.51072 1.83142 1.39271 4.042 0.592193L5.00256 1.55275C4.83933 2.00347 4.75 2.49047 4.75 2.99999C4.75 5.3472 6.65279 7.24999 9 7.24999C9.50953 7.24999 9.99653 7.16065 10.4473 6.99743L11.4078 7.95798C10.6073 10.1686 8.48929 11.75 6 11.75C2.82436 11.75 0.25 9.17564 0.25 6Z" fill="currentColor" transform="translate(2.25, 2.25)" /></svg></label></span></fieldset></div></nav></footer><!--$--><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><!--/$--><!--$--><!--/$--><!--$--><!--/$--><!--$--><!--/$--><!--$--><!--/$--><span></span><!--$--><script type="application/json" data-flag-values="true">"eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2R0NNIn0..yWQP6SjGva3W_Voh.PSX2Q6LbEZkw7KXtBhXYscV8W8MvxrELLipvvrO11w9MjCmoFAz6tfBiW-Sy40rM8oyLF8UqY1M6n9lJjCW2riUc4MBI_eTjMSkJLfDPHV5jY-75lEhDzw.CSlY4kZYpeFNmNqzeyWGkQ"</script><!--/$--><script src="/vc-ap-vercel-docs/_next/static/chunks/webpack-2cced738b72b1e88.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[53611,[],\"\"]\n3:I[68983,[],\"\"]\n5:I[19122,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"82288\",\"static/chunks/82288-a3103e5937e23d07.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"51552\",\"static/chunks/51552-3bdcbc8d7fac01de.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"71899\",\"static/chunks/71899-bee0ac76574c2329.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"55981\",\"static/chunks/55981-f504e7ec99d111ae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"10363\",\"static/chunks/10363-103c1d1503b2f45a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"32433\",\"static/chunks/32433-95d35670624bce73.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"75306\",\"static/chunks/75306-58debcdacc7aa317.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"72915\",\"static/chunks/72915-43a0dc7883c11e0e.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"56337\",\"static/chunks/56337-dcc136b2a6762900.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"31032\",\"static/chunks/31032-be931a5f0eb37519.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"51889\",\"static/chunks/51889-3ac40039a9eff36e.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"12415\",\"static/chunks/12415-d865e108dd254eac.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"71352\",\"static/chunks/app/%5BrootFlagsCode%5D/guides/layout-b9adca20c9ca1f42.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"Header\"]\n6:I[72548,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"stati"])</script><script>self.__next_f.push([1,"c/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"82288\",\"static/chunks/82288-a3103e5937e23d07.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"51552\",\"static/chunks/51552-3bdcbc8d7fac01de.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"71899\",\"static/chunks/71899-bee0ac76574c2329.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"55981\",\"static/chunks/55981-f504e7ec99d111ae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"10363\",\"static/chunks/10363-103c1d1503b2f45a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"32433\",\"static/chunks/32433-95d35670624bce73.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"75306\",\"static/chunks/75306-58debcdacc7aa317.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"72915\",\"static/chunks/72915-43a0dc7883c11e0e.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"56337\",\"static/chunks/56337-dcc136b2a6762900.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"31032\",\"static/chunks/31032-be931a5f0eb37519.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"51889\",\"static/chunks/51889-3ac40039a9eff36e.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"12415\",\"static/chunks/12415-d865e108dd254eac.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"71352\",\"static/chunks/app/%5BrootFlagsCode%5D/guides/layout-b9adca20c9ca1f42.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"Footer\"]\n7:\"$Sreact.suspense\"\n8:I[25599,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"82288\",\"static/chunks/82288-a3103e5937e23d07.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"51552\",\"static/chunks/51552-3bdcbc8d7fac01de.js?dpl=dpl_2zBfGjE7bNhiW9Cy"])</script><script>self.__next_f.push([1,"xpUyVrodmxXN\",\"71899\",\"static/chunks/71899-bee0ac76574c2329.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"55981\",\"static/chunks/55981-f504e7ec99d111ae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"10363\",\"static/chunks/10363-103c1d1503b2f45a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"32433\",\"static/chunks/32433-95d35670624bce73.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"75306\",\"static/chunks/75306-58debcdacc7aa317.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"72915\",\"static/chunks/72915-43a0dc7883c11e0e.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"56337\",\"static/chunks/56337-dcc136b2a6762900.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"31032\",\"static/chunks/31032-be931a5f0eb37519.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"51889\",\"static/chunks/51889-3ac40039a9eff36e.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"12415\",\"static/chunks/12415-d865e108dd254eac.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"71352\",\"static/chunks/app/%5BrootFlagsCode%5D/guides/layout-b9adca20c9ca1f42.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"BrowserClientOnlyCommandMenu\"]\na:I[54153,[],\"MetadataBoundary\"]\nc:I[54153,[],\"OutletBoundary\"]\nf:I[70327,[],\"AsyncMetadataOutlet\"]\n11:I[54153,[],\"ViewportBoundary\"]\n13:I[12142,[],\"\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/media/569ce4b8f30dc480-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/vc-ap-vercel-docs/_next/static/media/93f479601ee12b01.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/97144c00692ff406.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/2c5627935258938b.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/e122c19221bacfe3.cs"])</script><script>self.__next_f.push([1,"s?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/b7d8aa6d16e9a8ba.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/cb7d8ca32d5257d0.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/f9279b20fe5c4dab.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/c589ce71a3a0bc97.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/a9d0e0ecff9bde1a.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/dc1085e7e696021b.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/89a8888cb97a7d81.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/a9d9ee0d8351a1c0.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/90db48acd7590ba7.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/68876113637876f1.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/219a105f176f472e.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/d2abf3a96e70d994.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/02aeb390aa7f3018.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/6548cab375ff7513.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/d6b31c2705c7cc3c.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n:HL[\"/vc-ap-vercel-docs/_next/static/css/d2e4dc11461480df.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"y5Gct1kbOGrZf6len-P4d\",\"p\":\"/vc-ap-vercel-docs\",\"c\":[\"\",\"flg~eyJhbGciOiJIUzI1NiJ9._f0.J5_PHNhF0eNlz12XstHA9IR6iaoFEWSwfgJGLCvAJWM\",\"guides\"],\"i\":false,\"f\":[[[\"\",{\"children\":[[\"rootFlagsCode\",\"flg~eyJhbGciOiJIUzI1NiJ9._f0.J5_PHNhF0eNlz12XstHA9IR6iaoFEWSwfgJGLCvAJWM\",\"d\"],{\"children\":[\"guides\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true]}],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"rootFlagsCode\",\"flg~eyJhbGciOiJIUzI1NiJ9._f0.J5_PHNhF0eNlz12XstHA9IR6iaoFEWSwfgJGLCvAJWM\",\"d\"],[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/97144c00692ff406.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/2c5627935258938b.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/e122c19221bacfe3.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/b7d8aa6d16e9a8ba.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"4\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/cb7d8ca32d5257d0.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"5\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/f9279b20fe5c4dab.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],\"$L4\"]}],{\"children\":[\"guides\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/c589ce71a3a0bc97.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/a9d0e0ecff9bde1a.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/dc1085e7e696021b.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/89a8888cb97a7d81.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"4\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/a9d9ee0d8351a1c0.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"5\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/90db48acd7590ba7.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"6\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/68876113637876f1.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"7\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/219a105f176f472e.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[[\"$\",\"$L5\",null,{}],[\"$\",\"main\",null,{\"className\":\"border-solid border-b border-0 border-[var(--ds-gray-alpha-400)] mb-[90px]\",\"data-soft-nav-target\":\"1\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}],[\"$\",\"$L6\",null,{\"className\":\"border-0\",\"isMarketingPage\":true}],[\"$\",\"$7\",null,{\"children\":[\"$\",\"$L8\",null,{}]}]]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[\"$L9\",[\"$\",\"$La\",null,{\"children\":\"$Lb\"}],[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/d2abf3a96e70d994.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/02aeb390aa7f3018.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/6548cab375ff7513.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/d6b31c2705c7cc3c.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"4\",{\"rel\":\"stylesheet\",\"href\":\"/vc-ap-vercel-docs/_next/static/css/d2e4dc11461480df.css?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"$Lc\",null,{\"children\":[\"$Ld\",\"$Le\",[\"$\",\"$Lf\",null,{\"promise\":\"$@10\"}]]}]]}],{},null,false]},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$1\",\"14uTPl_Gfeio_1CblW07T\",{\"children\":[[\"$\",\"$L11\",null,{\"children\":\"$L12\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$13\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"14:I[70327,[],\"AsyncMetadata\"]\nb:[\"$\",\"$7\",null,{\"fallback\":null,\"children\":[\"$\",\"$L14\",null,{\"promise\":\"$@15\"}]}]\n"])</script><script>self.__next_f.push([1,"e:null\n"])</script><script>self.__next_f.push([1,"16:I[1562,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"GracefulHydrationErrorBoundary\"]\n17:I[11607,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"PrimaryNavigationProvider\"]\n18:I"])</script><script>self.__next_f.push([1,"[74361,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"RootUserProvider\"]\n19:I[2266,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"RootTeamProvider\"]\n1a:I[91683,[\"24527\",\"static/chu"])</script><script>self.__next_f.push([1,"nks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"TelemetryClient\"]\n1b:I[47989,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"GeistProvider\"]\n1c:I[37106,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?"])</script><script>self.__next_f.push([1,"dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"PrefetchCrossZoneLinksProvider\"]\n1d:I[11314,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"SwitcherProvider\"]\n1e:I[88429,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBf"])</script><script>self.__next_f.push([1,"GjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"10123\",\"static/chunks/10123-497ba2e911bf683a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"44228\",\"static/chunks/app/%5BrootFlagsCode%5D/not-found-9ce370a38d5162e9.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"NotFound\"]\n1f:I[14500,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"CompatRouterAllowed\"]\n20:I[76786,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"9"])</script><script>self.__next_f.push([1,"8120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"RootHooks\"]\n21:I[20483,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"\"]\n23:I[23913,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dp"])</script><script>self.__next_f.push([1,"l=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"Analytics\"]\n24:I[3457,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"SpeedInsights\"]\n25:I[3201,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"4"])</script><script>self.__next_f.push([1,"7972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"ClientScripts\"]\n26:I[37106,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"PrefetchCrossZoneLinks\"]\n27:I[19775,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47"])</script><script>self.__next_f.push([1,"972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"LogoutScreen\"]\n29:I[238,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"47972\",\"static/chunks/47972-bfe00ddd65c43c7a.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"96966\",\"static/chunks/96966-caeb375fdd220e44.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"36611\",\"static/chunks/36611-b574bd0867374d67.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"74361\",\"static/chunks/74361-d5849a89817f19fe.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"238\",\"static/chunks/238-3cd480b34f132ca4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"19118\",\"static/chunks/app/%5BrootFlagsCode%5D/layout-672e85c4f28a0ae0.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"Toasts\"]\n22:T47a,\nif (window.location.hostname === 'vercel.com' || window.location.search.includes('test-sift')) {\n (function() {\n var d = document;\n var w = window;\n var find = (s) =\u003e d.cookie.split('; ').find(r =\u003e r.startsWith(s));\n var sid;\n var row = find('vercel_session_id');\n if (row) {\n sid = row.replace('vercel_sess"])</script><script>self.__next_f.push([1,"ion_id=', '');\n } else {\n var a = new Uint32Array(5);\n crypto.getRandomValues(a);\n sid = btoa(a);\n d.cookie = \"vercel_session_id=\" + sid;\n }\n var _sift = w._sift = w._sift || [];\n _sift.push(['_setAccount', 'e0fb7b5a33']);\n _sift.push(['_setUserId', '']);\n _sift.push(['_setSessionId', sid]);\n _sift.push(['_trackPageview']);\n var pathname = w.location.pathname;\n setInterval(() =\u003e {\n if (pathname !== w.location.pathname) {\n pathname = w.location.pathname;\n w._sift.push(['_trackPageview']);\n }\n }, 2000)\n\n if (!find('vercel_impersonate')) {\n w.addEventListener('load', () =\u003e {\n var e = d.createElement('script');\n e.src = '/_stream/external/cdn.sift.com/s.js';\n d.body.appendChild(e);\n });\n }\n })()\n}"])</script><script>self.__next_f.push([1,"4:[\"$\",\"html\",null,{\"className\":\"__variable_881a5c __variable_f5b710 uncontained tailwind tailwind-no-preflight\",\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"$L16\",null,{\"as\":\"body\",\"children\":[\"$\",\"$L17\",null,{\"value\":{\"primaryNavigation\":[{\"name\":\"Documentation\",\"href\":\"/docs\",\"posts\":[{\"name\":\"Platform\",\"href\":\"/docs/platform\",\"key\":\"platform\",\"hasHighlight\":true,\"posts\":[{\"name\":\"Get Started\",\"href\":\"/docs/getting-started-with-vercel\",\"description\":\"Build for the web and learn to use our platform\",\"highlight\":true,\"open\":false,\"posts\":[{\"name\":\"Step 1 – Projects \u0026 Deployments\",\"href\":\"/docs/getting-started-with-vercel/projects-deployments\",\"posts\":[{\"name\":\"Option 1 - Use a Template\",\"href\":\"/docs/getting-started-with-vercel/template\",\"singleFile\":true},{\"name\":\"Option 2 - Import an Existing Project\",\"href\":\"/docs/getting-started-with-vercel/import\",\"singleFile\":true}]},{\"name\":\"Step 2 – Add a Domain\",\"href\":\"/docs/getting-started-with-vercel/domains\",\"posts\":[{\"name\":\"Option 1 - Buy a domain\",\"href\":\"/docs/getting-started-with-vercel/buy-domain\",\"singleFile\":true},{\"name\":\"Option 2 - Transfer an existing domain\",\"href\":\"/docs/getting-started-with-vercel/use-existing\",\"singleFile\":true}]},{\"name\":\"Step 3 – Collaborate\",\"href\":\"/docs/getting-started-with-vercel/collaborate\",\"singleFile\":true},{\"name\":\"Next Steps\",\"href\":\"/docs/getting-started-with-vercel/next-steps\",\"singleFile\":true}]},{\"name\":\"Vercel Fundamentals\",\"href\":\"/docs/fundamentals\",\"description\":\"Learn about the core concepts of Vercel\",\"posts\":[{\"name\":\"What is Compute?\",\"href\":\"/docs/fundamentals/what-is-compute\",\"description\":\"Learn and understand the concept of compute\",\"singleFile\":true},{\"name\":\"What is Streaming?\",\"href\":\"/docs/fundamentals/what-is-streaming\",\"singleFile\":true}]},{\"name\":\"Incremental Migration\",\"href\":\"/docs/incremental-migration\",\"description\":\"Migrate your site to Vercel with minimum risk\",\"isProduct\":false,\"posts\":[{\"name\":\"Migration Guide\",\"href\":\"/docs/incremental-migration/migration-guide\"},{\"name\":\"Technical Guidelines\",\"href\":\"/docs/incremental-migration/technical-guidelines\"}]},{\"name\":\"Frameworks\",\"href\":\"/docs/frameworks\",\"description\":\"Deploy with the framework of your choice on our platform\",\"posts\":[{\"name\":\"Next.js\",\"href\":\"/docs/frameworks/nextjs\",\"singleFile\":true},{\"name\":\"SvelteKit\",\"href\":\"/docs/frameworks/sveltekit\",\"singleFile\":true},{\"name\":\"Astro\",\"href\":\"/docs/frameworks/astro\",\"singleFile\":true},{\"name\":\"Create React App\",\"href\":\"/docs/frameworks/create-react-app\",\"singleFile\":true},{\"name\":\"Gatsby\",\"href\":\"/docs/frameworks/gatsby\",\"singleFile\":true},{\"name\":\"Nuxt\",\"href\":\"/docs/frameworks/nuxt\",\"singleFile\":true},{\"name\":\"React Router\",\"href\":\"/docs/frameworks/react-router\",\"singleFile\":true},{\"name\":\"Remix\",\"href\":\"/docs/frameworks/remix\",\"singleFile\":true},{\"name\":\"Vite\",\"href\":\"/docs/frameworks/vite\",\"singleFile\":true},{\"name\":\"Supported Frameworks\",\"href\":\"/docs/frameworks/more-frameworks\"}]},{\"name\":\"Projects\",\"href\":\"/docs/projects/overview\",\"description\":\"A Project groups deployments and custom domains\",\"posts\":[{\"name\":\"Managing Projects\",\"href\":\"/docs/projects/managing-projects\"},{\"name\":\"Transferring a Project\",\"href\":\"/docs/projects/transferring-projects\"},{\"name\":\"Monorepos\",\"href\":\"/docs/monorepos\",\"posts\":[{\"name\":\"Turborepo\",\"href\":\"/docs/monorepos/turborepo\"},{\"name\":\"Nx\",\"href\":\"/docs/monorepos/nx\"},{\"name\":\"Remote Caching\",\"href\":\"/docs/monorepos/remote-caching\"},{\"name\":\"Monorepo FAQ\",\"href\":\"/docs/monorepos/monorepo-faq\"}]},{\"name\":\"Environment Variables\",\"href\":\"/docs/environment-variables\",\"posts\":[{\"name\":\"Managing Environment Variables\",\"href\":\"/docs/environment-variables/managing-environment-variables\",\"singleFile\":true},{\"name\":\"Shared Environment Variables\",\"href\":\"/docs/environment-variables/shared-environment-variables\",\"singleFile\":true},{\"name\":\"System Environment Variables\",\"href\":\"/docs/environment-variables/system-environment-variables\",\"singleFile\":true},{\"name\":\"Framework Environment Variables\",\"href\":\"/docs/environment-variables/framework-environment-variables\",\"singleFile\":true},{\"name\":\"Reserved Environment Variables\",\"href\":\"/docs/environment-variables/reserved-environment-variables\",\"singleFile\":true},{\"name\":\"Sensitive Environment Variables\",\"href\":\"/docs/environment-variables/sensitive-environment-variables\",\"singleFile\":true}]},{\"name\":\"Project Settings\",\"href\":\"/docs/project-configuration/project-settings\",\"posts\":[{\"name\":\"General Settings\",\"href\":\"/docs/project-configuration/general-settings\",\"singleFile\":true},{\"name\":\"Security Settings\",\"href\":\"/docs/project-configuration/security-settings\",\"singleFile\":true},{\"name\":\"Git Settings\",\"href\":\"/docs/project-configuration/git-settings\",\"singleFile\":true},{\"name\":\"vercel.json\",\"href\":\"/docs/project-configuration\",\"description\":\"Configure your project with vercel.json\",\"posts\":[{\"name\":\"Git Configuration\",\"href\":\"/docs/project-configuration/git-configuration\",\"singleFile\":true},{\"name\":\"Global Configuration\",\"href\":\"/docs/project-configuration/global-configuration\",\"singleFile\":true}]}]},{\"name\":\"Project Dashboard\",\"href\":\"/docs/projects/project-dashboard\"}]},{\"name\":\"Builds\",\"href\":\"/docs/deployments/builds\",\"description\":\"Learn how your projects are built and configured\",\"posts\":[{\"name\":\"Configure a Build\",\"href\":\"/docs/deployments/configure-a-build\",\"singleFile\":true},{\"name\":\"Package Managers\",\"href\":\"/docs/package-managers\",\"singleFile\":true},{\"name\":\"Managing Builds\",\"href\":\"/docs/deployments/managing-builds\",\"posts\":[{\"name\":\"Build Queues\",\"href\":\"/docs/builds/build-queues\"}]},{\"name\":\"Build Features\",\"href\":\"/docs/deployments/build-features\",\"singleFile\":true},{\"name\":\"Build Image Overview\",\"href\":\"/docs/deployments/build-image\",\"posts\":[{\"name\":\"Build Image\",\"href\":\"/docs/deployments/build-image/build-image\"},{\"name\":\"Build Image (legacy)\",\"href\":\"/docs/deployments/build-image/build-image-legacy\"}]},{\"name\":\"Troubleshoot a Build\",\"href\":\"/docs/deployments/troubleshoot-a-build\",\"singleFile\":true}]},{\"name\":\"Deployments\",\"href\":\"/docs/deployments\",\"description\":\"How your sites are generated and configured\",\"posts\":[{\"name\":\"Deploy to Vercel\",\"href\":\"/docs/deployments/deployment-methods\",\"posts\":[{\"name\":\"Git Integrations\",\"href\":\"/docs/git\",\"posts\":[{\"name\":\"Vercel for GitHub\",\"href\":\"/docs/git/vercel-for-github\"},{\"name\":\"Vercel for GitLab\",\"href\":\"/docs/git/vercel-for-gitlab\"},{\"name\":\"Vercel for Bitbucket\",\"href\":\"/docs/git/vercel-for-bitbucket\"},{\"name\":\"Vercel for Azure Pipelines\",\"href\":\"/docs/git/vercel-for-azure-pipelines\"}]},{\"name\":\"Vercel CLI\",\"href\":\"/docs/deployments/deploy-with-vercel-cli\",\"singleFile\":true},{\"name\":\"Deploy Hooks\",\"href\":\"/docs/deploy-hooks\",\"singleFile\":true},{\"name\":\"Deploy Button\",\"href\":\"/docs/deploy-button\",\"posts\":[{\"name\":\"Demo\",\"href\":\"/docs/deploy-button/demo\"},{\"name\":\"Build Settings\",\"href\":\"/docs/deploy-button/build-settings\"},{\"name\":\"Source\",\"href\":\"/docs/deploy-button/source\"},{\"name\":\"Callback\",\"href\":\"/docs/deploy-button/callback\"},{\"name\":\"Environment Variables\",\"href\":\"/docs/deploy-button/environment-variables\"},{\"name\":\"Integrations\",\"href\":\"/docs/deploy-button/integrations\"}]}]},{\"name\":\"Deployment Environments\",\"href\":\"/docs/deployments/environments\",\"posts\":[{\"name\":\"Local Development\",\"href\":\"/docs/deployments/local-env\",\"singleFile\":true},{\"name\":\"Pre-production\",\"href\":\"/docs/deployments/pre-production\",\"posts\":[{\"name\":\"Preview\",\"href\":\"/docs/deployments/environments#preview-environment-pre-production\",\"posts\":[{\"name\":\"Share a Preview Deployment\",\"href\":\"/docs/deployments/sharing-deployments\",\"singleFile\":true},{\"name\":\"Preview Deployment Suffix\",\"href\":\"/docs/deployments/preview-deployment-suffix\",\"singleFile\":true}]},{\"name\":\"Custom Environments\",\"href\":\"/docs/deployments/custom-environments\"}]},{\"name\":\"Production\",\"href\":\"/docs/deployments/production-env\",\"singleFile\":true}]},{\"name\":\"Accessing your Deployment\",\"href\":\"/docs/deployments/generated-urls\",\"singleFile\":true},{\"name\":\"Manage Deployments\",\"href\":\"/docs/deployments/managing-deployments\",\"posts\":[{\"name\":\"Promoting deployments\",\"href\":\"/docs/deployments/promoting-a-deployment\"},{\"name\":\"Instant Rollback\",\"href\":\"/docs/instant-rollback\"},{\"name\":\"Exclude Files\",\"href\":\"/docs/deployments/vercel-ignore\"},{\"name\":\"Skew Protection\",\"href\":\"/docs/skew-protection\"}]},{\"name\":\"Webhooks\",\"href\":\"/docs/webhooks\",\"posts\":[{\"name\":\"Webhooks API\",\"href\":\"/docs/webhooks/webhooks-api\"}]},{\"name\":\"Inspecting Open Graph Metadata\",\"href\":\"/docs/deployments/og-preview\",\"singleFile\":true},{\"name\":\"Claim Deployments\",\"href\":\"/docs/deployments/claim-deployments\",\"singleFile\":true}]},{\"name\":\"Domains\",\"href\":\"/docs/domains\",\"description\":\"Adding, deploying, redirecting and transferring domains\",\"isProduct\":true,\"posts\":[{\"name\":\"Working with Domains\",\"href\":\"/docs/domains/working-with-domains\",\"posts\":[{\"name\":\"View \u0026 Search Domains\",\"href\":\"/docs/domains/working-with-domains/working-with-domains/view-and-search-domains\",\"singleFile\":true},{\"name\":\"Add a Custom Domain\",\"href\":\"/docs/domains/add-a-domain\",\"singleFile\":true},{\"name\":\"Deploy or Redirect a Domain\",\"href\":\"/docs/domains/deploying-and-redirecting\",\"singleFile\":true},{\"name\":\"Remove a Domain\",\"href\":\"/docs/domains/remove-a-domain\",\"singleFile\":true},{\"name\":\"Renew a Domain\",\"href\":\"/docs/domains/renew-a-domain\",\"singleFile\":true},{\"name\":\"Transfer your Domains\",\"href\":\"/docs/domains/working-with-domains/transfer-your-domain\",\"singleFile\":true},{\"name\":\"Assign a Domain to an Environment\",\"href\":\"/docs/domains/add-a-domain-to-environment\",\"singleFile\":true},{\"name\":\"Assign a Domain to a Branch\",\"href\":\"/docs/domains/working-with-domains/assign-domain-to-a-git-branch\",\"singleFile\":true}]},{\"name\":\"Working with DNS\",\"href\":\"/docs/domains/working-with-dns\",\"posts\":[{\"name\":\"Manage DNS records\",\"href\":\"/docs/domains/managing-dns-records\",\"singleFile\":true}]},{\"name\":\"Working with Nameservers\",\"href\":\"/docs/domains/working-with-nameservers\",\"posts\":[{\"name\":\"Manage Nameservers\",\"href\":\"/docs/domains/managing-nameservers\",\"singleFile\":true}]},{\"name\":\"Working with SSL\",\"href\":\"/docs/domains/working-with-ssl\",\"posts\":[{\"name\":\"Custom SSL Certificate\",\"href\":\"/docs/domains/custom-SSL-certificate\",\"singleFile\":true}]},{\"name\":\"Supported Domains for Purchase\",\"href\":\"/docs/domains/supported-domains\"},{\"name\":\"Troubleshooting Domains\",\"href\":\"/docs/domains/troubleshooting\",\"singleFile\":true}]},{\"name\":\"Going Live Checklist\",\"href\":\"/docs/production-checklist\",\"description\":\"Pre-launch checklist for your project\",\"isProduct\":false,\"singleFile\":true,\"posts\":[]},{\"name\":\"Pricing\",\"href\":\"/docs/pricing\",\"description\":\"Pricing, plans, and spend management\",\"posts\":[{\"name\":\"Regional Pricing\",\"href\":\"/docs/pricing/regional-pricing\",\"posts\":[{\"name\":\"Cape Town, South Africa\",\"href\":\"/docs/pricing/regional-pricing/cpt1\"},{\"name\":\"Cleveland, USA\",\"href\":\"/docs/pricing/regional-pricing/cle1\"},{\"name\":\"Dublin, Ireland\",\"href\":\"/docs/pricing/regional-pricing/dub1\"},{\"name\":\"Frankfurt, Germany\",\"href\":\"/docs/pricing/regional-pricing/fra1\"},{\"name\":\"Hong Kong\",\"href\":\"/docs/pricing/regional-pricing/hkg1\"},{\"name\":\"London, UK\",\"href\":\"/docs/pricing/regional-pricing/lhr1\"},{\"name\":\"Mumbai, India\",\"href\":\"/docs/pricing/regional-pricing/bom1\"},{\"name\":\"Osaka, Japan\",\"href\":\"/docs/pricing/regional-pricing/kix1\"},{\"name\":\"Paris, France\",\"href\":\"/docs/pricing/regional-pricing/cdg1\"},{\"name\":\"Portland, USA\",\"href\":\"/docs/pricing/regional-pricing/pdx1\"},{\"name\":\"San Francisco, USA\",\"href\":\"/docs/pricing/regional-pricing/sfo1\"},{\"name\":\"São Paulo, Brazil\",\"href\":\"/docs/pricing/regional-pricing/gru1\"},{\"name\":\"Seoul, South Korea\",\"href\":\"/docs/pricing/regional-pricing/icn1\"},{\"name\":\"Singapore\",\"href\":\"/docs/pricing/regional-pricing/sin1\"},{\"name\":\"Stockholm, Sweden\",\"href\":\"/docs/pricing/regional-pricing/arn1\"},{\"name\":\"Sydney, Australia\",\"href\":\"/docs/pricing/regional-pricing/syd1\"},{\"name\":\"Tokyo, Japan\",\"href\":\"/docs/pricing/regional-pricing/hnd1\"},{\"name\":\"Washington, D.C. USA\",\"href\":\"/docs/pricing/regional-pricing/iad1\"}]},{\"name\":\"Spend Management\",\"href\":\"/docs/spend-management\",\"singleFile\":true,\"description\":\"Get notified about or trigger actions based on your account spend\"},{\"name\":\"Calculating Resource Usage\",\"href\":\"/docs/pricing/how-does-vercel-calculate-usage-of-resources\",\"singleFile\":true},{\"name\":\"Billing \u0026 Invoices\",\"href\":\"/docs/pricing/understanding-my-invoice\",\"singleFile\":true,\"posts\":[{\"name\":\"Pro Billing FAQ\",\"href\":\"/docs/plans/pro/billing\",\"singleFile\":true},{\"name\":\"Enterprise Billing FAQ\",\"href\":\"/docs/plans/enterprise/billing\",\"singleFile\":true}]},{\"name\":\"Manage \u0026 Optimize Usage\",\"href\":\"/docs/pricing/manage-and-optimize-usage\",\"posts\":[{\"name\":\"Networking\",\"href\":\"/docs/pricing/networking\",\"singleFile\":true},{\"name\":\"Serverless Functions\",\"href\":\"/docs/pricing/serverless-functions\",\"singleFile\":true},{\"name\":\"Edge Functions\",\"href\":\"/docs/pricing/edge-functions\",\"singleFile\":true},{\"name\":\"Edge Middleware\",\"href\":\"/docs/pricing/edge-middleware\",\"singleFile\":true},{\"name\":\"Builds\",\"href\":\"/docs/builds/managing-builds\",\"singleFile\":true},{\"name\":\"Remote Cache Artifacts\",\"href\":\"/docs/pricing/artifacts\",\"singleFile\":true},{\"name\":\"Edge Config\",\"href\":\"/docs/pricing/edge-config\",\"singleFile\":true},{\"name\":\"Incremental Static Regeneration\",\"href\":\"/docs/pricing/incremental-static-regeneration\",\"singleFile\":true},{\"name\":\"Data Cache\",\"href\":\"/docs/pricing/data-cache\",\"singleFile\":true},{\"name\":\"Observability\",\"href\":\"/docs/pricing/observability\",\"singleFile\":true},{\"name\":\"Image Optimization\",\"href\":\"/docs/image-optimization/managing-image-optimization-costs\",\"singleFile\":true},{\"name\":\"Legacy Metrics\",\"href\":\"/docs/pricing/legacy\",\"singleFile\":true}]},{\"name\":\"Plans\",\"href\":\"/docs/plans\",\"posts\":[{\"name\":\"Hobby\",\"href\":\"/docs/plans/hobby\",\"singleFile\":true},{\"name\":\"Pro\",\"href\":\"/docs/plans/pro\",\"posts\":[{\"name\":\"Trials\",\"href\":\"/docs/plans/pro/trials\",\"singleFile\":true}]},{\"name\":\"Enterprise\",\"href\":\"/docs/plans/enterprise\"}]}]},{\"name\":\"Resources\",\"href\":\"/docs/resources\",\"description\":\"Learn about account management, error handling, and more\",\"open\":false,\"posts\":[{\"name\":\"Dashboard\",\"href\":\"/docs/dashboard-features/\",\"description\":\"View and manage all aspects of the Vercel platform\",\"isProduct\":true,\"posts\":[{\"name\":\"Overview\",\"href\":\"/docs/dashboard-features/overview\"},{\"name\":\"Notifications\",\"href\":\"/docs/notifications\"},{\"name\":\"Command Menu\",\"href\":\"/docs/dashboard-features/command-menu\"},{\"name\":\"Support Center\",\"href\":\"/docs/dashboard-features/support-center\"}]},{\"name\":\"Account Management\",\"href\":\"/docs/accounts\",\"description\":\"Create a Vercel identity and collaborate with teams\",\"isProduct\":true,\"posts\":[{\"name\":\"Create an Account\",\"href\":\"/docs/accounts/create-an-account\",\"singleFile\":true},{\"name\":\"Manage Emails\",\"href\":\"/docs/accounts/manage-emails\",\"singleFile\":true},{\"name\":\"Create a Team\",\"href\":\"/docs/accounts/create-a-team\",\"singleFile\":true},{\"name\":\"Team Roles \u0026 Permissions\",\"href\":\"/docs/accounts/team-members-and-roles\",\"posts\":[{\"name\":\"Access Roles\",\"href\":\"/docs/rbac/access-roles\",\"posts\":[{\"name\":\"Team Roles Reference\",\"href\":\"/docs/rbac/access-roles/team-level-roles\",\"singleFile\":true},{\"name\":\"Project Roles Reference\",\"href\":\"/docs/rbac/access-roles/project-level-roles\",\"singleFile\":true}]},{\"name\":\"Access Groups\",\"href\":\"/docs/rbac/access-groups\",\"singleFile\":true},{\"name\":\"Managing Team Members\",\"href\":\"/docs/rbac/managing-team-members\",\"singleFile\":true}]}]},{\"name\":\"Limits\",\"href\":\"/docs/limits\",\"description\":\"List of limits and limitations applied on Vercel\",\"isProduct\":true,\"posts\":[{\"name\":\"Fair use Guidelines\",\"href\":\"/docs/limits/fair-use-guidelines\"}]},{\"name\":\"General Errors\",\"href\":\"/docs/errors/error-list\",\"description\":\"General error handling guidance, that covers dashboard related errors\",\"singleFile\":true},{\"name\":\"Error Codes\",\"href\":\"/docs/errors\",\"description\":\"List of possible errors when interacting with Vercel\",\"isProduct\":false,\"hideChildrenSide\":true,\"posts\":[{\"name\":\"BODY_NOT_A_STRING_FROM_FUNCTION\",\"href\":\"/docs/errors/BODY_NOT_A_STRING_FROM_FUNCTION\"},{\"name\":\"DEPLOYMENT_BLOCKED\",\"href\":\"/docs/errors/DEPLOYMENT_BLOCKED\"},{\"name\":\"DEPLOYMENT_DISABLED\",\"href\":\"/docs/errors/DEPLOYMENT_DISABLED\"},{\"name\":\"DEPLOYMENT_DELETED\",\"href\":\"/docs/errors/DEPLOYMENT_DELETED\"},{\"name\":\"DEPLOYMENT_NOT_FOUND\",\"href\":\"/docs/errors/DEPLOYMENT_NOT_FOUND\"},{\"name\":\"DEPLOYMENT_NOT_READY_REDIRECTING\",\"href\":\"/docs/errors/DEPLOYMENT_NOT_READY_REDIRECTING\"},{\"name\":\"DEPLOYMENT_PAUSED\",\"href\":\"/docs/errors/DEPLOYMENT_PAUSED\"},{\"name\":\"DNS_HOSTNAME_EMPTY\",\"href\":\"/docs/errors/DNS_HOSTNAME_EMPTY\"},{\"name\":\"DNS_HOSTNAME_NOT_FOUND\",\"href\":\"/docs/errors/DNS_HOSTNAME_NOT_FOUND\"},{\"name\":\"DNS_HOSTNAME_RESOLVE_FAILED\",\"href\":\"/docs/errors/DNS_HOSTNAME_RESOLVE_FAILED\"},{\"name\":\"DNS_HOSTNAME_RESOLVED_PRIVATE\",\"href\":\"/docs/errors/DNS_HOSTNAME_RESOLVED_PRIVATE\"},{\"name\":\"DNS_HOSTNAME_SERVER_ERROR\",\"href\":\"/docs/errors/DNS_HOSTNAME_SERVER_ERROR\"},{\"name\":\"MIDDLEWARE_INVOCATION_FAILED\",\"href\":\"/docs/errors/MIDDLEWARE_INVOCATION_FAILED\"},{\"name\":\"MIDDLEWARE_INVOCATION_TIMEOUT\",\"href\":\"/docs/errors/MIDDLEWARE_INVOCATION_TIMEOUT\"},{\"name\":\"EDGE_FUNCTION_INVOCATION_FAILED\",\"href\":\"/docs/errors/EDGE_FUNCTION_INVOCATION_FAILED\"},{\"name\":\"EDGE_FUNCTION_INVOCATION_TIMEOUT\",\"href\":\"/docs/errors/EDGE_FUNCTION_INVOCATION_TIMEOUT\"},{\"name\":\"FALLBACK_BODY_TOO_LARGE\",\"href\":\"/docs/errors/FALLBACK_BODY_TOO_LARGE\"},{\"name\":\"FUNCTION_INVOCATION_FAILED\",\"href\":\"/docs/errors/FUNCTION_INVOCATION_FAILED\"},{\"name\":\"FUNCTION_INVOCATION_TIMEOUT\",\"href\":\"/docs/errors/FUNCTION_INVOCATION_TIMEOUT\"},{\"name\":\"FUNCTION_THROTTLED\",\"href\":\"/docs/errors/FUNCTION_THROTTLED\"},{\"name\":\"FUNCTION_PAYLOAD_TOO_LARGE\",\"href\":\"/docs/errors/FUNCTION_PAYLOAD_TOO_LARGE\"},{\"name\":\"FUNCTION_RESPONSE_PAYLOAD_TOO_LARGE\",\"href\":\"/docs/errors/FUNCTION_RESPONSE_PAYLOAD_TOO_LARGE\"},{\"name\":\"INFINITE_LOOP_DETECTED\",\"href\":\"/docs/errors/INFINITE_LOOP_DETECTED\"},{\"name\":\"INTERNAL_CACHE_ERROR\",\"href\":\"/docs/errors/INTERNAL_CACHE_ERROR\"},{\"name\":\"INTERNAL_CACHE_KEY_TOO_LONG\",\"href\":\"/docs/errors/INTERNAL_CACHE_KEY_TOO_LONG\"},{\"name\":\"INTERNAL_CACHE_LOCK_FULL\",\"href\":\"/docs/errors/INTERNAL_CACHE_LOCK_FULL\"},{\"name\":\"INTERNAL_CACHE_LOCK_TIMEOUT\",\"href\":\"/docs/errors/INTERNAL_CACHE_LOCK_TIMEOUT\"},{\"name\":\"INTERNAL_DEPLOYMENT_FETCH_FAILED\",\"href\":\"/docs/errors/INTERNAL_DEPLOYMENT_FETCH_FAILED\"},{\"name\":\"INTERNAL_EDGE_FUNCTION_INVOCATION_FAILED\",\"href\":\"/docs/errors/INTERNAL_EDGE_FUNCTION_INVOCATION_FAILED\"},{\"name\":\"INTERNAL_EDGE_FUNCTION_INVOCATION_TIMEOUT\",\"href\":\"/docs/errors/INTERNAL_EDGE_FUNCTION_INVOCATION_TIMEOUT\"},{\"name\":\"INTERNAL_OPTIMIZED_IMAGE_REQUEST_FAILED\",\"href\":\"/docs/errors/INTERNAL_OPTIMIZED_IMAGE_REQUEST_FAILED\"},{\"name\":\"INTERNAL_ROUTER_CANNOT_PARSE_PATH\",\"href\":\"/docs/errors/INTERNAL_ROUTER_CANNOT_PARSE_PATH\"},{\"name\":\"INVALID_IMAGE_OPTIMIZE_REQUEST\",\"href\":\"/docs/errors/INVALID_IMAGE_OPTIMIZE_REQUEST\"},{\"name\":\"OPTIMIZED_EXTERNAL_IMAGE_REQUEST_FAILED\",\"href\":\"/docs/errors/OPTIMIZED_EXTERNAL_IMAGE_REQUEST_FAILED\"},{\"name\":\"OPTIMIZED_EXTERNAL_IMAGE_REQUEST_INVALID\",\"href\":\"/docs/errors/OPTIMIZED_EXTERNAL_IMAGE_REQUEST_INVALID\"},{\"name\":\"OPTIMIZED_EXTERNAL_IMAGE_REQUEST_UNAUTHORIZED\",\"href\":\"/docs/errors/OPTIMIZED_EXTERNAL_IMAGE_REQUEST_UNAUTHORIZED\"},{\"name\":\"REQUEST_HEADER_TOO_LARGE\",\"href\":\"/docs/errors/REQUEST_HEADER_TOO_LARGE\"},{\"name\":\"ROUTER_EXTERNAL_TARGET_HANDSHAKE_ERROR\",\"href\":\"/docs/errors/ROUTER_EXTERNAL_TARGET_HANDSHAKE_ERROR\"},{\"name\":\"INTERNAL_FUNCTION_INVOCATION_FAILED\",\"href\":\"/docs/errors/INTERNAL_FUNCTION_INVOCATION_FAILED\"},{\"name\":\"INTERNAL_FUNCTION_INVOCATION_TIMEOUT\",\"href\":\"/docs/errors/INTERNAL_FUNCTION_INVOCATION_TIMEOUT\"},{\"name\":\"INTERNAL_FUNCTION_NOT_FOUND\",\"href\":\"/docs/errors/INTERNAL_FUNCTION_NOT_FOUND\"},{\"name\":\"INTERNAL_FUNCTION_NOT_READY\",\"href\":\"/docs/errors/INTERNAL_FUNCTION_NOT_READY\"},{\"name\":\"INTERNAL_MISSING_RESPONSE_FROM_CACHE\",\"href\":\"/docs/errors/INTERNAL_MISSING_RESPONSE_FROM_CACHE\"},{\"name\":\"INTERNAL_STATIC_REQUEST_FAILED\",\"href\":\"/docs/errors/INTERNAL_STATIC_REQUEST_FAILED\"},{\"name\":\"INTERNAL_UNARCHIVE_FAILED\",\"href\":\"/docs/errors/INTERNAL_UNARCHIVE_FAILED\"},{\"name\":\"INTERNAL_UNEXPECTED_ERROR\",\"href\":\"/docs/errors/INTERNAL_UNEXPECTED_ERROR\"},{\"name\":\"INVALID_REQUEST_METHOD\",\"href\":\"/docs/errors/INVALID_REQUEST_METHOD\"},{\"name\":\"MALFORMED_REQUEST_HEADER\",\"href\":\"/docs/errors/MALFORMED_REQUEST_HEADER\"},{\"name\":\"NO_RESPONSE_FROM_FUNCTION\",\"href\":\"/docs/errors/NO_RESPONSE_FROM_FUNCTION\"},{\"name\":\"NOT_FOUND\",\"href\":\"/docs/errors/NOT_FOUND\"},{\"name\":\"RANGE_END_NOT_VALID\",\"href\":\"/docs/errors/RANGE_END_NOT_VALID\"},{\"name\":\"RANGE_GROUP_NOT_VALID\",\"href\":\"/docs/errors/RANGE_GROUP_NOT_VALID\"},{\"name\":\"RANGE_MISSING_UNIT\",\"href\":\"/docs/errors/RANGE_MISSING_UNIT\"},{\"name\":\"RANGE_START_NOT_VALID\",\"href\":\"/docs/errors/RANGE_START_NOT_VALID\"},{\"name\":\"RANGE_UNIT_NOT_SUPPORTED\",\"href\":\"/docs/errors/RANGE_UNIT_NOT_SUPPORTED\"},{\"name\":\"TOO_MANY_RANGES\",\"href\":\"/docs/errors/TOO_MANY_RANGES\"},{\"name\":\"RESOURCE_NOT_FOUND\",\"href\":\"/docs/errors/RESOURCE_NOT_FOUND\"},{\"name\":\"ROUTER_CANNOT_MATCH\",\"href\":\"/docs/errors/ROUTER_CANNOT_MATCH\"},{\"name\":\"ROUTER_EXTERNAL_TARGET_CONNECTION_ERROR\",\"href\":\"/docs/errors/ROUTER_EXTERNAL_TARGET_CONNECTION_ERROR\"},{\"name\":\"ROUTER_EXTERNAL_TARGET_ERROR\",\"href\":\"/docs/errors/ROUTER_EXTERNAL_TARGET_ERROR\"},{\"name\":\"ROUTER_TOO_MANY_HAS_SELECTIONS\",\"href\":\"/docs/errors/ROUTER_TOO_MANY_HAS_SELECTIONS\"},{\"name\":\"TOO_MANY_FILESYSTEM_CHECKS\",\"href\":\"/docs/errors/TOO_MANY_FILESYSTEM_CHECKS\"},{\"name\":\"TOO_MANY_FORKS\",\"href\":\"/docs/errors/TOO_MANY_FORKS\"},{\"name\":\"URL_TOO_LONG\",\"href\":\"/docs/errors/URL_TOO_LONG\"}]},{\"name\":\"Release Phases\",\"href\":\"/docs/release-phases\",\"description\":\"Phases of the Vercel Product release cycle\",\"isProduct\":true,\"singleFile\":true,\"posts\":[{\"name\":\"Public Beta Agreement\",\"href\":\"/docs/release-phases/public-beta-agreement\",\"singleFile\":true}]},{\"name\":\"Private Registry\",\"href\":\"/docs/private-registry\",\"description\":\"Vercel's private registry\",\"singleFile\":true},{\"name\":\"Glossary\",\"href\":\"/docs/vercel-platform/glossary\",\"description\":\"Common terms and concepts used by Vercel\",\"singleFile\":true}]}]},{\"name\":\"Infrastructure\",\"href\":\"/docs/infrastructure/\",\"key\":\"infrastructure\",\"isProduct\":true,\"posts\":[{\"name\":\"Edge Network\",\"href\":\"/docs/edge-network\",\"description\":\"Configurable CDN with caching, compute, and routing rules\",\"isProduct\":true,\"posts\":[{\"name\":\"Regions\",\"href\":\"/docs/edge-network/regions\",\"singleFile\":true},{\"name\":\"Edge Cache\",\"href\":\"/docs/edge-network/caching\",\"description\":\"Content caching at the edge for fast responses\",\"isProduct\":true,\"singleFile\":true},{\"name\":\"Redirects\",\"href\":\"/docs/redirects\",\"singleFile\":true},{\"name\":\"Rewrites\",\"href\":\"/docs/rewrites\",\"singleFile\":true},{\"name\":\"Headers\",\"href\":\"/docs/edge-network/headers\",\"posts\":[{\"name\":\"Request Headers\",\"href\":\"/docs/edge-network/headers/request-headers\",\"singleFile\":true},{\"name\":\"Response Headers\",\"href\":\"/docs/edge-network/headers/response-headers\",\"singleFile\":true},{\"name\":\"Cache-Control Headers\",\"href\":\"/docs/edge-network/headers/cache-control-headers\",\"singleFile\":true},{\"name\":\"Content Security Policy\",\"href\":\"/docs/edge-network/security-headers\",\"singleFile\":true}]},{\"name\":\"Compression\",\"href\":\"/docs/edge-network/compression\",\"singleFile\":true},{\"name\":\"Directory Listing\",\"href\":\"/docs/directory-listing\",\"singleFile\":true}]},{\"name\":\"Vercel Functions\",\"href\":\"/docs/functions\",\"description\":\"Code on-demand without managing your own infrastructure\",\"isProduct\":true,\"posts\":[{\"name\":\"Quickstart\",\"href\":\"/docs/functions/quickstart\",\"singleFile\":true},{\"name\":\"Streaming\",\"href\":\"/docs/functions/streaming-functions\",\"singleFile\":false},{\"name\":\"Fluid Compute\",\"href\":\"/docs/functions/fluid-compute\",\"singleFile\":true},{\"name\":\"Runtimes\",\"href\":\"/docs/functions/runtimes\",\"posts\":[{\"name\":\"Node.js\",\"href\":\"/docs/functions/runtimes/node-js\",\"posts\":[{\"name\":\"Node.js Versions\",\"href\":\"/docs/functions/runtimes/node-js/node-js-versions\",\"singleFile\":true},{\"name\":\"Advanced Node.js Configuration\",\"href\":\"/docs/functions/runtimes/node-js/advanced-node-configuration\",\"singleFile\":true}]},{\"name\":\"Go\",\"href\":\"/docs/functions/runtimes/go\",\"singleFile\":true},{\"name\":\"Python\",\"href\":\"/docs/functions/runtimes/python\",\"singleFile\":true},{\"name\":\"Ruby\",\"href\":\"/docs/functions/runtimes/ruby\",\"singleFile\":true},{\"name\":\"WebAssembly (Wasm)\",\"href\":\"/docs/functions/wasm\"},{\"name\":\"Edge\",\"href\":\"/docs/functions/runtimes/edge\",\"posts\":[{\"name\":\"Edge Functions\",\"href\":\"/docs/functions/runtimes/edge/edge-functions\"}]},{\"name\":\"Concurrency Scaling\",\"href\":\"/docs/functions/concurrency-scaling\"}]},{\"name\":\"Configuring Functions\",\"href\":\"/docs/functions/configuring-functions\",\"posts\":[{\"name\":\"Runtime\",\"href\":\"/docs/functions/configuring-functions/runtime\",\"singleFile\":true},{\"name\":\"Region\",\"href\":\"/docs/functions/configuring-functions/region\",\"singleFile\":true},{\"name\":\"Duration\",\"href\":\"/docs/functions/configuring-functions/duration\",\"singleFile\":true},{\"name\":\"Memory / CPU\",\"href\":\"/docs/functions/configuring-functions/memory\",\"singleFile\":true},{\"name\":\"Advanced Configuration\",\"href\":\"/docs/functions/configuring-functions/advanced-configuration\"}]},{\"name\":\"API Reference\",\"href\":\"/docs/functions/functions-api-reference\",\"posts\":[{\"name\":\"@vercel/functions\",\"href\":\"/docs/functions/functions-api-reference/vercel-functions-package\",\"singleFile\":true}]},{\"name\":\"Logs\",\"href\":\"/docs/functions/logs\",\"singleFile\":true},{\"name\":\"Limits\",\"href\":\"/docs/functions/limitations\",\"singleFile\":true},{\"name\":\"Usage \u0026 Pricing\",\"href\":\"/docs/functions/usage-and-pricing\",\"singleFile\":true}]},{\"name\":\"Edge Middleware\",\"href\":\"/docs/edge-middleware\",\"description\":\"Code that executes before a request is processed on a site\",\"isProduct\":true,\"posts\":[{\"name\":\"Quickstart\",\"href\":\"/docs/edge-middleware/quickstart\",\"singleFile\":true},{\"name\":\"Middleware API\",\"href\":\"/docs/edge-middleware/middleware-api\",\"singleFile\":true},{\"name\":\"Edge Runtime\",\"href\":\"/docs/edge-middleware/edge-runtime\",\"singleFile\":true,\"isDuplicate\":true},{\"name\":\"Limitations\",\"href\":\"/docs/edge-middleware/limitations\",\"singleFile\":true},{\"name\":\"Usage \u0026 Pricing\",\"href\":\"/docs/edge-middleware/usage-and-pricing\",\"singleFile\":true}]},{\"name\":\"Open Graph Image Generation\",\"href\":\"/docs/og-image-generation\",\"description\":\"Generate images for social media sharing\",\"posts\":[{\"name\":\"@vercel/og\",\"href\":\"/docs/og-image-generation/og-image-api\",\"singleFile\":true}]},{\"name\":\"Image Optimization\",\"href\":\"/docs/image-optimization\",\"description\":\"Serve high-quality images with minimal impact on page load times\",\"isProduct\":true,\"posts\":[{\"name\":\"Quickstart\",\"href\":\"/docs/image-optimization/quickstart\",\"singleFile\":true},{\"name\":\"Pricing \u0026 Limits\",\"href\":\"/docs/image-optimization/limits-and-pricing\"},{\"name\":\"Managing Costs\",\"href\":\"/docs/image-optimization/managing-image-optimization-costs\",\"singleFile\":true},{\"name\":\"Legacy Pricing\",\"href\":\"/docs/image-optimization/legacy-pricing\"}]},{\"name\":\"Incremental Static Regeneration\",\"href\":\"/docs/incremental-static-regeneration\",\"description\":\"Create or update content without redeploying your site\",\"isProduct\":true,\"posts\":[{\"name\":\"Quickstart\",\"href\":\"/docs/incremental-static-regeneration/quickstart\",\"singleFile\":true},{\"name\":\"Usage \u0026 Pricing\",\"href\":\"/docs/incremental-static-regeneration/limits-and-pricing\"}]},{\"name\":\"Data Cache\",\"href\":\"/docs/infrastructure/data-cache\",\"description\":\"Specialized cache for storing responses from fetches\",\"isProduct\":true,\"posts\":[{\"name\":\"Managing Data Cache\",\"href\":\"/docs/infrastructure/data-cache/manage-data-cache\"},{\"name\":\"Usage\",\"href\":\"/docs/infrastructure/data-cache/limits\"}]},{\"name\":\"Cron Jobs\",\"description\":\"Time-based scheduling to automate repetitive tasks\",\"isProduct\":true,\"href\":\"/docs/cron-jobs\",\"posts\":[{\"name\":\"Quickstart\",\"href\":\"/docs/cron-jobs/quickstart\"},{\"name\":\"Manage Cron Jobs\",\"href\":\"/docs/cron-jobs/manage-cron-jobs\"},{\"name\":\"Usage \u0026 Pricing\",\"href\":\"/docs/cron-jobs/usage-and-pricing\"}]}]},{\"name\":\"Workflow\",\"href\":\"/docs/workflow-collaboration\",\"key\":\"workflow\",\"isProduct\":true,\"posts\":[{\"name\":\"Vercel Toolbar\",\"href\":\"/docs/workflow-collaboration/vercel-toolbar\",\"description\":\"Manage your Vercel projects from your browser\",\"isProduct\":true,\"posts\":[{\"name\":\"Managing the Toolbar's Visibility\",\"href\":\"/docs/workflow-collaboration/vercel-toolbar/managing-toolbar\",\"singleFile\":true},{\"name\":\"Browser Extension\",\"href\":\"/docs/workflow-collaboration/vercel-toolbar/browser-extension\",\"singleFile\":true},{\"name\":\"Add to Your Environment\",\"href\":\"/docs/vercel-toolbar/in-production-and-localhost\",\"singleFile\":true,\"posts\":[{\"name\":\"Add to Localhost\",\"href\":\"/docs/vercel-toolbar/in-production-and-localhost/add-to-localhost\",\"singleFile\":true},{\"name\":\"Add to Production\",\"href\":\"/docs/vercel-toolbar/in-production-and-localhost/add-to-production\",\"singleFile\":true}]},{\"name\":\"Layout Shift Tool\",\"href\":\"/docs/workflow-collaboration/layout-shift-tool\",\"description\":\"Measure layout shifts in your application\",\"singleFile\":true},{\"name\":\"Interaction Timing Tool\",\"href\":\"/docs/workflow-collaboration/interaction-timing-tool\",\"description\":\"Measure interaction timing in your application\",\"singleFile\":true},{\"name\":\"Accessibility Audit Tool\",\"href\":\"/docs/vercel-toolbar/accessibility-audit-tool\",\"description\":\"Audit your application for accessibility issues\",\"singleFile\":true}]},{\"name\":\"Feature Flags\",\"href\":\"/docs/feature-flags\",\"description\":\"View and override your application's feature flags\",\"isProduct\":true,\"posts\":[{\"name\":\"Flags SDK\",\"href\":\"/docs/feature-flags/feature-flags-pattern\"},{\"name\":\"Flags Explorer\",\"href\":\"/docs/feature-flags/flags-explorer\",\"posts\":[{\"name\":\"Quickstart\",\"href\":\"/docs/feature-flags/flags-explorer/getting-started\",\"singleFile\":true},{\"name\":\"Reference\",\"href\":\"/docs/feature-flags/flags-explorer/reference\",\"singleFile\":true}]},{\"name\":\"Integrate Flags with Vercel Platform\",\"href\":\"/docs/feature-flags/integrate-vercel-platform\",\"posts\":[{\"name\":\"Runtime Logs\",\"href\":\"/docs/feature-flags/integrate-with-runtime-logs\",\"singleFile\":true},{\"name\":\"Web Analytics\",\"href\":\"/docs/feature-flags/integrate-with-web-analytics\",\"singleFile\":true}]}]},{\"name\":\"Comments\",\"href\":\"/docs/workflow-collaboration/comments\",\"description\":\"Allow collaborators to give direct feedback on preview deployments\",\"isProduct\":true,\"posts\":[{\"name\":\"Enabling Comments\",\"href\":\"/docs/workflow-collaboration/comments/how-comments-work\",\"singleFile\":true},{\"name\":\"Using Comments\",\"href\":\"/docs/workflow-collaboration/comments/using-comments\",\"singleFile\":true},{\"name\":\"Managing Comments\",\"href\":\"/docs/workflow-collaboration/comments/managing-comments\",\"singleFile\":true},{\"name\":\"Integrations\",\"href\":\"/docs/workflow-collaboration/comments/integrations\",\"singleFile\":true}]},{\"name\":\"Edit Mode\",\"href\":\"/docs/workflow-collaboration/edit-mode\",\"description\":\"Edit your content directly on your site\",\"singleFile\":true},{\"name\":\"Draft Mode\",\"href\":\"/docs/workflow-collaboration/draft-mode\",\"description\":\"Preview changes before publishing\",\"singleFile\":true},{\"name\":\"Conformance\",\"href\":\"/docs/workflow-collaboration/conformance\",\"description\":\"Improve collaboration, productivity, and software quality at scale\",\"isProduct\":true,\"singleFile\":true,\"posts\":[{\"name\":\"Getting Started\",\"href\":\"/docs/workflow-collaboration/conformance/getting-started\",\"singleFile\":true},{\"name\":\"CLI\",\"href\":\"/docs/workflow-collaboration/conformance/cli\",\"singleFile\":true},{\"name\":\"Dashboard\",\"href\":\"/docs/conformance/dashboard-overview\",\"singleFile\":true,\"posts\":[{\"name\":\"Catalog reference\",\"href\":\"/docs/conformance/dashboard-overview/catalog\",\"singleFile\":true}]},{\"name\":\"Allowlist\",\"href\":\"/docs/conformance/allowlist\",\"singleFile\":true},{\"name\":\"Customizing Conformance\",\"href\":\"/docs/conformance/customize\",\"singleFile\":true},{\"name\":\"Rules\",\"href\":\"/docs/conformance/rules\",\"hideChildrenSide\":true,\"posts\":[{\"name\":\"BFCACHE_INTEGRITY_NO_UNLOAD_LISTENERS\",\"href\":\"/docs/conformance/rules/BFCACHE_INTEGRITY_NO_UNLOAD_LISTENERS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"BFCACHE_INTEGRITY_REQUIRE_NOOPENER_ATTRIBUTE\",\"href\":\"/docs/conformance/rules/BFCACHE_INTEGRITY_REQUIRE_NOOPENER_ATTRIBUTE\",\"singleFile\":true,\"isCode\":true},{\"name\":\"ESLINT_CONFIGURATION\",\"href\":\"/docs/conformance/rules/ESLINT_CONFIGURATION\",\"singleFile\":true,\"isCode\":true},{\"name\":\"ESLINT_NEXT_RULES_REQUIRED\",\"href\":\"/docs/conformance/rules/ESLINT_NEXT_RULES_REQUIRED\",\"singleFile\":true,\"isCode\":true},{\"name\":\"ESLINT_REACT_RULES_REQUIRED\",\"href\":\"/docs/conformance/rules/ESLINT_REACT_RULES_REQUIRED\",\"singleFile\":true,\"isCode\":true},{\"name\":\"ESLINT_RULES_REQUIRED\",\"href\":\"/docs/conformance/rules/ESLINT_RULES_REQUIRED\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_MISSING_MODULARIZE_IMPORTS\",\"href\":\"/docs/conformance/rules/NEXTJS_MISSING_MODULARIZE_IMPORTS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_MISSING_OPTIMIZE_PACKAGE_IMPORTS\",\"href\":\"/docs/conformance/rules/NEXTJS_MISSING_OPTIMIZE_PACKAGE_IMPORTS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_MISSING_NEXT13_TYPESCRIPT_PLUGIN\",\"href\":\"/docs/conformance/rules/NEXTJS_MISSING_NEXT13_TYPESCRIPT_PLUGIN\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_MISSING_REACT_STRICT_MODE\",\"href\":\"/docs/conformance/rules/NEXTJS_MISSING_REACT_STRICT_MODE\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_MISSING_SECURITY_HEADERS\",\"href\":\"/docs/conformance/rules/NEXTJS_MISSING_SECURITY_HEADERS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_NO_BEFORE_INTERACTIVE\",\"href\":\"/docs/conformance/rules/NEXTJS_NO_BEFORE_INTERACTIVE\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_NO_CLIENT_DEPS_IN_MIDDLEWARE\",\"href\":\"/docs/conformance/rules/NEXTJS_NO_CLIENT_DEPS_IN_MIDDLEWARE\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_NO_DYNAMIC_AUTO\",\"href\":\"/docs/conformance/rules/NEXTJS_NO_DYNAMIC_AUTO\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_NO_FETCH_IN_SERVER_PROPS\",\"href\":\"/docs/conformance/rules/NEXTJS_NO_FETCH_IN_SERVER_PROPS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_NO_GET_INITIAL_PROPS\",\"href\":\"/docs/conformance/rules/NEXTJS_NO_GET_INITIAL_PROPS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_NO_SELF_HOSTED_VIDEOS\",\"href\":\"/docs/conformance/rules/NEXTJS_NO_SELF_HOSTED_VIDEOS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_NO_TURBO_CACHE\",\"href\":\"/docs/conformance/rules/NEXTJS_NO_TURBO_CACHE\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_SAFE_SVG_IMAGES\",\"href\":\"/docs/conformance/rules/NEXTJS_SAFE_SVG_IMAGES\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_SAFE_URL_IMPORTS\",\"href\":\"/docs/conformance/rules/NEXTJS_SAFE_URL_IMPORTS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_UNNEEDED_GET_SERVER_SIDE_PROPS\",\"href\":\"/docs/conformance/rules/NEXTJS_UNNEEDED_GET_SERVER_SIDE_PROPS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_NO_ASYNC_PAGE\",\"href\":\"/docs/conformance/rules/NEXTJS_NO_ASYNC_PAGE\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_NO_ASYNC_LAYOUT\",\"href\":\"/docs/conformance/rules/NEXTJS_NO_ASYNC_LAYOUT\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_USE_NATIVE_FETCH\",\"href\":\"/docs/conformance/rules/NEXTJS_USE_NATIVE_FETCH\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_NO_PRODUCTION_SOURCE_MAPS\",\"href\":\"/docs/conformance/rules/NEXTJS_NO_PRODUCTION_SOURCE_MAPS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_USE_NEXT_FONT\",\"href\":\"/docs/conformance/rules/NEXTJS_USE_NEXT_FONT\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_USE_NEXT_IMAGE\",\"href\":\"/docs/conformance/rules/NEXTJS_USE_NEXT_IMAGE\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_USE_NEXT_SCRIPT\",\"href\":\"/docs/conformance/rules/NEXTJS_USE_NEXT_SCRIPT\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NO_ASSIGN_WINDOW_LOCATION\",\"href\":\"/docs/conformance/rules/NO_ASSIGN_WINDOW_LOCATION\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NO_CORS_HEADERS\",\"href\":\"/docs/conformance/rules/NO_CORS_HEADERS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NO_DANGEROUS_HTML\",\"href\":\"/docs/conformance/rules/NO_DANGEROUS_HTML\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NO_DOCUMENT_WRITE\",\"href\":\"/docs/conformance/rules/NO_DOCUMENT_WRITE\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NO_EVAL\",\"href\":\"/docs/conformance/rules/NO_EVAL\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NO_EXTERNAL_CSS_AT_IMPORTS\",\"href\":\"/docs/conformance/rules/NO_EXTERNAL_CSS_AT_IMPORTS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NO_FETCH_FROM_MIDDLEWARE\",\"href\":\"/docs/conformance/rules/NO_FETCH_FROM_MIDDLEWARE\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NO_INSTANCEOF_ERROR\",\"href\":\"/docs/conformance/rules/NO_INSTANCEOF_ERROR\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NO_MIXED_ASYNC_MODULES\",\"href\":\"/docs/conformance/rules/NO_MIXED_ASYNC_MODULES\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NO_SERIAL_ASYNC_CALLS\",\"href\":\"/docs/conformance/rules/NO_SERIAL_ASYNC_CALLS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NO_VARIABLE_IMPORT_REFERENCES\",\"href\":\"/docs/conformance/rules/NO_VARIABLE_IMPORT_REFERENCES\",\"singleFile\":true,\"isCode\":true},{\"name\":\"PACKAGE_JSON_DESCRIPTION_REQUIRED\",\"href\":\"/docs/conformance/rules/PACKAGE_JSON_DESCRIPTION_REQUIRED\",\"singleFile\":true,\"isCode\":true},{\"name\":\"PACKAGE_JSON_DUPLICATE_DEPENDENCIES\",\"href\":\"/docs/conformance/rules/PACKAGE_JSON_DUPLICATE_DEPENDENCIES\",\"singleFile\":true,\"isCode\":true},{\"name\":\"PACKAGE_JSON_NAME_REQUIRED\",\"href\":\"/docs/conformance/rules/PACKAGE_JSON_NAME_REQUIRED\",\"singleFile\":true,\"isCode\":true},{\"name\":\"PACKAGE_JSON_PRIVATE_REQUIRED\",\"href\":\"/docs/conformance/rules/PACKAGE_JSON_PRIVATE_REQUIRED\",\"singleFile\":true,\"isCode\":true},{\"name\":\"PACKAGE_JSON_SIDE_EFFECTS_REQUIRED\",\"href\":\"/docs/conformance/rules/PACKAGE_JSON_SIDE_EFFECTS_REQUIRED\",\"singleFile\":true,\"isCode\":true},{\"name\":\"PACKAGE_JSON_TYPE_REQUIRED\",\"href\":\"/docs/conformance/rules/PACKAGE_JSON_TYPE_REQUIRED\",\"singleFile\":true,\"isCode\":true},{\"name\":\"PACKAGE_MANAGEMENT_NO_CIRCULAR_IMPORTS\",\"href\":\"/docs/conformance/rules/PACKAGE_MANAGEMENT_NO_CIRCULAR_IMPORTS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"PACKAGE_MANAGEMENT_NO_UNRESOLVED_IMPORTS\",\"href\":\"/docs/conformance/rules/PACKAGE_MANAGEMENT_NO_UNRESOLVED_IMPORTS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"PACKAGE_MANAGEMENT_REQUIRED_README\",\"href\":\"/docs/conformance/rules/PACKAGE_MANAGEMENT_REQUIRED_README\",\"singleFile\":true,\"isCode\":true},{\"name\":\"REACT_NO_STATIC_IMPORTS_IN_EVENT_HANDLERS\",\"href\":\"/docs/conformance/rules/REACT_NO_STATIC_IMPORTS_IN_EVENT_HANDLERS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"REACT_STABLE_CONTEXT_PROVIDER_VALUE\",\"href\":\"/docs/conformance/rules/REACT_STABLE_CONTEXT_PROVIDER_VALUE\",\"singleFile\":true,\"isCode\":true},{\"name\":\"NEXTJS_REQUIRE_EXPLICIT_DYNAMIC\",\"href\":\"/docs/conformance/rules/NEXTJS_REQUIRE_EXPLICIT_DYNAMIC\",\"singleFile\":true,\"isCode\":true},{\"name\":\"REQUIRE_DOCS_ON_EXPORTED_FUNCTIONS\",\"href\":\"/docs/conformance/rules/REQUIRE_DOCS_ON_EXPORTED_FUNCTIONS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"REQUIRE_ONE_VERSION_POLICY\",\"href\":\"/docs/conformance/rules/REQUIRE_ONE_VERSION_POLICY\",\"singleFile\":true,\"isCode\":true},{\"name\":\"REQUIRE_NODE_VERSION_FILE\",\"href\":\"/docs/conformance/rules/REQUIRE_NODE_VERSION_FILE\",\"singleFile\":true,\"isCode\":true},{\"name\":\"SET_COOKIE_VALIDATION\",\"href\":\"/docs/conformance/rules/SET_COOKIE_VALIDATION\",\"singleFile\":true,\"isCode\":true},{\"name\":\"TESTS_NO_CONDITIONAL_ASSERTIONS\",\"href\":\"/docs/conformance/rules/TESTS_NO_CONDITIONAL_ASSERTIONS\",\"singleFile\":true,\"isCode\":true},{\"name\":\"TESTS_NO_ONLY\",\"href\":\"/docs/conformance/rules/TESTS_NO_ONLY\",\"singleFile\":true,\"isCode\":true},{\"name\":\"TYPESCRIPT_CONFIGURATION\",\"href\":\"/docs/conformance/rules/TYPESCRIPT_CONFIGURATION\",\"singleFile\":true,\"isCode\":true},{\"name\":\"TYPESCRIPT_ONLY\",\"href\":\"/docs/conformance/rules/TYPESCRIPT_ONLY\",\"singleFile\":true,\"isCode\":true},{\"name\":\"WORKSPACE_MISSING_CONFORMANCE_SCRIPT\",\"href\":\"/docs/conformance/rules/WORKSPACE_MISSING_CONFORMANCE_SCRIPT\",\"singleFile\":true,\"isCode\":true},{\"name\":\"WORKSPACE_MISSING_PACKAGE_JSON\",\"href\":\"/docs/conformance/rules/WORKSPACE_MISSING_PACKAGE_JSON\",\"singleFile\":true,\"isCode\":true}]},{\"name\":\"Conformance Custom Rules\",\"href\":\"/docs/workflow-collaboration/conformance/custom-rules\",\"posts\":[{\"name\":\"forbidden-code\",\"href\":\"/docs/workflow-collaboration/conformance/custom-rules/forbidden-code\",\"singleFile\":true,\"isCode\":true},{\"name\":\"forbidden-dependencies\",\"href\":\"/docs/workflow-collaboration/conformance/custom-rules/forbidden-dependencies\",\"singleFile\":true,\"isCode\":true},{\"name\":\"forbidden-imports\",\"href\":\"/docs/workflow-collaboration/conformance/custom-rules/forbidden-imports\",\"singleFile\":true,\"isCode\":true},{\"name\":\"forbidden-packages\",\"href\":\"/docs/workflow-collaboration/conformance/custom-rules/forbidden-packages\",\"singleFile\":true,\"isCode\":true},{\"name\":\"forbidden-properties\",\"href\":\"/docs/workflow-collaboration/conformance/custom-rules/forbidden-properties\",\"singleFile\":true,\"isCode\":true}]},{\"name\":\"Changelog\",\"href\":\"/docs/workflow-collaboration/conformance/changelog\",\"singleFile\":true}]},{\"name\":\"Code Owners\",\"href\":\"/docs/code-owners\",\"singleFile\":true,\"description\":\"Define users or teams that are responsible for your codebase\",\"isProduct\":true,\"posts\":[{\"name\":\"Getting Started\",\"href\":\"/docs/code-owners/getting-started\",\"singleFile\":true},{\"name\":\"CLI\",\"href\":\"/docs/code-owners/cli\",\"singleFile\":true},{\"name\":\"Code Approvers\",\"href\":\"/docs/code-owners/code-approvers\",\"singleFile\":true},{\"name\":\"Changelog\",\"href\":\"/docs/code-owners/changelog\",\"singleFile\":true}]}]},{\"name\":\"Storage\",\"href\":\"/docs/storage\",\"key\":\"storage\",\"isProduct\":true,\"posts\":[{\"name\":\"Storage on Vercel\",\"href\":\"/docs/storage\",\"description\":\"Learn about Vercel’s storage solutions\",\"isProduct\":true,\"singleFile\":true},{\"name\":\"Vercel Blob\",\"href\":\"/docs/storage/vercel-blob\",\"description\":\"File serving and uploading via a global network with unique URLs\",\"isProduct\":true,\"posts\":[{\"name\":\"Server Upload Quickstart\",\"href\":\"/docs/storage/vercel-blob/server-upload\",\"singleFile\":true},{\"name\":\"Client Upload Quickstart\",\"href\":\"/docs/storage/vercel-blob/client-upload\",\"singleFile\":true},{\"name\":\"SDK Reference\",\"href\":\"/docs/storage/vercel-blob/using-blob-sdk\",\"singleFile\":true},{\"name\":\"Usage \u0026 Pricing\",\"href\":\"/docs/storage/vercel-blob/usage-and-pricing\",\"singleFile\":true}]},{\"name\":\"Edge Config\",\"href\":\"/docs/edge-config\",\"description\":\"Global data store designed for experimentation\",\"isProduct\":true,\"posts\":[{\"name\":\"Quickstart\",\"href\":\"/docs/edge-config/get-started\",\"singleFile\":true},{\"name\":\"Using Edge Config\",\"href\":\"/docs/edge-config/using-edge-config\",\"singleFile\":true},{\"name\":\"Manage with the Vercel API\",\"href\":\"/docs/edge-config/vercel-api\",\"singleFile\":true},{\"name\":\"Manage with the Dashboard\",\"href\":\"/docs/edge-config/edge-config-dashboard\",\"singleFile\":true},{\"name\":\"SDK Reference\",\"href\":\"/docs/edge-config/edge-config-sdk\",\"singleFile\":true},{\"name\":\"Edge Config Integrations\",\"href\":\"/docs/edge-config/integrations\",\"posts\":[{\"name\":\"LaunchDarkly\",\"href\":\"/docs/edge-config/integrations/launchdarkly-edge-config\",\"singleFile\":true},{\"name\":\"Statsig\",\"href\":\"/docs/edge-config/integrations/statsig-edge-config\",\"singleFile\":true},{\"name\":\"Hypertune\",\"href\":\"/docs/edge-config/integrations/hypertune-edge-config\",\"singleFile\":true},{\"name\":\"Split\",\"href\":\"/docs/edge-config/integrations/split-edge-config\",\"singleFile\":true},{\"name\":\"DevCycle\",\"href\":\"/docs/edge-config/integrations/devcycle-edge-config\",\"singleFile\":true}]},{\"name\":\"Limits \u0026 Pricing\",\"href\":\"/docs/edge-config/edge-config-limits\",\"singleFile\":true}]}]},{\"name\":\"Observability\",\"href\":\"/docs/observability\",\"key\":\"observability\",\"isProduct\":true,\"posts\":[{\"name\":\"Observability\",\"href\":\"/docs/observability\",\"description\":\"Monitor and analyze your frontend performance\",\"isProduct\":true,\"posts\":[{\"name\":\"Limits \u0026 Pricing\",\"href\":\"/docs/observability/limits-and-pricing\",\"singleFile\":true},{\"name\":\"Monitoring\",\"href\":\"/docs/observability/monitoring\",\"description\":\"Query and visualize your Vercel usage, traffic, and more\",\"isProduct\":true,\"posts\":[{\"name\":\"Quickstart\",\"href\":\"/docs/observability/monitoring/quickstart\",\"singleFile\":true},{\"name\":\"Reference\",\"href\":\"/docs/observability/monitoring/monitoring-reference\",\"singleFile\":true},{\"name\":\"Limits \u0026 Pricing\",\"href\":\"/docs/observability/monitoring/limits-and-pricing\",\"singleFile\":true}]}]},{\"name\":\"Web Analytics\",\"href\":\"/docs/analytics\",\"description\":\"First-party, privacy-friendly analytics about website visitors\",\"isProduct\":true,\"posts\":[{\"name\":\"Quickstart\",\"href\":\"/docs/analytics/quickstart\"},{\"name\":\"Using Web Analytics\",\"href\":\"/docs/analytics/using-web-analytics\"},{\"name\":\"Filtering\",\"href\":\"/docs/analytics/filtering\"},{\"name\":\"Custom Events\",\"href\":\"/docs/analytics/custom-events\"},{\"name\":\"Redacting Sensitive Data\",\"href\":\"/docs/analytics/redacting-sensitive-data\"},{\"name\":\"Privacy\",\"href\":\"/docs/analytics/privacy-policy\"},{\"name\":\"@vercel/analytics\",\"href\":\"/docs/analytics/package\"},{\"name\":\"Pricing\",\"href\":\"/docs/analytics/limits-and-pricing\"},{\"name\":\"Troubleshooting\",\"href\":\"/docs/analytics/troubleshooting\"}]},{\"name\":\"Speed Insights\",\"href\":\"/docs/speed-insights\",\"description\":\"Explore and improve your website performance\",\"isProduct\":true,\"posts\":[{\"name\":\"Quickstart\",\"href\":\"/docs/speed-insights/quickstart\"},{\"name\":\"Using Speed Insights\",\"href\":\"/docs/speed-insights/using-speed-insights\"},{\"name\":\"Metrics\",\"href\":\"/docs/speed-insights/metrics\"},{\"name\":\"Privacy\",\"href\":\"/docs/speed-insights/privacy-policy\"},{\"name\":\"@vercel/speed-insights\",\"href\":\"/docs/speed-insights/package\",\"posts\":[{\"name\":\"Migrating to the Package\",\"href\":\"/docs/speed-insights/migrating-from-legacy\"}]},{\"name\":\"Limits \u0026 Pricing\",\"href\":\"/docs/speed-insights/limits-and-pricing\"},{\"name\":\"Troubleshooting\",\"href\":\"/docs/speed-insights/troubleshooting\"}]},{\"name\":\"Logs\",\"href\":\"/docs/observability/logs\",\"description\":\"Search, inspect, and share your runtime logs\",\"isProduct\":true,\"posts\":[{\"name\":\"Build Logs\",\"href\":\"/docs/deployments/logs\",\"singleFile\":true},{\"name\":\"Runtime Logs\",\"href\":\"/docs/runtime-logs\",\"description\":\"Search, inspect, and share your runtime logs\",\"isProduct\":true,\"singleFile\":true},{\"name\":\"Activity Log\",\"href\":\"/docs/observability/activity-log\",\"description\":\"List of events in your account in chronological order\",\"isProduct\":true,\"singleFile\":true},{\"name\":\"Log Drains\",\"href\":\"/docs/log-drains\",\"description\":\"Log collection integration with third-party log services\",\"isProduct\":true,\"posts\":[{\"name\":\"Configure Log Drains\",\"href\":\"/docs/log-drains/configure-log-drains\"},{\"name\":\"Log Drains Reference\",\"href\":\"/docs/log-drains/log-drains-reference\"}]}]},{\"name\":\"OpenTelemetry Collector\",\"href\":\"/docs/otel\",\"description\":\"Send OTEL traces from Functions to APM vendors\",\"isProduct\":true,\"singleFile\":true},{\"name\":\"Checks\",\"href\":\"/docs/observability/checks-overview\",\"description\":\"Checks API assesses your deployments quality and reliability\",\"isProduct\":true,\"posts\":[{\"name\":\"Creating Checks\",\"href\":\"/docs/observability/checks-overview/creating-checks\"},{\"name\":\"Checks API\",\"href\":\"/docs/observability/checks-overview/checks-api\"}]}]},{\"name\":\"Integrations\",\"href\":\"/docs/integrations\",\"key\":\"integrations\",\"isProduct\":true,\"posts\":[{\"name\":\"Integration Overview\",\"href\":\"/docs/integrations\",\"isProduct\":true,\"description\":\"Learn how to extend Vercel's capabilities by integrating with your preferred providers\"},{\"name\":\"Extend Vercel\",\"href\":\"/docs/integrations/install-an-integration\",\"description\":\"Install an integration to extend Vercel\",\"isProduct\":true,\"posts\":[{\"name\":\"Add a Native Integration\",\"href\":\"/docs/integrations/install-an-integration/product-integration\",\"singleFile\":true},{\"name\":\"Add a Connectable Account\",\"href\":\"/docs/integrations/install-an-integration/add-a-connectable-account\",\"singleFile\":true},{\"name\":\"Permissions and Access\",\"href\":\"/docs/integrations/install-an-integration/manage-integrations-reference\",\"singleFile\":true}]},{\"name\":\"Integrate with Vercel\",\"href\":\"/docs/integrations/create-integration\",\"description\":\"Create an integration to integrate with Vercel\",\"isProduct\":true,\"posts\":[{\"name\":\"Native Integration Concepts\",\"href\":\"/docs/integrations/create-integration/native-integration\",\"singleFile\":true},{\"name\":\"Create a Native Integration\",\"href\":\"/docs/integrations/marketplace-product\",\"singleFile\":true},{\"name\":\"Deployment Integration Actions\",\"href\":\"/docs/integrations/create-integration/deployment-integration-action\",\"singleFile\":true},{\"name\":\"Submission Requirements\",\"href\":\"/docs/integrations/create-integration/submit-integration\",\"singleFile\":true},{\"name\":\"Approval Checklist\",\"href\":\"/docs/integrations/create-integration/approval-checklist\",\"singleFile\":true},{\"name\":\"Native Integrations Rest API\",\"href\":\"/docs/integrations/marketplace-api\",\"singleFile\":true},{\"name\":\"Native Integration Flows\",\"href\":\"/docs/integrations/marketplace-flows\",\"singleFile\":true}]},{\"name\":\"AI\",\"description\":\"Extend your projects with AI services and models\",\"href\":\"/docs/integrations/ai\",\"isProduct\":true,\"posts\":[{\"name\":\"Adding a Provider\",\"href\":\"/docs/integrations/ai/adding-a-provider\",\"singleFile\":true},{\"name\":\"Adding a Model\",\"href\":\"/docs/integrations/ai/adding-a-model\",\"singleFile\":true},{\"name\":\"OpenAI\",\"href\":\"/docs/integrations/ai/openai\",\"singleFile\":true},{\"name\":\"Pinecone\",\"href\":\"/docs/integrations/ai/pinecone\",\"singleFile\":true},{\"name\":\"Replicate\",\"href\":\"/docs/integrations/ai/replicate\",\"singleFile\":true},{\"name\":\"LMNT\",\"href\":\"/docs/integrations/ai/lmnt\",\"singleFile\":true},{\"name\":\"Modal\",\"href\":\"/docs/integrations/ai/modal\",\"singleFile\":true},{\"name\":\"Elevenlabs\",\"href\":\"/docs/integrations/ai/elevenlabs\",\"singleFile\":true},{\"name\":\"Fal\",\"href\":\"/docs/integrations/ai/fal\",\"singleFile\":true},{\"name\":\"Perplexity\",\"href\":\"/docs/integrations/ai/perplexity\",\"singleFile\":true},{\"name\":\"Together AI\",\"href\":\"/docs/integrations/ai/togetherai\",\"singleFile\":true}]},{\"name\":\"CMS\",\"description\":\"Integrate with Content Management Systems\",\"href\":\"/docs/integrations/cms\",\"isProduct\":true,\"posts\":[{\"name\":\"Agility CMS\",\"href\":\"/docs/integrations/cms/agility-cms\",\"singleFile\":true},{\"name\":\"ButterCMS\",\"href\":\"/docs/integrations/cms/butter-cms\",\"singleFile\":true},{\"name\":\"Contentful\",\"href\":\"/docs/integrations/cms/contentful\",\"singleFile\":true},{\"name\":\"DatoCMS\",\"href\":\"/docs/integrations/cms/dato-cms\",\"singleFile\":true},{\"name\":\"Formspree\",\"href\":\"/docs/integrations/cms/formspree\",\"singleFile\":true},{\"name\":\"Makeswift\",\"href\":\"/docs/integrations/cms/makeswift\",\"singleFile\":true},{\"name\":\"Sanity\",\"href\":\"/docs/integrations/cms/sanity\",\"singleFile\":true},{\"name\":\"Sitecore\",\"href\":\"/docs/integrations/cms/sitecore\",\"singleFile\":true}]},{\"name\":\"Ecommerce\",\"description\":\"Integrate with Ecommerce platforms\",\"href\":\"/docs/integrations/ecommerce\",\"posts\":[{\"name\":\"BigCommerce\",\"href\":\"/docs/integrations/ecommerce/bigcommerce\",\"singleFile\":true},{\"name\":\"Shopify\",\"href\":\"/docs/integrations/ecommerce/shopify\",\"singleFile\":true}]},{\"name\":\"Sign in with Vercel\",\"description\":\"Integrate with Vercel for user authentication\",\"href\":\"/docs/integrations/sign-in-with-vercel\",\"isProduct\":true},{\"name\":\"Kubernetes\",\"href\":\"/docs/integrations/external-platforms/kubernetes\",\"singleFile\":true}]},{\"name\":\"Security\",\"href\":\"/docs/security/overview\",\"key\":\"security\",\"isProduct\":true,\"posts\":[{\"name\":\"Vercel Security\",\"href\":\"/docs/security\",\"description\":\"Vercel provides built-in platform features to ensure that your site is secure\",\"isProduct\":true,\"posts\":[{\"name\":\"Compliance Measures\",\"href\":\"/docs/security/compliance\",\"isProduct\":true,\"description\":\"Compliance to standards such as SOC2, ISO 27001 \u0026 GDPR\",\"posts\":[{\"name\":\"PCI DSS Integration\",\"href\":\"/docs/security/pci-dss\",\"singleFile\":true}]},{\"name\":\"Shared Responsibility\",\"href\":\"/docs/security/shared-responsibility\",\"isProduct\":true,\"description\":\"The shared responsibility model splits security tasks between Vercel and the user\",\"singleFile\":true},{\"name\":\"Encryption\",\"href\":\"/docs/security/encryption\",\"description\":\"Default serving over HTTPS connections\",\"isProduct\":true,\"singleFile\":true}]},{\"name\":\"Firewall\",\"href\":\"/docs/vercel-firewall\",\"description\":\"Protects websites from unauthorized access\",\"isProduct\":true,\"posts\":[{\"name\":\"DDoS Mitigation\",\"href\":\"/docs/security/ddos-mitigation\",\"singleFile\":true,\"description\":\"Protection against DDoS attacks\",\"includeInNav\":true},{\"name\":\"Web Application Firewall\",\"href\":\"/docs/security/vercel-waf\",\"includeInNav\":true,\"description\":\"Customize the your site's protection\",\"posts\":[{\"name\":\"Custom Rules\",\"href\":\"/docs/security/vercel-waf/custom-rules\",\"posts\":[{\"name\":\"Rate Limiting\",\"href\":\"/docs/security/vercel-waf/rate-limiting\",\"singleFile\":true},{\"name\":\"System Bypass Rules\",\"href\":\"/docs/security/vercel-waf/system-bypass-rules\",\"singleFile\":true},{\"name\":\"Rule Configuration Reference\",\"href\":\"/docs/security/vercel-waf/rule-configuration\",\"singleFile\":true},{\"name\":\"Rate Limiting SDK\",\"href\":\"/docs/security/vercel-waf/rate-limiting-sdk\",\"singleFile\":true}]},{\"name\":\"IP Blocking\",\"href\":\"/docs/security/vercel-waf/ip-blocking\",\"singleFile\":true},{\"name\":\"Managed Rulesets\",\"href\":\"/docs/security/vercel-waf/managed-rulesets\",\"singleFile\":true},{\"name\":\"Attack Challenge Mode\",\"href\":\"/docs/attack-challenge-mode\",\"description\":\"Vercel provides control of who has access to your site if under attack\",\"singleFile\":true},{\"name\":\"Examples\",\"href\":\"/docs/security/vercel-waf/examples\",\"singleFile\":true},{\"name\":\"Usage \u0026 Pricing\",\"href\":\"/docs/security/vercel-waf/usage-and-pricing\",\"singleFile\":true}]},{\"name\":\"Firewall Concepts\",\"href\":\"/docs/security/firewall-concepts\",\"singleFile\":true},{\"name\":\"Observability\",\"href\":\"/docs/vercel-firewall/firewall-observability\",\"singleFile\":true},{\"name\":\"Using the REST API\",\"href\":\"/docs/vercel-firewall/firewall-api\",\"singleFile\":true},{\"name\":\"Reverse Proxy Servers\",\"href\":\"/docs/security/reverse-proxy\",\"singleFile\":true}]},{\"name\":\"Secure Backend Access\",\"href\":\"/docs/security/secure-backend-access\",\"description\":\"Securely access your backend with private connections and OIDC federation\",\"isProduct\":true,\"posts\":[{\"name\":\"Secure Compute\",\"href\":\"/docs/secure-compute\",\"description\":\"Create private connections with your backend cloud\",\"isProduct\":true,\"singleFile\":true},{\"name\":\"OpenID Connect Federation\",\"href\":\"/docs/oidc\",\"description\":\"Securely access your backend with OIDC federation\",\"isProduct\":true,\"badge\":\"New\",\"posts\":[{\"name\":\"Connect to Amazon Web Services (AWS)\",\"href\":\"/docs/oidc/aws\",\"singleFile\":true},{\"name\":\"Connect to Google Cloud Platform (GCP)\",\"href\":\"/docs/oidc/gcp\",\"singleFile\":true},{\"name\":\"Connect to Microsoft Azure\",\"href\":\"/docs/oidc/azure\",\"singleFile\":true},{\"name\":\"Connect to your own API\",\"href\":\"/docs/oidc/api\",\"singleFile\":true},{\"name\":\"Reference\",\"href\":\"/docs/oidc/reference\",\"singleFile\":true}]}]},{\"name\":\"Secure Team Access\",\"href\":\"/docs/security/secure-team-access\",\"description\":\"Tools to improve security related to your team on Vercel\",\"posts\":[{\"name\":\"SAML SSO\",\"href\":\"/docs/saml\",\"description\":\"Manage team members with third-party identity providers\",\"isProduct\":true,\"singleFile\":true},{\"name\":\"Directory Sync\",\"href\":\"/docs/security/directory-sync\",\"description\":\"Manage your teams with third-party identity providers\",\"isProduct\":true,\"singleFile\":true},{\"name\":\"Audit Logs\",\"href\":\"/docs/observability/audit-log\",\"description\":\"Track and analyze your team members activities\",\"isProduct\":true,\"singleFile\":true}]},{\"name\":\"Secure Deployments\",\"href\":\"/docs/security/secure-deployments\",\"description\":\"Tools to improve security related to your deployments on Vercel\",\"posts\":[{\"name\":\"Access Control\",\"href\":\"/docs/security/access-control\"},{\"name\":\"Deployment Protection\",\"href\":\"/docs/security/deployment-protection\",\"description\":\"Secure your deployments, and manage their access\",\"isProduct\":true,\"posts\":[{\"name\":\"Methods to Protect Deployments\",\"href\":\"/docs/security/deployment-protection/methods-to-protect-deployments\",\"posts\":[{\"name\":\"Vercel Authentication\",\"href\":\"/docs/security/deployment-protection/methods-to-protect-deployments/vercel-authentication\",\"singleFile\":true},{\"name\":\"Password Protection\",\"href\":\"/docs/security/deployment-protection/methods-to-protect-deployments/password-protection\",\"singleFile\":true},{\"name\":\"Trusted IPs\",\"href\":\"/docs/security/deployment-protection/methods-to-protect-deployments/trusted-ips\",\"singleFile\":true}]},{\"name\":\"Methods to Bypass Deployment Protection\",\"href\":\"/docs/security/deployment-protection/methods-to-bypass-deployment-protection\",\"posts\":[{\"name\":\"Sharable Links\",\"href\":\"/docs/security/deployment-protection/methods-to-bypass-deployment-protection/sharable-links\",\"singleFile\":true},{\"name\":\"Protection Bypass for Automation\",\"href\":\"/docs/security/deployment-protection/methods-to-bypass-deployment-protection/protection-bypass-automation\",\"singleFile\":true},{\"name\":\"Deployment Protection Exceptions\",\"href\":\"/docs/security/deployment-protection/methods-to-bypass-deployment-protection/deployment-protection-exceptions\",\"singleFile\":true},{\"name\":\"OPTIONS Allowlist\",\"href\":\"/docs/security/deployment-protection/methods-to-bypass-deployment-protection/options-allowlist\",\"singleFile\":true}]}]},{\"name\":\"Deployment Retention\",\"href\":\"/docs/security/deployment-retention\",\"description\":\"Manage your deployments and their lifecycle\",\"isProduct\":true,\"singleFile\":true},{\"name\":\"Protected Git Scopes\",\"href\":\"/docs/security/protected-git-scopes\",\"description\":\"Limit other Vercel teams from deploying from your Git repositories\",\"isProduct\":true,\"singleFile\":true}]}]},{\"name\":\"CLI \u0026 API\",\"href\":\"cli/\",\"key\":\"cliapi\",\"useInPath\":\"/docs/file-system-api\",\"posts\":[{\"name\":\"Vercel CLI\",\"href\":\"/docs/cli/\",\"description\":\"Manage your Projects from the command line\",\"isProduct\":true,\"posts\":[{\"name\":\"Deploying from CLI\",\"href\":\"/docs/cli/deploying-from-cli\"},{\"name\":\"Project Linking\",\"href\":\"/docs/cli/project-linking\"},{\"name\":\"Telemetry\",\"href\":\"/docs/cli/about-telemetry\"},{\"name\":\"Global Options\",\"href\":\"/docs/cli/global-options\"},{\"name\":\"alias\",\"href\":\"/docs/cli/alias\",\"isCode\":true},{\"name\":\"bisect\",\"href\":\"/docs/cli/bisect\",\"isCode\":true},{\"name\":\"build\",\"href\":\"/docs/cli/build\",\"isCode\":true},{\"name\":\"certs\",\"href\":\"/docs/cli/certs\",\"isCode\":true},{\"name\":\"deploy\",\"href\":\"/docs/cli/deploy\",\"isCode\":true},{\"name\":\"dev\",\"href\":\"/docs/cli/dev\",\"isCode\":true},{\"name\":\"dns\",\"href\":\"/docs/cli/dns\",\"isCode\":true},{\"name\":\"domains\",\"href\":\"/docs/cli/domains\",\"isCode\":true},{\"name\":\"env\",\"href\":\"/docs/cli/env\",\"isCode\":true},{\"name\":\"git\",\"href\":\"/docs/cli/git\",\"isCode\":true},{\"name\":\"help\",\"href\":\"/docs/cli/help\",\"isCode\":true},{\"name\":\"init\",\"href\":\"/docs/cli/init\",\"isCode\":true},{\"name\":\"inspect\",\"href\":\"/docs/cli/inspect\",\"isCode\":true},{\"name\":\"install\",\"href\":\"/docs/cli/install\",\"isCode\":true},{\"name\":\"integration\",\"href\":\"/docs/cli/integration\",\"isCode\":true},{\"name\":\"integration-resource\",\"href\":\"/docs/cli/integration-resource\",\"isCode\":true},{\"name\":\"link\",\"href\":\"/docs/cli/link\",\"isCode\":true},{\"name\":\"list\",\"href\":\"/docs/cli/list\",\"isCode\":true},{\"name\":\"login\",\"href\":\"/docs/cli/login\",\"isCode\":true},{\"name\":\"logout\",\"href\":\"/docs/cli/logout\",\"isCode\":true},{\"name\":\"logs\",\"href\":\"/docs/cli/logs\",\"isCode\":true},{\"name\":\"project\",\"href\":\"/docs/cli/project\",\"isCode\":true},{\"name\":\"promote\",\"href\":\"/docs/cli/promote\",\"isCode\":true},{\"name\":\"pull\",\"href\":\"/docs/cli/pull\",\"isCode\":true},{\"name\":\"redeploy\",\"href\":\"/docs/cli/redeploy\",\"isCode\":true},{\"name\":\"remove\",\"href\":\"/docs/cli/remove\",\"isCode\":true},{\"name\":\"rollback\",\"href\":\"/docs/cli/rollback\",\"isCode\":true},{\"name\":\"switch\",\"href\":\"/docs/cli/switch\",\"isCode\":true},{\"name\":\"teams\",\"href\":\"/docs/cli/teams\",\"isCode\":true},{\"name\":\"telemetry\",\"href\":\"/docs/cli/telemetry\",\"isCode\":true},{\"name\":\"whoami\",\"href\":\"/docs/cli/whoami\",\"isCode\":true}]},{\"name\":\"Vercel REST API\",\"href\":\"/docs/rest-api/\",\"description\":\"Use HTTP requests to interact with your account\",\"isProduct\":true,\"posts\":[{\"name\":\"Endpoints\",\"href\":\"/docs/rest-api/endpoints\"},{\"name\":\"Errors\",\"href\":\"/docs/rest-api/errors\"},{\"name\":\"Interfaces\",\"href\":\"/docs/rest-api/interfaces\"},{\"name\":\"Building Integrations\",\"href\":\"/docs/rest-api/vercel-api-integrations\"}]},{\"name\":\"Vercel SDK\",\"href\":\"/docs/rest-api/sdk\",\"description\":\"Use the Typescript SDK to interact with Vercel.\"},{\"name\":\"Build Output API\",\"href\":\"/docs/build-output-api/v3\",\"description\":\"File-system-based specification of a Deployment\",\"isProduct\":true,\"posts\":[{\"name\":\"Configuration\",\"href\":\"/docs/build-output-api/v3/configuration\",\"singleFile\":true},{\"name\":\"Vercel Primitives\",\"href\":\"/docs/build-output-api/v3/primitives\",\"singleFile\":true},{\"name\":\"Features\",\"href\":\"/docs/build-output-api/v3/features\",\"singleFile\":true}]}]},{\"name\":\"All Products\",\"href\":\"/docs/all-products\",\"key\":\"all-products\"}],\"home\":true},{\"name\":\"Guides\",\"href\":\"/guides\",\"singleFile\":true},{\"name\":\"Help\",\"href\":\"/help\",\"singleFile\":true}],\"documentationObject\":{\"platform\":{\"name\":\"Platform\",\"href\":\"/docs/platform\",\"key\":\"platform\",\"hasHighlight\":true,\"posts\":[{\"name\":\"Get Started\",\"href\":\"/docs/getting-started-with-vercel\",\"description\":\"Build for the web and learn to use our platform\",\"highlight\":true,\"open\":false,\"posts\":[{\"name\":\"Step 1 – Projects \u0026 Deployments\",\"href\":\"/docs/getting-started-with-vercel/projects-deployments\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:0:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:0:posts:0:posts:1\"]},{\"name\":\"Step 2 – Add a Domain\",\"href\":\"/docs/getting-started-with-vercel/domains\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:0:posts:1:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:0:posts:1:posts:1\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:0:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:0:posts:3\"]},{\"name\":\"Vercel Fundamentals\",\"href\":\"/docs/fundamentals\",\"description\":\"Learn about the core concepts of Vercel\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:1:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:1:posts:1\"]},{\"name\":\"Incremental Migration\",\"href\":\"/docs/incremental-migration\",\"description\":\"Migrate your site to Vercel with minimum risk\",\"isProduct\":false,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:2:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:2:posts:1\"]},{\"name\":\"Frameworks\",\"href\":\"/docs/frameworks\",\"description\":\"Deploy with the framework of your choice on our platform\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:3:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:3:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:3:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:3:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:3:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:3:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:3:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:3:posts:7\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:3:posts:8\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:3:posts:9\"]},{\"name\":\"Projects\",\"href\":\"/docs/projects/overview\",\"description\":\"A Project groups deployments and custom domains\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:1\",{\"name\":\"Monorepos\",\"href\":\"/docs/monorepos\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:2:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:2:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:2:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:2:posts:3\"]},{\"name\":\"Environment Variables\",\"href\":\"/docs/environment-variables\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:3:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:3:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:3:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:3:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:3:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:3:posts:5\"]},{\"name\":\"Project Settings\",\"href\":\"/docs/project-configuration/project-settings\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:4:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:4:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:4:posts:2\",{\"name\":\"vercel.json\",\"href\":\"/docs/project-configuration\",\"description\":\"Configure your project with vercel.json\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:4:posts:3:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:4:posts:3:posts:1\"]}]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:4:posts:5\"]},{\"name\":\"Builds\",\"href\":\"/docs/deployments/builds\",\"description\":\"Learn how your projects are built and configured\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:5:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:5:posts:1\",{\"name\":\"Managing Builds\",\"href\":\"/docs/deployments/managing-builds\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:5:posts:2:posts:0\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:5:posts:3\",{\"name\":\"Build Image Overview\",\"href\":\"/docs/deployments/build-image\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:5:posts:4:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:5:posts:4:posts:1\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:5:posts:5\"]},{\"name\":\"Deployments\",\"href\":\"/docs/deployments\",\"description\":\"How your sites are generated and configured\",\"posts\":[{\"name\":\"Deploy to Vercel\",\"href\":\"/docs/deployments/deployment-methods\",\"posts\":[{\"name\":\"Git Integrations\",\"href\":\"/docs/git\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:0:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:0:posts:0:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:0:posts:0:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:0:posts:0:posts:3\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:0:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:0:posts:2\",{\"name\":\"Deploy Button\",\"href\":\"/docs/deploy-button\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:0:posts:3:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:0:posts:3:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:0:posts:3:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:0:posts:3:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:0:posts:3:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:0:posts:3:posts:5\"]}]},{\"name\":\"Deployment Environments\",\"href\":\"/docs/deployments/environments\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:1:posts:0\",{\"name\":\"Pre-production\",\"href\":\"/docs/deployments/pre-production\",\"posts\":[{\"name\":\"Preview\",\"href\":\"/docs/deployments/environments#preview-environment-pre-production\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:1:posts:1:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:1:posts:1:posts:0:posts:1\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:1:posts:1:posts:1\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:1:posts:2\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:2\",{\"name\":\"Manage Deployments\",\"href\":\"/docs/deployments/managing-deployments\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:3:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:3:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:3:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:3:posts:3\"]},{\"name\":\"Webhooks\",\"href\":\"/docs/webhooks\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:4:posts:0\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:6:posts:6\"]},{\"name\":\"Domains\",\"href\":\"/docs/domains\",\"description\":\"Adding, deploying, redirecting and transferring domains\",\"isProduct\":true,\"posts\":[{\"name\":\"Working with Domains\",\"href\":\"/docs/domains/working-with-domains\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:0:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:0:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:0:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:0:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:0:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:0:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:0:posts:7\"]},{\"name\":\"Working with DNS\",\"href\":\"/docs/domains/working-with-dns\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:1:posts:0\"]},{\"name\":\"Working with Nameservers\",\"href\":\"/docs/domains/working-with-nameservers\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:2:posts:0\"]},{\"name\":\"Working with SSL\",\"href\":\"/docs/domains/working-with-ssl\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:3:posts:0\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:7:posts:5\"]},{\"name\":\"Going Live Checklist\",\"href\":\"/docs/production-checklist\",\"description\":\"Pre-launch checklist for your project\",\"isProduct\":false,\"singleFile\":true,\"posts\":[]},{\"name\":\"Pricing\",\"href\":\"/docs/pricing\",\"description\":\"Pricing, plans, and spend management\",\"posts\":[{\"name\":\"Regional Pricing\",\"href\":\"/docs/pricing/regional-pricing\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:7\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:8\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:9\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:10\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:11\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:12\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:13\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:14\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:15\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:16\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:0:posts:17\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:2\",{\"name\":\"Billing \u0026 Invoices\",\"href\":\"/docs/pricing/understanding-my-invoice\",\"singleFile\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:3:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:3:posts:1\"]},{\"name\":\"Manage \u0026 Optimize Usage\",\"href\":\"/docs/pricing/manage-and-optimize-usage\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:4:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:4:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:4:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:4:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:4:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:4:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:4:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:4:posts:7\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:4:posts:8\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:4:posts:9\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:4:posts:10\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:4:posts:11\"]},{\"name\":\"Plans\",\"href\":\"/docs/plans\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:5:posts:0\",{\"name\":\"Pro\",\"href\":\"/docs/plans/pro\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:5:posts:1:posts:0\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:9:posts:5:posts:2\"]}]},{\"name\":\"Resources\",\"href\":\"/docs/resources\",\"description\":\"Learn about account management, error handling, and more\",\"open\":false,\"posts\":[{\"name\":\"Dashboard\",\"href\":\"/docs/dashboard-features/\",\"description\":\"View and manage all aspects of the Vercel platform\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:0:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:0:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:0:posts:3\"]},{\"name\":\"Account Management\",\"href\":\"/docs/accounts\",\"description\":\"Create a Vercel identity and collaborate with teams\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:1:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:1:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:1:posts:2\",{\"name\":\"Team Roles \u0026 Permissions\",\"href\":\"/docs/accounts/team-members-and-roles\",\"posts\":[{\"name\":\"Access Roles\",\"href\":\"/docs/rbac/access-roles\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:1:posts:3:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:1:posts:3:posts:0:posts:1\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:1:posts:3:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:1:posts:3:posts:2\"]}]},{\"name\":\"Limits\",\"href\":\"/docs/limits\",\"description\":\"List of limits and limitations applied on Vercel\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:2:posts:0\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:3\",{\"name\":\"Error Codes\",\"href\":\"/docs/errors\",\"description\":\"List of possible errors when interacting with Vercel\",\"isProduct\":false,\"hideChildrenSide\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:7\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:8\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:9\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:10\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:11\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:12\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:13\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:14\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:15\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:16\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:17\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:18\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:19\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:20\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:21\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:22\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:23\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:24\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:25\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:26\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:27\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:28\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:29\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:30\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:31\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:32\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:33\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:34\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:35\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:36\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:37\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:38\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:39\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:40\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:41\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:42\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:43\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:44\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:45\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:46\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:47\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:48\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:49\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:50\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:51\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:52\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:53\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:54\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:55\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:56\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:57\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:58\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:59\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:60\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:61\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:62\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:4:posts:63\"]},{\"name\":\"Release Phases\",\"href\":\"/docs/release-phases\",\"description\":\"Phases of the Vercel Product release cycle\",\"isProduct\":true,\"singleFile\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:5:posts:0\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:0:posts:10:posts:7\"]}]},\"infrastructure\":{\"name\":\"Infrastructure\",\"href\":\"/docs/infrastructure/\",\"key\":\"infrastructure\",\"isProduct\":true,\"posts\":[{\"name\":\"Edge Network\",\"href\":\"/docs/edge-network\",\"description\":\"Configurable CDN with caching, compute, and routing rules\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:0:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:0:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:0:posts:3\",{\"name\":\"Headers\",\"href\":\"/docs/edge-network/headers\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:0:posts:4:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:0:posts:4:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:0:posts:4:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:0:posts:4:posts:3\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:0:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:0:posts:6\"]},{\"name\":\"Vercel Functions\",\"href\":\"/docs/functions\",\"description\":\"Code on-demand without managing your own infrastructure\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:2\",{\"name\":\"Runtimes\",\"href\":\"/docs/functions/runtimes\",\"posts\":[{\"name\":\"Node.js\",\"href\":\"/docs/functions/runtimes/node-js\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:3:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:3:posts:0:posts:1\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:3:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:3:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:3:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:3:posts:4\",{\"name\":\"Edge\",\"href\":\"/docs/functions/runtimes/edge\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:3:posts:5:posts:0\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:3:posts:6\"]},{\"name\":\"Configuring Functions\",\"href\":\"/docs/functions/configuring-functions\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:4:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:4:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:4:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:4:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:4:posts:4\"]},{\"name\":\"API Reference\",\"href\":\"/docs/functions/functions-api-reference\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:5:posts:0\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:7\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:1:posts:8\"]},{\"name\":\"Edge Middleware\",\"href\":\"/docs/edge-middleware\",\"description\":\"Code that executes before a request is processed on a site\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:2:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:2:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:2:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:2:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:2:posts:4\"]},{\"name\":\"Open Graph Image Generation\",\"href\":\"/docs/og-image-generation\",\"description\":\"Generate images for social media sharing\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:3:posts:0\"]},{\"name\":\"Image Optimization\",\"href\":\"/docs/image-optimization\",\"description\":\"Serve high-quality images with minimal impact on page load times\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:4:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:4:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:4:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:4:posts:3\"]},{\"name\":\"Incremental Static Regeneration\",\"href\":\"/docs/incremental-static-regeneration\",\"description\":\"Create or update content without redeploying your site\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:5:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:5:posts:1\"]},{\"name\":\"Data Cache\",\"href\":\"/docs/infrastructure/data-cache\",\"description\":\"Specialized cache for storing responses from fetches\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:6:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:6:posts:1\"]},{\"name\":\"Cron Jobs\",\"description\":\"Time-based scheduling to automate repetitive tasks\",\"isProduct\":true,\"href\":\"/docs/cron-jobs\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:7:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:7:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:1:posts:7:posts:2\"]}]},\"workflow\":{\"name\":\"Workflow\",\"href\":\"/docs/workflow-collaboration\",\"key\":\"workflow\",\"isProduct\":true,\"posts\":[{\"name\":\"Vercel Toolbar\",\"href\":\"/docs/workflow-collaboration/vercel-toolbar\",\"description\":\"Manage your Vercel projects from your browser\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:0:posts:1\",{\"name\":\"Add to Your Environment\",\"href\":\"/docs/vercel-toolbar/in-production-and-localhost\",\"singleFile\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:0:posts:2:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:0:posts:2:posts:1\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:0:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:0:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:0:posts:5\"]},{\"name\":\"Feature Flags\",\"href\":\"/docs/feature-flags\",\"description\":\"View and override your application's feature flags\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:1:posts:0\",{\"name\":\"Flags Explorer\",\"href\":\"/docs/feature-flags/flags-explorer\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:1:posts:1:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:1:posts:1:posts:1\"]},{\"name\":\"Integrate Flags with Vercel Platform\",\"href\":\"/docs/feature-flags/integrate-vercel-platform\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:1:posts:2:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:1:posts:2:posts:1\"]}]},{\"name\":\"Comments\",\"href\":\"/docs/workflow-collaboration/comments\",\"description\":\"Allow collaborators to give direct feedback on preview deployments\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:2:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:2:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:2:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:2:posts:3\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:4\",{\"name\":\"Conformance\",\"href\":\"/docs/workflow-collaboration/conformance\",\"description\":\"Improve collaboration, productivity, and software quality at scale\",\"isProduct\":true,\"singleFile\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:1\",{\"name\":\"Dashboard\",\"href\":\"/docs/conformance/dashboard-overview\",\"singleFile\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:2:posts:0\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:4\",{\"name\":\"Rules\",\"href\":\"/docs/conformance/rules\",\"hideChildrenSide\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:7\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:8\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:9\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:10\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:11\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:12\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:13\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:14\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:15\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:16\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:17\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:18\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:19\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:20\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:21\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:22\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:23\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:24\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:25\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:26\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:27\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:28\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:29\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:30\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:31\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:32\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:33\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:34\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:35\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:36\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:37\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:38\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:39\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:40\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:41\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:42\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:43\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:44\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:45\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:46\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:47\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:48\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:49\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:50\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:51\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:52\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:53\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:54\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:55\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:56\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:57\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:58\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:59\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:5:posts:60\"]},{\"name\":\"Conformance Custom Rules\",\"href\":\"/docs/workflow-collaboration/conformance/custom-rules\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:6:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:6:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:6:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:6:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:6:posts:4\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:5:posts:7\"]},{\"name\":\"Code Owners\",\"href\":\"/docs/code-owners\",\"singleFile\":true,\"description\":\"Define users or teams that are responsible for your codebase\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:6:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:6:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:6:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:2:posts:6:posts:3\"]}]},\"storage\":{\"name\":\"Storage\",\"href\":\"/docs/storage\",\"key\":\"storage\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:0\",{\"name\":\"Vercel Blob\",\"href\":\"/docs/storage/vercel-blob\",\"description\":\"File serving and uploading via a global network with unique URLs\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:1:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:1:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:1:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:1:posts:3\"]},{\"name\":\"Edge Config\",\"href\":\"/docs/edge-config\",\"description\":\"Global data store designed for experimentation\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:2:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:2:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:2:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:2:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:2:posts:4\",{\"name\":\"Edge Config Integrations\",\"href\":\"/docs/edge-config/integrations\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:2:posts:5:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:2:posts:5:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:2:posts:5:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:2:posts:5:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:2:posts:5:posts:4\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:3:posts:2:posts:6\"]}]},\"observability\":{\"name\":\"Observability\",\"href\":\"/docs/observability\",\"key\":\"observability\",\"isProduct\":true,\"posts\":[{\"name\":\"Observability\",\"href\":\"/docs/observability\",\"description\":\"Monitor and analyze your frontend performance\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:0:posts:0\",{\"name\":\"Monitoring\",\"href\":\"/docs/observability/monitoring\",\"description\":\"Query and visualize your Vercel usage, traffic, and more\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:0:posts:1:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:0:posts:1:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:0:posts:1:posts:2\"]}]},{\"name\":\"Web Analytics\",\"href\":\"/docs/analytics\",\"description\":\"First-party, privacy-friendly analytics about website visitors\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:1:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:1:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:1:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:1:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:1:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:1:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:1:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:1:posts:7\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:1:posts:8\"]},{\"name\":\"Speed Insights\",\"href\":\"/docs/speed-insights\",\"description\":\"Explore and improve your website performance\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:2:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:2:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:2:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:2:posts:3\",{\"name\":\"@vercel/speed-insights\",\"href\":\"/docs/speed-insights/package\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:2:posts:4:posts:0\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:2:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:2:posts:6\"]},{\"name\":\"Logs\",\"href\":\"/docs/observability/logs\",\"description\":\"Search, inspect, and share your runtime logs\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:3:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:3:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:3:posts:2\",{\"name\":\"Log Drains\",\"href\":\"/docs/log-drains\",\"description\":\"Log collection integration with third-party log services\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:3:posts:3:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:3:posts:3:posts:1\"]}]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:4\",{\"name\":\"Checks\",\"href\":\"/docs/observability/checks-overview\",\"description\":\"Checks API assesses your deployments quality and reliability\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:5:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:4:posts:5:posts:1\"]}]},\"integrations\":{\"name\":\"Integrations\",\"href\":\"/docs/integrations\",\"key\":\"integrations\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:0\",{\"name\":\"Extend Vercel\",\"href\":\"/docs/integrations/install-an-integration\",\"description\":\"Install an integration to extend Vercel\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:1:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:1:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:1:posts:2\"]},{\"name\":\"Integrate with Vercel\",\"href\":\"/docs/integrations/create-integration\",\"description\":\"Create an integration to integrate with Vercel\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:2:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:2:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:2:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:2:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:2:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:2:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:2:posts:6\"]},{\"name\":\"AI\",\"description\":\"Extend your projects with AI services and models\",\"href\":\"/docs/integrations/ai\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:3:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:3:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:3:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:3:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:3:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:3:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:3:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:3:posts:7\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:3:posts:8\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:3:posts:9\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:3:posts:10\"]},{\"name\":\"CMS\",\"description\":\"Integrate with Content Management Systems\",\"href\":\"/docs/integrations/cms\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:4:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:4:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:4:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:4:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:4:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:4:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:4:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:4:posts:7\"]},{\"name\":\"Ecommerce\",\"description\":\"Integrate with Ecommerce platforms\",\"href\":\"/docs/integrations/ecommerce\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:5:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:5:posts:1\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:5:posts:7\"]},\"security\":{\"name\":\"Security\",\"href\":\"/docs/security/overview\",\"key\":\"security\",\"isProduct\":true,\"posts\":[{\"name\":\"Vercel Security\",\"href\":\"/docs/security\",\"description\":\"Vercel provides built-in platform features to ensure that your site is secure\",\"isProduct\":true,\"posts\":[{\"name\":\"Compliance Measures\",\"href\":\"/docs/security/compliance\",\"isProduct\":true,\"description\":\"Compliance to standards such as SOC2, ISO 27001 \u0026 GDPR\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:0:posts:0:posts:0\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:0:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:0:posts:2\"]},{\"name\":\"Firewall\",\"href\":\"/docs/vercel-firewall\",\"description\":\"Protects websites from unauthorized access\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:0\",{\"name\":\"Web Application Firewall\",\"href\":\"/docs/security/vercel-waf\",\"includeInNav\":true,\"description\":\"Customize the your site's protection\",\"posts\":[{\"name\":\"Custom Rules\",\"href\":\"/docs/security/vercel-waf/custom-rules\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:1:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:1:posts:0:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:1:posts:0:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:1:posts:0:posts:3\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:1:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:1:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:1:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:1:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:1:posts:5\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:1:posts:5\"]},{\"name\":\"Secure Backend Access\",\"href\":\"/docs/security/secure-backend-access\",\"description\":\"Securely access your backend with private connections and OIDC federation\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:2:posts:0\",{\"name\":\"OpenID Connect Federation\",\"href\":\"/docs/oidc\",\"description\":\"Securely access your backend with OIDC federation\",\"isProduct\":true,\"badge\":\"New\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:2:posts:1:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:2:posts:1:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:2:posts:1:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:2:posts:1:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:2:posts:1:posts:4\"]}]},{\"name\":\"Secure Team Access\",\"href\":\"/docs/security/secure-team-access\",\"description\":\"Tools to improve security related to your team on Vercel\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:3:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:3:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:3:posts:2\"]},{\"name\":\"Secure Deployments\",\"href\":\"/docs/security/secure-deployments\",\"description\":\"Tools to improve security related to your deployments on Vercel\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:4:posts:0\",{\"name\":\"Deployment Protection\",\"href\":\"/docs/security/deployment-protection\",\"description\":\"Secure your deployments, and manage their access\",\"isProduct\":true,\"posts\":[{\"name\":\"Methods to Protect Deployments\",\"href\":\"/docs/security/deployment-protection/methods-to-protect-deployments\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:4:posts:1:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:4:posts:1:posts:0:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:4:posts:1:posts:0:posts:2\"]},{\"name\":\"Methods to Bypass Deployment Protection\",\"href\":\"/docs/security/deployment-protection/methods-to-bypass-deployment-protection\",\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:4:posts:1:posts:1:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:4:posts:1:posts:1:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:4:posts:1:posts:1:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:4:posts:1:posts:1:posts:3\"]}]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:4:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:6:posts:4:posts:3\"]}]},\"cliapi\":{\"name\":\"CLI \u0026 API\",\"href\":\"cli/\",\"key\":\"cliapi\",\"useInPath\":\"/docs/file-system-api\",\"posts\":[{\"name\":\"Vercel CLI\",\"href\":\"/docs/cli/\",\"description\":\"Manage your Projects from the command line\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:3\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:4\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:5\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:6\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:7\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:8\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:9\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:10\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:11\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:12\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:13\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:14\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:15\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:16\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:17\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:18\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:19\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:20\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:21\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:22\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:23\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:24\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:25\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:26\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:27\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:28\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:29\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:30\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:31\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:32\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:33\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:0:posts:34\"]},{\"name\":\"Vercel REST API\",\"href\":\"/docs/rest-api/\",\"description\":\"Use HTTP requests to interact with your account\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:1:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:1:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:1:posts:2\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:1:posts:3\"]},\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:2\",{\"name\":\"Build Output API\",\"href\":\"/docs/build-output-api/v3\",\"description\":\"File-system-based specification of a Deployment\",\"isProduct\":true,\"posts\":[\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:3:posts:0\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:3:posts:1\",\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:7:posts:3:posts:2\"]}]},\"all-products\":\"$4:props:children:0:props:children:props:value:primaryNavigation:0:posts:8\"}},\"children\":[[\"$\",\"$L18\",null,{\"children\":[\"$\",\"$L19\",null,{\"children\":[[\"$\",\"$L1a\",null,{}],[\"$\",\"$L1b\",null,{\"storageKey\":\"zeit-theme\",\"children\":[\"$\",\"$L1c\",null,{\"children\":[\"$\",\"$L1d\",null,{\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"div\",null,{\"style\":{\"height\":\"100vh\"},\"children\":[\"$\",\"$L1e\",null,{\"href\":\"/docs\"}]}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}],[\"$\",\"$L1f\",null,{\"children\":[\"$\",\"$L20\",null,{}]}],[[[\"$\",\"$L21\",\"script-sift\",{\"dangerouslySetInnerHTML\":{\"__html\":\"$22\"},\"id\":\"script-sift\"}]],[\"$\",\"$L23\",null,{}],[\"$\",\"$L24\",null,{}],[\"$\",\"$L25\",null,{}],[\"$\",\"$L26\",null,{}]],[\"$\",\"$L27\",null,{}]]}]}],[\"$\",\"$7\",null,{\"fallback\":null,\"children\":\"$L28\"}]]}]}],[\"$\",\"$L29\",null,{}],\"$L2a\"]}]\n"])</script><script>self.__next_f.push([1,"2a:null\n"])</script><script>self.__next_f.push([1,"28:[\"$\",\"script\",null,{\"type\":\"application/json\",\"data-flag-values\":true,\"dangerouslySetInnerHTML\":{\"__html\":\"\\\"eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2R0NNIn0..yWQP6SjGva3W_Voh.PSX2Q6LbEZkw7KXtBhXYscV8W8MvxrELLipvvrO11w9MjCmoFAz6tfBiW-Sy40rM8oyLF8UqY1M6n9lJjCW2riUc4MBI_eTjMSkJLfDPHV5jY-75lEhDzw.CSlY4kZYpeFNmNqzeyWGkQ\\\"\"}}]\n"])</script><script>self.__next_f.push([1,"12:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=5\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#0a0a0a\"}],[\"$\",\"meta\",\"3\",{\"name\":\"color-scheme\",\"content\":\"dark light\"}]]\nd:null\n"])</script><script>self.__next_f.push([1,"15:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Guides\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"How-tos and Tutorials.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"meta\",\"3\",{\"name\":\"googlebot\",\"content\":\"index, max-video-preview:-1, max-image-preview:large, max-snippet:-1\"}],[\"$\",\"meta\",\"4\",{\"name\":\"trace-attributes\",\"content\":\"{\\\"next.appdir\\\":true}\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:title\",\"content\":\"Guides\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:description\",\"content\":\"How-tos and Tutorials.\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:url\",\"content\":\"https://vercel.com/guides\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:site_name\",\"content\":\"Vercel Guides\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image\",\"content\":\"https://vercel.com/api/dynamic-og?title=Vercel%20Guides\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:alt\",\"content\":\"Vercel Guides\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"Guides\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"How-tos and Tutorials.\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:image\",\"content\":\"https://vercel.com/api/dynamic-og?title=Vercel%20Guides\"}],[\"$\",\"meta\",\"17\",{\"name\":\"twitter:image:alt\",\"content\":\"Vercel Guides\"}],[\"$\",\"link\",\"18\",{\"rel\":\"shortcut icon\",\"href\":\"https://assets.vercel.com/image/upload/q_auto/front/favicon/vercel/favicon.ico\"}],[\"$\",\"link\",\"19\",{\"rel\":\"icon\",\"href\":\"https://assets.vercel.com/image/upload/q_auto/front/favicon/vercel/32x32.png\"}],[\"$\",\"link\",\"20\",{\"rel\":\"apple-touch-icon\",\"href\":\"https://assets.vercel.com/image/upload/q_auto/front/favicon/vercel/apple-touch-icon-180x180.png\"}]],\"error\":null,\"digest\":\"$undefined\"}\n10:{\"metadata\":\"$15:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"2b:I[19908,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"82288\",\"static/chunks/82288-a3103e5937e23d07.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"13275\",\"static/chunks/13275-71bb23b83ee0eca9.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"55981\",\"static/chunks/55981-f504e7ec99d111ae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"75306\",\"static/chunks/75306-58debcdacc7aa317.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"56337\",\"static/chunks/56337-dcc136b2a6762900.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"53645\",\"static/chunks/53645-454ca107ce7a3fae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"42845\",\"static/chunks/42845-c32c0475f8f16cb7.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"48191\",\"static/chunks/app/%5BrootFlagsCode%5D/guides/page-0c555392c6bfe1a5.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"SearchInput\"]\n2c:I[38812,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"82288\",\"static/chunks/82288-a3103e5937e23d07.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"13275\",\"static/chunks/13275-71bb23b83ee0eca9.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"55981\",\"static/chunks/55981-f504e7ec99d111ae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"75306\",\"static/chunks/75306-58debcdacc7aa317.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"56337\",\"static/chunks/56337-dcc136b2a6762900.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE"])</script><script>self.__next_f.push([1,"7bNhiW9CyxpUyVrodmxXN\",\"53645\",\"static/chunks/53645-454ca107ce7a3fae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"42845\",\"static/chunks/42845-c32c0475f8f16cb7.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"48191\",\"static/chunks/app/%5BrootFlagsCode%5D/guides/page-0c555392c6bfe1a5.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"Checkbox\"]\n2d:I[84403,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"82288\",\"static/chunks/82288-a3103e5937e23d07.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"13275\",\"static/chunks/13275-71bb23b83ee0eca9.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"55981\",\"static/chunks/55981-f504e7ec99d111ae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"75306\",\"static/chunks/75306-58debcdacc7aa317.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"56337\",\"static/chunks/56337-dcc136b2a6762900.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"53645\",\"static/chunks/53645-454ca107ce7a3fae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"42845\",\"static/chunks/42845-c32c0475f8f16cb7.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"48191\",\"static/chunks/app/%5BrootFlagsCode%5D/guides/page-0c555392c6bfe1a5.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"Link\"]\n2e:I[45,[\"24527\",\"static/chunks/24527-36b4a5891832f422.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"58433\",\"static/chunks/58433-e84675eb1c4679d4.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"98120\",\"static/chunks/98120-4c4fde6ce89def40.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"82288\",\"static/chunks/82288-a3103e5937e23d07.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"13275\",\"static/chunks/13275-71bb23b83ee0eca9.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"55981\",\"static/chunks/55981-f504e7ec99d111ae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"75306\","])</script><script>self.__next_f.push([1,"\"static/chunks/75306-58debcdacc7aa317.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"38985\",\"static/chunks/38985-8829e0c33904e156.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"56337\",\"static/chunks/56337-dcc136b2a6762900.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"11314\",\"static/chunks/11314-83ecc03ef31085c3.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"53645\",\"static/chunks/53645-454ca107ce7a3fae.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"42845\",\"static/chunks/42845-c32c0475f8f16cb7.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\",\"48191\",\"static/chunks/app/%5BrootFlagsCode%5D/guides/page-0c555392c6bfe1a5.js?dpl=dpl_2zBfGjE7bNhiW9CyxpUyVrodmxXN\"],\"ArticlePage\"]\n"])</script><script>self.__next_f.push([1,"9:[\"$\",\"$7\",null,{\"fallback\":[\"$\",\"div\",null,{\"className\":\"guides_guideBack__gICJW\",\"children\":[[\"$\",\"div\",null,{\"className\":\"guides_headerContainerStars__PvL_5 guides_headerFallback__yOyhp\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_headerTitle__udcZH\",\"children\":[[\"$\",\"h1\",null,{\"children\":\"Guides\"}],[\"$\",\"div\",null,{\"className\":\"guides_filterSearchContainer__03NN0\",\"children\":[\"$\",\"$L2b\",null,{\"className\":\"guides_flexSearch__lmkVk\",\"size\":\"large\",\"width\":\"100%\"}]}]]}]}],[\"$\",\"div\",null,{\"className\":\"guides_contentWrapper__Djg4k guides_contentWrapperFB__ljh9E\",\"children\":[[\"$\",\"aside\",null,{\"className\":\"sidebar_sidebarGuidesFB__EXtb5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"tagfilter_titleBar__HsIBO\",\"children\":[\"$\",\"div\",null,{\"className\":\"tagfilter_filterTitle__OIJX_\",\"children\":\"Filters\"}]}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"$L2c\",\"account\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Account, Projects \u0026 Teams\"}]}],[\"$\",\"$L2c\",\"ai\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"AI\"}]}],[\"$\",\"$L2c\",\"analytics\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Analytics\"}]}],[\"$\",\"$L2c\",\"api-cli\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"API \u0026 CLI\"}]}],[\"$\",\"$L2c\",\"build\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Build, Deployment \u0026 Git\"}]}],[\"$\",\"$L2c\",\"databases\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Databases \u0026 CMS\"}]}],[\"$\",\"$L2c\",\"dns\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Domains \u0026 DNS\"}]}],[\"$\",\"$L2c\",\"middleware\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Edge Middleware\"}]}],[\"$\",\"$L2c\",\"edge\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Edge Network \u0026 Caching\"}]}],[\"$\",\"$L2c\",\"environment\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Environment Variables\"}]}],[\"$\",\"$L2c\",\"frameworks\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Frameworks\"}]}],[\"$\",\"$L2c\",\"functions\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Functions\"}]}],[\"$\",\"$L2c\",\"integrations\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Integrations \u0026 Logs\"}]}],[\"$\",\"$L2c\",\"limits\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Limits, Usage and Pricing\"}]}],[\"$\",\"$L2c\",\"observability\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Observability\"}]}],[\"$\",\"$L2c\",\"og-image-generation\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"OG Image Generation\"}]}],[\"$\",\"$L2c\",\"security\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Policy \u0026 Security\"}]}],[\"$\",\"$L2c\",\"runtimes\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Runtimes\"}]}],[\"$\",\"$L2c\",\"streaming\",{\"className\":\"tagfilter_checkboxContainer__fyC1R tagfilter_checkboxFB__m2HMs\",\"fullWidth\":true,\"children\":[\"$\",\"span\",null,{\"className\":\"tagfilter_checkboxText__wB_sq\",\"children\":\"Streaming\"}]}]]}]]}],[\"$\",\"div\",null,{\"className\":\"guides_contentFB__ATxcJ\",\"children\":[[\"$\",\"div\",\"How to Build a Multi-Tenant App with Custom Domains Using Next.js\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/nextjs-multi-tenant-application\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[null,[\"$\",\"span\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"mr-1 badge_badge__WnfZm capitalize badge_gray__ibVSs badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"FEATURED\"]}]}],[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Jul 5 2023\"}]]}],[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"How to Build a Multi-Tenant App with Custom Domains Using Next.js\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"Create a full-stack application with multi-tenancy and custom domain support using Next.js App Router, Postgres, and the Vercel Domains API.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"Build, Deployment \u0026 Git\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Build, Deployment \u0026 Git\"]}]}],[\"$\",\"span\",\"Databases \u0026 CMS\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Databases \u0026 CMS\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"Vector Databases Explained\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/vector-databases\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[null,[\"$\",\"span\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"mr-1 badge_badge__WnfZm capitalize badge_gray__ibVSs badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"FEATURED\"]}]}],[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Sep 12 2023\"}]]}],[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"Vector Databases Explained\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"Learn about vector databases: what they are, 8 of the best examples and how to build an AI semantic search app with them.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"AI\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"AI\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"How to Build a Fullstack App with Next.js, Prisma, and Postgres\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/nextjs-prisma-postgres\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[null,[\"$\",\"span\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"mr-1 badge_badge__WnfZm capitalize badge_gray__ibVSs badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"FEATURED\"]}]}],[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"May 7 2023\"}]]}],[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"How to Build a Fullstack App with Next.js, Prisma, and Postgres\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"Create a fullstack application with Next.js, Prisma, Postgres, and deploy to Vercel\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"Databases \u0026 CMS\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Databases \u0026 CMS\"]}]}],[\"$\",\"span\",\"Build, Deployment \u0026 Git\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Build, Deployment \u0026 Git\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"Fine-tuning GPT with OpenAI, Next.js and Vercel AI SDK\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/fine-tuning-openai-nextjs\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[null,[\"$\",\"span\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"mr-1 badge_badge__WnfZm capitalize badge_gray__ibVSs badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"FEATURED\"]}]}],[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Sep 4 2024\"}]]}],[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"Fine-tuning GPT with OpenAI, Next.js and Vercel AI SDK\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"In this guide, we will build Shooketh – an AI bot fine-tuned on Shakespeare's literary works with OpenAI GPT-4o and the Vercel AI SDK.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"AI\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"AI\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"How to Deploy a React Site with Vercel\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/deploying-react-with-vercel\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[null,[\"$\",\"span\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"mr-1 badge_badge__WnfZm capitalize badge_gray__ibVSs badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"FEATURED\"]}]}],[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Jan 30 2021\"}]]}],[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"How to Deploy a React Site with Vercel\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"Create your React app and deploy it with Vercel.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"Build, Deployment \u0026 Git\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Build, Deployment \u0026 Git\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"AI Agents on Vercel\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/ai-agents\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Apr 8 2025\"}],null,[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"AI Agents on Vercel\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"This guide provides an overview of how to build and deploy AI agents on Vercel.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"AI\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"AI\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"Troubleshooting Build Error: “Serverless Function has exceeded the unzipped maximum size of 250 MB”\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/troubleshooting-function-250mb-limit\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Mar 18 2025\"}],null,[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"Troubleshooting Build Error: “Serverless Function has exceeded the unzipped maximum size of 250 MB”\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"Learn how to troubleshoot builds failing due to exceeding the maximum function size limit on Vercel.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"Build, Deployment \u0026 Git\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Build, Deployment \u0026 Git\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"Is SQLite supported in Vercel?\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/is-sqlite-supported-in-vercel\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Mar 14 2025\"}],null,[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"Is SQLite supported in Vercel?\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"SQLite is a popular and fast database engine. In this article, we discuss whether it can be used in a serverless environment like Vercel.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"Databases \u0026 CMS\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Databases \u0026 CMS\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"How to Optimize Next.js + Sitecore JSS\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/how-to-optimize-next.js-sitecore-jss\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Feb 27 2025\"}],null,[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"How to Optimize Next.js + Sitecore JSS\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"This guide covers performance and usage considerations when building and deploying your Next.js and Sitecore JSS application.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"Databases \u0026 CMS\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Databases \u0026 CMS\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"Where can I get copies of my Vercel Invoices?\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/where-can-i-get-copies-of-my-vercel-invoices\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Feb 26 2025\"}],null,[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"Where can I get copies of my Vercel Invoices?\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"Learn about how you can get access to your Vercel invoices.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"Account, Projects \u0026 Teams\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Account, Projects \u0026 Teams\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"How to block bots from OpenAI GPTBot\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/how-to-block-bots-openai-gptbot\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Feb 24 2025\"}],null,[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"How to block bots from OpenAI GPTBot\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"Learn how to use the Vercel WAF to block, rate limit, or challenge traffic from OpenAI GPTBot.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"Functions\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Functions\"]}]}],[\"$\",\"span\",\"Policy \u0026 Security\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Policy \u0026 Security\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"How to Integrate Optimizely Feature Experimentation with Next.js and Vercel\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/how-to-integrate-optimizely-feature-experimentation-next-vercel\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Feb 21 2025\"}],null,[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"How to Integrate Optimizely Feature Experimentation with Next.js and Vercel\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"This guide covers setting up feature flags, implementing A/B tests, and optimizing performance using React Server Components and streaming.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"Frameworks\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Frameworks\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"How to Optimize RSC Payload Size\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/how-to-optimize-rsc-payload-size\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Feb 15 2025\"}],null,[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"How to Optimize RSC Payload Size\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"Learn how to use React Server Components efficiently in Next.js to reduce cost and improve performance\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"Frameworks\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Frameworks\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"Why are my Vercel builds queued?\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/why-are-my-vercel-builds-queued\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Feb 6 2025\"}],null,[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"Why are my Vercel builds queued?\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"Learn about why your Vercel builds may be getting queued and how to resolve this.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"Build, Deployment \u0026 Git\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Build, Deployment \u0026 Git\"]}]}]]}]]}]}]}]}],[\"$\",\"div\",\"Hosting your API on Vercel\",{\"children\":[\"$\",\"div\",null,{\"className\":\"guides_guideList__535sG\",\"children\":[\"$\",\"$L2d\",null,{\"href\":\"/guides/hosting-backend-apis\",\"children\":[\"$\",\"div\",null,{\"className\":\"guides_listcard__EJkVQ\",\"children\":[[\"$\",\"span\",null,{\"className\":\"guides_date__A7kX_\",\"children\":\"Feb 5 2025\"}],null,[\"$\",\"h4\",null,{\"className\":\"guides_cardLink__WOVzN\",\"children\":\"Hosting your API on Vercel\"}],[\"$\",\"div\",null,{\"className\":\"guides_note__bYWua\",\"children\":\"Learn how to build and scale performant APIs on Vercel.\"}],[\"$\",\"div\",null,{\"className\":\"guides_tagline__dAO9x\",\"children\":[[\"$\",\"span\",\"Functions\",{\"className\":\"badge_badge__WnfZm capitalize badge_gray-subtle__bXWN7 badge_sm__BUqp2\",\"data-geist-badge\":\"\",\"data-version\":\"v2\",\"children\":[\"$\",\"span\",null,{\"className\":\"badge_contentContainer__khfN_\",\"children\":[false,\"Functions\"]}]}]]}]]}]}]}]}]]}]]}]]}],\"children\":[\"$\",\"$L2e\",null,{\"collection\":{\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"description\":\"Your account identifies you on Vercel. With projects, you deploy applications.\",\"slug\":\"account\"},{\"title\":\"AI\",\"description\":\"\",\"slug\":\"ai\"},{\"title\":\"Analytics\",\"description\":\"Find metrics from your user's devices and a Real Experience Score.\",\"slug\":\"analytics\"},{\"title\":\"API \u0026 CLI\",\"description\":\"You can control the Vercel platform via endpoints and command line.\",\"slug\":\"api-cli\"},{\"title\":\"Build, Deployment \u0026 Git\",\"description\":\"Build your project with Git or the CLI to create web-based deployments.\",\"slug\":\"build\"},{\"title\":\"Databases \u0026 CMS\",\"description\":\"\",\"slug\":\"databases\"},{\"title\":\"Domains \u0026 DNS\",\"description\":\"Connect your deployment with a custom domain using Vercel or external DNS servers.\",\"slug\":\"dns\"},{\"title\":\"Edge Middleware\",\"description\":\"\",\"slug\":\"middleware\"},{\"title\":\"Edge Network \u0026 Caching\",\"description\":\"\",\"slug\":\"edge\"},{\"title\":\"Environment Variables\",\"description\":\"\",\"slug\":\"environment\"},{\"title\":\"Frameworks\",\"description\":\"Deploy a variety of frontend frameworks with automatic detection available.\",\"slug\":\"frameworks\"},{\"title\":\"Functions\",\"description\":\"Write functions in several backend languages to take a request and return a response.\",\"slug\":\"functions\"},{\"title\":\"Integrations \u0026 Logs\",\"description\":\"Extend the capabilities of Vercel and gather log data in your own systems.\",\"slug\":\"integrations\"},{\"title\":\"Limits, Usage and Pricing\",\"description\":\"Pricing for plans, usage and features.\",\"slug\":\"limits\"},{\"title\":\"Observability\",\"description\":\"\",\"slug\":\"observability\"},{\"title\":\"OG Image Generation\",\"description\":\"\",\"slug\":\"og-image-generation\"},{\"title\":\"Policy \u0026 Security\",\"description\":\"Policies to ensure security and privacy.\",\"slug\":\"security\"},{\"title\":\"Runtimes\",\"description\":\"Modules that transform your source code into Serverless Functions.\",\"slug\":\"runtimes\"},{\"title\":\"Streaming\",\"description\":\"\",\"slug\":\"streaming\"}],\"articles\":[{\"title\":\"How to Build a Multi-Tenant App with Custom Domains Using Next.js\",\"authors\":[\"Lee Robinson\",\"Steven Tey\"],\"description\":\"Create a full-stack application with multi-tenancy and custom domain support using Next.js App Router, Postgres, and the Vercel Domains API.\",\"rank\":1,\"slug\":\"nextjs-multi-tenant-application\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"},{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2023-07-05T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Vector Databases Explained\",\"authors\":[\"Steven Tey\"],\"description\":\"Learn about vector databases: what they are, 8 of the best examples and how to build an AI semantic search app with them.\",\"rank\":1,\"slug\":\"vector-databases\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"}],\"createdAt\":\"2023-09-12T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Build a Fullstack App with Next.js, Prisma, and Postgres\",\"authors\":[\"Lee Robinson\"],\"description\":\"Create a fullstack application with Next.js, Prisma, Postgres, and deploy to Vercel\",\"rank\":1,\"slug\":\"nextjs-prisma-postgres\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"},{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2023-05-07T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Fine-tuning GPT with OpenAI, Next.js and Vercel AI SDK\",\"authors\":[\"Steven Tey\"],\"description\":\"In this guide, we will build Shooketh – an AI bot fine-tuned on Shakespeare's literary works with OpenAI GPT-4o and the Vercel AI SDK.\",\"rank\":1,\"slug\":\"fine-tuning-openai-nextjs\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"}],\"createdAt\":\"2024-09-04T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a React Site with Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"Create your React app and deploy it with Vercel.\",\"rank\":1,\"slug\":\"deploying-react-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2021-01-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"AI Agents on Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"This guide provides an overview of how to build and deploy AI agents on Vercel.\",\"rank\":0,\"slug\":\"ai-agents\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"}],\"createdAt\":\"2025-04-08T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Troubleshooting Build Error: “Serverless Function has exceeded the unzipped maximum size of 250 MB”\",\"authors\":[\"Justin Vitale\"],\"description\":\"Learn how to troubleshoot builds failing due to exceeding the maximum function size limit on Vercel.\",\"rank\":0,\"slug\":\"troubleshooting-function-250mb-limit\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2025-03-18T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Is SQLite supported in Vercel?\",\"authors\":[\"Ismael Rumzan\"],\"description\":\"SQLite is a popular and fast database engine. In this article, we discuss whether it can be used in a serverless environment like Vercel.\",\"rank\":0,\"slug\":\"is-sqlite-supported-in-vercel\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2025-03-14T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Optimize Next.js + Sitecore JSS\",\"authors\":[\"Alex Hawley\"],\"description\":\"This guide covers performance and usage considerations when building and deploying your Next.js and Sitecore JSS application.\",\"rank\":0,\"slug\":\"how-to-optimize-next.js-sitecore-jss\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2025-02-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Where can I get copies of my Vercel Invoices?\",\"authors\":[\"Allen Hai\",\"Holden Altaffer\"],\"description\":\"Learn about how you can get access to your Vercel invoices.\",\"rank\":0,\"slug\":\"where-can-i-get-copies-of-my-vercel-invoices\",\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2025-02-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to block bots from OpenAI GPTBot\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to use the Vercel WAF to block, rate limit, or challenge traffic from OpenAI GPTBot.\",\"rank\":0,\"slug\":\"how-to-block-bots-openai-gptbot\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"},{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2025-02-24T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Integrate Optimizely Feature Experimentation with Next.js and Vercel\",\"authors\":[\"Alex Hawley\"],\"description\":\"This guide covers setting up feature flags, implementing A/B tests, and optimizing performance using React Server Components and streaming.\",\"rank\":0,\"slug\":\"how-to-integrate-optimizely-feature-experimentation-next-vercel\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2025-02-21T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Optimize RSC Payload Size\",\"authors\":[\"Phil Zona\"],\"description\":\"Learn how to use React Server Components efficiently in Next.js to reduce cost and improve performance\",\"rank\":0,\"slug\":\"how-to-optimize-rsc-payload-size\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2025-02-15T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why are my Vercel builds queued?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about why your Vercel builds may be getting queued and how to resolve this.\",\"rank\":0,\"slug\":\"why-are-my-vercel-builds-queued\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2025-02-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Hosting your API on Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to build and scale performant APIs on Vercel.\",\"rank\":0,\"slug\":\"hosting-backend-apis\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2025-02-05T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"“Cannot Find Matching Keyid” Errors or “Corepack/PNPM Not Found” on GitHub Actions\",\"authors\":[\"Lee Robinson\"],\"description\":\"How to debug and address this corepack issue with GitHub Actions.\",\"rank\":0,\"slug\":\"corepack-errors-github-actions\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2025-02-03T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"What should I do if I receive a 503 error on Vercel?\",\"authors\":[\"Holden Altaffer\"],\"description\":\"Learn about when Serverless Functions return a 503 status code and what can be done about them.\",\"rank\":0,\"slug\":\"what-should-i-do-if-i-receive-a-503-error-on-vercel\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2025-01-28T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Should I use Cloudflare in front of Vercel?\",\"authors\":[\"Justin Vitale\"],\"description\":\"Information on using Cloudflare together with Vercel.\",\"rank\":0,\"slug\":\"cloudflare-with-vercel\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2025-01-28T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Optimizing hard navigations\",\"authors\":[\"Mark Knichel\"],\"description\":\"Learn how to improve performance for navigations that require a full page reload\",\"rank\":0,\"slug\":\"optimizing-hard-navigations\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2025-01-23T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I increase the limit of redirects or use dynamic redirects on Vercel?\",\"authors\":[\"Justin Vitale\"],\"description\":\"Instructions on how to use Serverless Functions to handle redirects on Vercel.\",\"rank\":0,\"slug\":\"how-can-i-increase-the-limit-of-redirects-or-use-dynamic-redirects-on-vercel\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"},{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2025-01-22T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"ISR Observability: Framework Discrepancies \",\"authors\":[\"Zach Hudson\"],\"description\":\"Understanding ISR Observability with Different Frameworks\",\"rank\":0,\"slug\":\"isr-observability-framework-discrepancies\",\"topics\":[{\"title\":\"Observability\",\"slug\":\"observability\"},{\"title\":\"Edge Network \u0026 Caching\",\"slug\":\"edge\"},{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2025-01-21T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why are my branch specific variables and domains not linked to my CLI deployments?\",\"authors\":[\"Tilly Gee\"],\"description\":\"How to link CLI deployments to the correct branch for use with custom environments and branch specific domains and environment variables\",\"rank\":0,\"slug\":\"branch-variables-and-domains-not-linked-to-cli-deployments\",\"topics\":[{\"title\":\"Environment Variables\",\"slug\":\"environment\"},{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-12-20T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Troubleshooting Vercel Cron Jobs\",\"authors\":[\"Justin Vitale\"],\"description\":\"Learn how to troubleshoot cron jobs that aren't being run or logged when using Vercel Cron Jobs.\",\"rank\":0,\"slug\":\"troubleshooting-vercel-cron-jobs\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-11-18T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I delete a Vercel team?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on deleting a Vercel team.\",\"rank\":0,\"slug\":\"how-do-i-delete-a-vercel-team\",\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2024-11-12T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Use your Vercel-owned domain on Bluesky\",\"authors\":[\"Amy Burns\"],\"description\":\"Learn how to add your domain as your handle on Bluesky\",\"rank\":0,\"slug\":\"use-my-domain-bluesky\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2024-11-07T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Export Your Domain's DNS Records from Vercel\",\"authors\":[\"Anders Hagström\"],\"description\":\"Learn how to utilize our API to export your domain's DNS records from Vercel.\",\"rank\":0,\"slug\":\"export-domain-dns-records-via-api\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2024-10-23T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I transfer my domain out of Vercel?\",\"authors\":[\"Sam Ko\",\"Sebastian Roming\",\"Anders Hagström\"],\"description\":\"Information on how to transfer a domain out of Vercel.\",\"rank\":0,\"slug\":\"how-do-i-transfer-my-domain-out-of-vercel\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2024-10-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Integrate Vercel and Contentstack for your Headless CMS\",\"authors\":[\"Alex Hawley\"],\"description\":\"Integrate Vercel with Contentstack, a headless CMS, to build and deploy dynamic, high-performance websites.\",\"rank\":0,\"slug\":\"integrate-vercel-and-contentstack\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2024-10-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Sending Emails from an application on Vercel\",\"authors\":[\"Rich Haines\"],\"description\":\"Learn best practices for sending emails from an application on Vercel\",\"rank\":0,\"slug\":\"sending-emails-from-an-application-on-vercel\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2024-10-09T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I use GitHub Actions with Vercel?\",\"authors\":[\"Lee Robinson\",\"Anna\"],\"description\":\"Learn how to use GitHub Actions to deploy to Vercel including support for GitHub Enterprise Server.\",\"rank\":0,\"slug\":\"how-can-i-use-github-actions-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-10-08T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to allow the Vercel Support team to access Your Deployments' source code?\",\"authors\":[\"Swarnava Sengupta\"],\"description\":\"To help troubleshoot problems, you can allow the Vercel Support team to access your Deployments' source code.\",\"rank\":0,\"slug\":\"how-to-allow-the-vercel-support-team-to-access-your-deployment-source-code\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2024-09-19T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why is my deployed project showing a 404 error?\",\"authors\":[\"Tilly Gee\",\"Anders Hagström\",\"Anna\"],\"description\":\"Learn the possible reasons a successful deployment gives a 404 error\",\"rank\":0,\"slug\":\"why-is-my-deployed-project-giving-404\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-09-19T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Using Fathom Analytics with Next.js\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to integrate Fathom Analytics with Next.js.\",\"rank\":0,\"slug\":\"deploying-nextjs-using-fathom-analytics-with-vercel\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2024-08-29T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why aren't commits triggering deployments on Vercel?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about why commits that you've pushed aren't triggering new Vercel Deployments. \",\"rank\":0,\"slug\":\"why-aren-t-commits-triggering-deployments-on-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-08-29T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I delete an individual deployment?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on deleting an individual deployment.\",\"rank\":0,\"slug\":\"how-do-i-delete-an-individual-deployment\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-08-23T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I set a custom build timeout?\",\"authors\":[\"Andrew Healey \"],\"description\":\"Wrap your Vercel build command with the timeout command to ensure builds terminate gracefully before exceeding Vercel’s maximum build duration.\",\"rank\":0,\"slug\":\"custom-build-timeout\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-08-15T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Is Vercel certified under DPF?\",\"authors\":[\"Kacee Taylor\"],\"description\":\"The EU-U.S. Data Privacy Framework (DPF) enables secure data transfers from the EU, UK, and Switzerland to the U.S. Vercel is DPF certified, ensuring compliance with data protection laws. Learn more in our Privacy Notice.\",\"rank\":0,\"slug\":\"is-vercel-certified-under-dpf\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2024-05-31T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I manage my Vercel DNS records?\",\"authors\":[\"Matthew Sweeney\",\"Justin Vitale\"],\"description\":\"Information on how to view, add, and remove Vercel DNS records.\",\"rank\":0,\"slug\":\"how-to-manage-vercel-dns-records\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2024-05-21T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"What can I do about Vercel Functions timing out?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about how you can fix Vercel Functions timing out.\",\"rank\":0,\"slug\":\"what-can-i-do-about-vercel-serverless-functions-timing-out\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2024-05-09T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Troubleshooting Builds Failing with SIGKILL or Out of Memory Errors\",\"authors\":[\"Justin Vitale\"],\"description\":\"Learn how to troubleshoot builds failing with SIGKILL or Out of Memory errors on a Vercel Deployment. \",\"rank\":0,\"slug\":\"troubleshooting-sigkill-out-of-memory-errors\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-04-22T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I change CAA records when using the Vercel CNAME record?\",\"authors\":[\"Rob Peters\"],\"description\":\"Information on how to change CAA records when using the Vercel CNAME record.\",\"rank\":0,\"slug\":\"change-caa-records-with-vercel-cname\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2024-04-18T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Optimizing Core Web Vitals in 2024\",\"authors\":[\"Lydia Hallie\"],\"description\":\"Learn how to optimize Core Web Vitals for your site, including INP, CLS, LCP, and more.\",\"rank\":0,\"slug\":\"optimizing-core-web-vitals-in-2024\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2024-04-13T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Implementing Blue-Green Deployments on Vercel\",\"authors\":[\"Jason Wiker\"],\"description\":\" This guide outlines how to implement blue-green deployments on Vercel, leveraging GitHub Actions for seamless and controlled application updates with minimal downtime.\",\"rank\":0,\"slug\":\"blue_green_deployments_on_vercel\",\"topics\":[{\"title\":\"API \u0026 CLI\",\"slug\":\"api-cli\"},{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-03-29T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Implementing Canary Deployments on Vercel\",\"authors\":[\"Jason Wiker\"],\"description\":\"This guide explains how to set up canary deployments on Vercel, enabling developers to gradually roll out new versions to a subset of users with minimal risk by leveraging Skew Protection, Edge Config, and Middleware in Next.js.\",\"rank\":0,\"slug\":\"implementing_canary_deployments_on_vercel\",\"topics\":[{\"title\":\"Edge Network \u0026 Caching\",\"slug\":\"edge\"},{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"},{\"title\":\"API \u0026 CLI\",\"slug\":\"api-cli\"}],\"createdAt\":\"2024-03-29T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How long does it take to get a response from Vercel Support?\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Information on how long it might take Vercel Support to respond to your request.\",\"rank\":0,\"slug\":\"vercel-support-queue-time\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why is my Vercel Deployment URL being shortened?\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Information on why a Vercel Deployment URL may be shortened.\",\"rank\":0,\"slug\":\"why-is-my-vercel-deployment-url-being-shortened\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why does npm run start not work on Vercel?\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Information on why commands that start servers may not work with Vercel.\",\"rank\":0,\"slug\":\"npm-run-start-not-working\",\"topics\":[{\"title\":\"Runtimes\",\"slug\":\"runtimes\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I Set a Cookie from My Vercel Project Subdomain to Vercel.app?\",\"authors\":[\"Ismael Rumzan\"],\"description\":\"If you set a cookie at the level of `vercel.app` in your Vercel project, will the cookie be applied to `vercel.app`?\",\"rank\":0,\"slug\":\"can-i-set-a-cookie-from-my-vercel-project-subdomain-to-vercel-app\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why am I no longer receiving email after adding my domain to Vercel?\",\"authors\":[\"Justin Vitale\",\"Matthew Sweeney\"],\"description\":\"Information on why you may not be receiving email after verifying your domain with Vercel.\",\"rank\":0,\"slug\":\"why-has-email-stopped-working\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I store logs on Vercel?\",\"authors\":[\"Sebastian Roming\"],\"description\":\"Learn how to store logs on Vercel.\",\"rank\":0,\"slug\":\"how-do-i-store-logs-on-vercel\",\"topics\":[{\"title\":\"Integrations \u0026 Logs\",\"slug\":\"integrations\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Does Vercel support Ruby on Rails applications?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how you can use Ruby on Rails with your frontend on Vercel.\",\"rank\":0,\"slug\":\"does-vercel-support-ruby-on-rails-applications\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"},{\"title\":\"Runtimes\",\"slug\":\"runtimes\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I create a minimal reproducible example for Vercel Support?\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Information on how to create a minimal reproducible example for Vercel Support.\",\"rank\":0,\"slug\":\"creating-a-minimal-reproducible-example\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I get a refund for a domain purchased or renewed with Vercel?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on getting a refund for a domain purchased or renewed with Vercel.\",\"rank\":0,\"slug\":\"can-i-get-a-refund-for-a-domain-purchased-or-renewed-with-vercel\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I debug a 502 error from a Vercel Serverless Function?\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Information on how to debug a 502 error from a Vercel Serverless Function.\",\"rank\":0,\"slug\":\"how-to-debug-a-502-error\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I resolve alias related errors on Vercel?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on resolving alias related errors on Vercel.\",\"rank\":0,\"slug\":\"how-to-resolve-alias-errors-on-vercel\",\"topics\":[{\"title\":\"API \u0026 CLI\",\"slug\":\"api-cli\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I route based on letter casing on Vercel?\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Information on whether or not it is possible to route based on letting casing with Vercel.\",\"rank\":0,\"slug\":\"can-i-route-based-on-letter-casing-on-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I transfer ownership of a Vercel team?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on how to transfer ownership of a Vercel team.\",\"rank\":0,\"slug\":\"how-do-i-transfer-ownership-of-a-vercel-team\",\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why does my Serverless Function work locally but not when deployed?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to troubleshoot your Serverless Functions. \",\"rank\":0,\"slug\":\"why-does-my-serverless-function-work-locally-but-not-when-deployed\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Does Vercel support .htaccess files?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on Vercel's support for .htaccess files.\",\"rank\":0,\"slug\":\"does-vercel-support-htaccess-files\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-03-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I use files in Vercel Functions?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to import files inside Serverless Functions on Vercel.\",\"rank\":0,\"slug\":\"how-can-i-use-files-in-serverless-functions\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2024-03-02T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Using Express.js with Vercel\",\"authors\":[\"Lee Robinson\",\"Bel Curcio\",\"Steph Dietz\",\"Michael Novotny\"],\"description\":\"Learn how to use Express.js in a Serverless environment.\",\"rank\":0,\"slug\":\"using-express-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-02-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Integrating AWS Secrets Manager with Vercel Using Terraform\",\"authors\":[\"Jason Wiker\"],\"description\":\"Learn how to seamlessly integrate AWS Secrets Manager with Vercel for enhanced security and efficiency in your web deployments using Terraform with our comprehensive guide.\",\"rank\":0,\"slug\":\"integrating_aws_secrets_manager_with_vercel_using_terraform\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"},{\"title\":\"Integrations \u0026 Logs\",\"slug\":\"integrations\"},{\"title\":\"Environment Variables\",\"slug\":\"environment\"},{\"title\":\"API \u0026 CLI\",\"slug\":\"api-cli\"}],\"createdAt\":\"2024-02-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I resolve \\\"ERR_SSL_PROTOCOL_ERROR\\\" with Vercel?\",\"authors\":[\"Scott Parker\"],\"description\":\"Information about how to resolve the \\\"ERR_SSL_PROTOCOL_ERROR\\\" error with Vercel.\",\"rank\":0,\"slug\":\"resolve-err-ssl-protocol-error-with-vercel\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2024-02-02T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Per-environment and per-branch Build Commands on Vercel\",\"authors\":[\"Anthony Shew\"],\"description\":\"Customize your commands for specific behaviors based on branch, environment, and more.\",\"rank\":0,\"slug\":\"per-environment-and-per-branch-build-commands\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-02-01T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Does Vercel support PCI compliance?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about Vercel and PCI compliance.\",\"rank\":0,\"slug\":\"is-vercel-pci-compliant\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2024-01-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I generate a “sitemap.xml” for my Next.js app on Vercel?\",\"authors\":[\"Justin Vitale\"],\"description\":\"Guidance on how to generate a \\\"sitemap.xml\\\" at build time and runtime.\",\"rank\":0,\"slug\":\"how-do-i-generate-a-sitemap-for-my-nextjs-app-on-vercel\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2024-01-12T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Missing routes-manifest.json file or No Output Directory when using Turborepo or NX\",\"authors\":[\"Tilly Gee\"],\"description\":\"How to solve the error `The file \\\"/vercel/path0/apps/web/.next/routes-manifest.json\\\" couldn't be found` or `No Output Directory` when using Turborepo or NX.\",\"rank\":0,\"slug\":\"missing-routes-manifest-or-output-turborepo-nx\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2024-01-11T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I run Next.js on localhost through HTTPS?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to create a self-signed certificate for use with local Next.js development.\",\"rank\":0,\"slug\":\"access-nextjs-localhost-https-certificate-self-signed\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2024-01-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to detect when user leaves the page and display a confirmation dialog?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to use React and Next.js to show an alert asking the user to confirm they want to exit a page using the window beforeunload event listener.\",\"rank\":0,\"slug\":\"leave-page-confirmation-dialog-before-unload-nextjs-react\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2023-12-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Integrate Next.js with Prismic's Headless CMS\",\"authors\":[\"Alex Hawley\"],\"description\":\"Learn how to connect Next.js with Prismic's CMS and deploy the integrated website to Vercel\",\"rank\":0,\"slug\":\"how-to-integrate-nextjs-with-prismic\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2023-12-22T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I share my Vercel cache across deployments?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to reuse cached responses across deployments with the Next.js App Router and the Vercel Data Cache.\",\"rank\":0,\"slug\":\"share-vercel-cache-across-deployments-nextjs\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2023-12-16T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can Vercel sponsor my open source project?\",\"authors\":[\"Sam Ko\",\"Matthew Sweeney\"],\"description\":\"Information on how Vercel can sponsor your open source project and how to apply.\",\"rank\":0,\"slug\":\"can-vercel-sponsor-my-open-source-project\",\"topics\":[{\"title\":\"Limits, Usage and Pricing\",\"slug\":\"limits\"}],\"createdAt\":\"2023-11-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Does streaming affect SEO and can streamed content be indexed?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Streamed content does not affect SEO and will still be indexed by Google. Learn more in this guide.\",\"rank\":0,\"slug\":\"does-streaming-affect-seo\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2023-11-25T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Serverless Function contains invalid runtime error\",\"authors\":[\"Ethan Arrowood\"],\"description\":\"A guide for the \\\"Serverless Function contains invalid runtime\\\" error for Node.js v20 deployments.\",\"rank\":0,\"slug\":\"serverless-function-contains-invalid-runtime-error\",\"topics\":[{\"title\":\"Runtimes\",\"slug\":\"runtimes\"}],\"createdAt\":\"2023-11-13T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Enhancing Security for Redirects and Rewrites\",\"authors\":[\"Lydia Hallie\"],\"description\":\"Learn how security measures in URI handling can prevent semantic attacks, where malicious hosts exploit redirects and rewrites to mimic trusted sites, leading to phishing and data breaches.\",\"rank\":0,\"slug\":\"enhancing-security-for-redirects-and-rewrites\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"},{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2023-11-07T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"SQL vs. NoSQL databases\",\"authors\":[\"Lydia Hallie\"],\"description\":\"Learn about the differences between SQL and NoSQL, each with a unique set of benefits suited for particular use cases.\",\"rank\":0,\"slug\":\"sql-vs-nosql-databases\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2023-11-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Comparing MySQL, PostgreSQL, and MongoDB \",\"authors\":[\"Lydia Hallie\"],\"description\":\"Explore database selection for optimal performance, focusing on SQL options like MySQL, PostgreSQL, and NoSQL's MongoDB. Consider data types, indexing, concurrency, scalability, replication, and ACID compliance for your application's needs.\",\"rank\":0,\"slug\":\"mysql-vs-postgresql-vs-mongodb\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2023-11-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Load Google Analytics script based on user location in Next.js\",\"authors\":[\"Steven Tey\"],\"description\":\"Learn how you can conditionally load a Google Analytics script based on your user's location\",\"rank\":0,\"slug\":\"geolocation-script\",\"topics\":[{\"title\":\"Edge Network \u0026 Caching\",\"slug\":\"edge\"}],\"createdAt\":\"2023-10-24T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to build an AI app: A step-by-step guide\",\"authors\":[\"Steven Tey\"],\"description\":\"Discover how to build AI applications by using technologies like OpenAI's GPT-4 and Replicate's cloud-hosted models. \",\"rank\":0,\"slug\":\"how-to-build-ai-app\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"}],\"createdAt\":\"2023-10-18T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"What is Vercel's policy regarding load testing deployments?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about Vercel's policies regarding load tests.\",\"rank\":0,\"slug\":\"what-s-vercel-s-policy-regarding-load-testing-deployments\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2023-10-11T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Does Vercel have a SOC 2 Type 2 attestation?\",\"authors\":[\"Sam Ko\"],\"description\":\"Learn about Vercel and SOC 2 Type 2 attestation.\",\"rank\":0,\"slug\":\"is-vercel-soc-2-compliant\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2023-10-09T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Load Data from a File in Next.js\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to display and read the contents of a static json file in your Next.js application.\",\"rank\":0,\"slug\":\"loading-static-file-nextjs-api-route\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"},{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2023-10-09T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Is Vercel ISO 27001 certified?\",\"authors\":[\"Shaquil Hansford\"],\"description\":\"Vercel is ISO 27001:2013 certified. See our certificate here.\",\"rank\":0,\"slug\":\"is-vercel-iso-27001-certified\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2023-10-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Understanding XSS Attacks\",\"authors\":[\"Lydia Hallie\"],\"description\":\"Learn about XSS attacks, their types, risks, and effective prevention strategies in this comprehensive guide for web security.\",\"rank\":0,\"slug\":\"understanding-xss-attacks\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"},{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2023-10-05T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Understanding Cookies\",\"authors\":[\"Lydia Hallie\"],\"description\":\"Discover how web cookies function, the importance of cookie attributes for security, and methods for inspecting and debugging cookies.\",\"rank\":0,\"slug\":\"understanding-cookies\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"},{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2023-10-02T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Understanding CSRF attacks\",\"authors\":[\"Lydia Hallie\"],\"description\":\"Understand the mechanics and risks of Cross-Site Request Forgery (CSRF) attacks, and discover crucial development practices, like anti-CSRF tokens and appropriate use of HTTP methods, to fortify web applications against such threats\",\"rank\":0,\"slug\":\"understanding-csrf-attacks\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"},{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2023-10-02T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Understanding the SameSite cookie attribute\",\"authors\":[\"Lydia Hallie\"],\"description\":\"Explore the SameSite cookie attribute's significance in ensuring web security and user privacy to strike the right balance between security and usability.\",\"rank\":0,\"slug\":\"understanding-the-samesite-cookie-attribute\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"},{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2023-10-02T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"First Input Delay (FID) vs. Interaction to Next Paint (INP)\",\"authors\":[\"Lydia Hallie\"],\"description\":\"Learn about the differences between FID and INP and how to optimize your website's INP score.\",\"rank\":0,\"slug\":\"first-input-delay-vs-interaction-to-next-paint\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"},{\"title\":\"Analytics\",\"slug\":\"analytics\"}],\"createdAt\":\"2023-09-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to use OpenAI Function Calling with Next.js and the Vercel AI SDK\",\"authors\":[\"Steven Tey\"],\"description\":\"Learn how to use OpenAI Function Calling and Vercel AI SDK in a Next.js Application to build AI-powered user experiences.\",\"rank\":0,\"slug\":\"openai-function-calling\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"}],\"createdAt\":\"2023-09-07T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I use geolocation IP headers?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to read geolocation headers on Vercel with Next.js or any frontend framework.\",\"rank\":0,\"slug\":\"geo-ip-headers-geolocation-vercel-functions\",\"topics\":[{\"title\":\"Edge Network \u0026 Caching\",\"slug\":\"edge\"},{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2023-09-01T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why are my Build Logs loading infinitely and not showing up?\",\"authors\":[\"Sebastian Roming\"],\"description\":\"How to mitigate the issue when build logs aren't showing up?\",\"rank\":0,\"slug\":\"why-are-my-build-logs-loading-infinitely-and-not-showing-up\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2023-08-29T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I allowlist IP addresses for a deployment?\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"You can secure a deployment using Vercel Secure Compute to a specific list of IPs.\",\"rank\":0,\"slug\":\"how-to-allowlist-deployment-ip-address\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2023-08-24T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"What is a Large Language Model (LLM)?\",\"authors\":[\"Steven Tey\"],\"description\":\"Large Language Models are foundational machine learning models that use deep learning algorithms to process and understand natural language.\",\"rank\":0,\"slug\":\"what-is-a-large-language-model\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"}],\"createdAt\":\"2023-08-23T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Displaying headlines in social previews with Vercel OG\",\"authors\":[\"Steven Tey\"],\"description\":\"Twitter/X is planning to remove headlines from social previews. To get around this limitation, Vercel OG offers a way to display article titles directly inside OG images.\",\"rank\":0,\"slug\":\"displaying-article-headlines-in-social-previews\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2023-08-23T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"What is Retrieval Augmented Generation (RAG)?\",\"authors\":[\"Steven Tey\"],\"description\":\"Enhancing Language Models with Retrieval Augmented Generation (RAG): Overcoming Limits for Accuracy and Sourcing.\",\"rank\":0,\"slug\":\"retrieval-augmented-generation\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"}],\"createdAt\":\"2023-08-22T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why has my account or deployment been paused?\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Information on why a Vercel account or deployment may have been paused.\",\"rank\":0,\"slug\":\"why-is-my-account-deployment-blocked\",\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2023-08-15T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Building an AI Chatbot with Cohere, Next.js, and the Vercel AI SDK\",\"authors\":[\"Steph Dietz\"],\"description\":\"Learn how to build a generative AI application using Cohere, Next.js, and Vercel.\",\"rank\":0,\"slug\":\"cohere-nextjs-vercel-ai-sdk\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"},{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2023-08-15T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Building an AI chatbot with Next.js, Langchain, and OpenAI\",\"authors\":[\"Steven Tey\"],\"description\":\"Dive into the world of LangChain.js and Next.js with our detailed guide. Learn how to set up a chatbot, structure outputs, integrate agents, and more. Perfect for developers looking to harness the power of AI in their web applications.\",\"rank\":0,\"slug\":\"nextjs-langchain-vercel-ai\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"}],\"createdAt\":\"2023-08-15T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I use Vercel as a reverse proxy?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to use rewrites to proxy requests from Vercel to other deployments.\",\"rank\":0,\"slug\":\"vercel-reverse-proxy-rewrites-external\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2023-08-14T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I use a proxy on top of my Vercel Deployment?\",\"authors\":[\"Justin Vitale\"],\"description\":\"General information about using an external proxy to serve a Vercel Deployment.\",\"rank\":0,\"slug\":\"can-i-use-a-proxy-on-top-of-my-vercel-deployment\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2023-08-14T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Using PostHog with the Next.js App Router and Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to use PostHog with Next.js and Vercel to add analytics, feature flags, and more.\",\"rank\":0,\"slug\":\"posthog-nextjs-vercel-feature-flags-analytics\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"},{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2023-08-13T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Securing your AI applications with Rate Limiting\",\"authors\":[\"Steven Tey\"],\"description\":\"Learn how to secure your AI applications with rate limiting using Vercel WAF and Vercel AI SDK\",\"rank\":0,\"slug\":\"securing-ai-app-rate-limiting\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"},{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2023-08-09T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I serve multiple projects under a single domain?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to serve multiple Vercel projects from a single domain.\",\"rank\":0,\"slug\":\"how-can-i-serve-multiple-projects-under-a-single-domain\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2023-08-07T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I make my library compatible with the Vercel Edge Functions runtime?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to make your library or SDK compatible with Vercel Edge Functions and Vercel Edge Middleware.\",\"rank\":0,\"slug\":\"library-sdk-compatible-with-vercel-edge-runtime-and-functions\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"},{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2023-08-03T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Creating a Session Store with Redis and Next.js\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to durably store sessions with Redis and Next.js.\",\"rank\":0,\"slug\":\"session-store-nextjs-redis-vercel-kv\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"},{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2023-08-03T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Add Rate Limiting with Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to implement rate limiting with Vercel\",\"rank\":0,\"slug\":\"add-rate-limiting-vercel\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2023-07-19T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I use Preview Deployment Suffix without switching to Vercel Nameservers?\",\"authors\":[\"Shohei Maeda\"],\"description\":\"Information on how to use Preview Deployment Suffix without Vercel Nameservers\",\"rank\":0,\"slug\":\"preview-deployment-suffix-without-vercel-nameservers\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2023-07-04T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Using SvelteKit Form Actions\",\"authors\":[\"Steph Dietz\"],\"description\":\"This guide explains how to use form actions in SvelteKit to handle form submissions, process form data, and enhance form interactions, providing seamless integration with the endpoint system.\",\"rank\":0,\"slug\":\"using-sveltekit-form-actions\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"},{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2023-06-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Vercel Integration Guide for SAP Composable Storefront\",\"authors\":[\"Alex Hawley\"],\"description\":\"Integrate Vercel and SAP Composable Storefront with advanced rendering methods by leveraging the Vercel Build Output API\",\"rank\":0,\"slug\":\"integration-guide-for-sap-composable-storefront\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"},{\"title\":\"Integrations \u0026 Logs\",\"slug\":\"integrations\"}],\"createdAt\":\"2023-06-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Use ML Models from Hugging Face in Vercel Functions\",\"authors\":[\"Steph Dietz\"],\"description\":\"This guide provides step-by-step instructions on how to integrate ML models from Hugging Face into Vercel Functions\",\"rank\":0,\"slug\":\"ml-models-hugging-face\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"}],\"createdAt\":\"2023-06-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Building AI-powered Article Embeddings with Chroma and GPT-4\",\"authors\":[\"Steph Dietz\"],\"description\":\"This guide provides step-by-step instructions on using Chroma and GPT-4 to build AI-powered article embeddings for tasks like similarity-based search and recommendation systems.\",\"rank\":0,\"slug\":\"ai-powered-article-embeddings-with-chroma-and-gpt-4\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"}],\"createdAt\":\"2023-06-20T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Debug and Troubleshoot Logs with Vercel and Sematext\",\"authors\":[\"Lee Robinson\"],\"description\":\"Automatically send all Vercel logs to Sematext to understand how your application is running.\",\"rank\":0,\"slug\":\"debugging-and-troubleshooting-vercel-logs-with-sematext\",\"topics\":[{\"title\":\"Integrations \u0026 Logs\",\"slug\":\"integrations\"}],\"createdAt\":\"2023-06-01T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I use Python and JavaScript in the same application?\",\"authors\":[\"Steven Tey\"],\"description\":\"Unlock the power of Python and JavaScript in your apps. Learn to integrate Flask and Next.js for dynamic frontends with AI-capable backends. Perfect for developers keen on hybrid programming.\",\"rank\":0,\"slug\":\"how-to-use-python-and-javascript-in-the-same-application\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"},{\"title\":\"Runtimes\",\"slug\":\"runtimes\"},{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2023-05-25T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Deploying Chained OpenAI LLM Calls to Vercel with the Inngest SDK\",\"authors\":[\"Steven Tey\"],\"description\":\"Discover how to deploy chained OpenAI LLMs (GPT-4) to Vercel using Inngest SDK for improved conversational AI, multi-turn interactions, and error correction.\",\"rank\":0,\"slug\":\"chained-openai-llm-calls-vercel-inngest\",\"topics\":[{\"title\":\"AI\",\"slug\":\"ai\"}],\"createdAt\":\"2023-05-23T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Using React Context for State Management with Next.js\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to use React context inside Next.js in both client and server components for state management in your application.\",\"rank\":0,\"slug\":\"react-context-state-management-nextjs\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2023-05-17T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I use CircleCI with Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to use CircleCI to deploy to Vercel with custom CI/CD.\",\"rank\":0,\"slug\":\"how-can-i-use-circleci-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2023-05-17T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I fix SharedArrayBuffer is not defined?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to enable cross-origin isolation to fix SharedArrayBuffer not being defined.\",\"rank\":0,\"slug\":\"fix-shared-array-buffer-not-defined-nextjs-react\",\"topics\":[{\"title\":\"Edge Network \u0026 Caching\",\"slug\":\"edge\"}],\"createdAt\":\"2023-05-14T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I use wildcard domains without switching to Vercel Nameservers?\",\"authors\":[\"Shohei Maeda\"],\"description\":\"Information on how to use wildcard domains without Vercel Nameservers\",\"rank\":0,\"slug\":\"wildcard-domain-without-vercel-nameservers\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2023-04-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Setup Cron Jobs on Vercel\",\"authors\":[\"Rich Haines\"],\"description\":\"Learn how to setup and use cron jobs on Vercel\",\"rank\":0,\"slug\":\"how-to-setup-cron-jobs-on-vercel\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2023-02-22T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I use private dependencies with Vercel?\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Information on how to use private dependencies with a Vercel deployment.\",\"rank\":0,\"slug\":\"using-private-dependencies-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2023-01-25T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I improve function cold start performance on Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"This guide will help you improve the performance of your Vercel Functions and understand how to determine if the latency increase is from a cold start.\",\"rank\":0,\"slug\":\"how-can-i-improve-serverless-function-lambda-cold-start-performance-on-vercel\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"},{\"title\":\"Edge Network \u0026 Caching\",\"slug\":\"edge\"}],\"createdAt\":\"2023-01-24T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"What can I do when I run into build output limits with Next.js on Vercel?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn how to work with build output limits for Next.js on Vercel.\",\"rank\":0,\"slug\":\"what-can-i-do-when-i-run-into-build-output-limits-with-next-js-on-vercel\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2023-01-20T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I send and receive emails with my Vercel purchased domain?\",\"authors\":[\"William Li\",\"Justin Vitale\",\"Matthew Sweeney\"],\"description\":\"Information on how to send and receive emails with a domain purchased from Vercel.\",\"rank\":0,\"slug\":\"using-email-with-your-vercel-domain\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2023-01-20T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I delete my Vercel account?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on deleting a Vercel account.\",\"rank\":0,\"slug\":\"how-do-i-delete-my-vercel-account\",\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2023-01-20T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I use the \\\"Ignored Build Step\\\" field on Vercel?\",\"authors\":[\"Justin Vitale\"],\"description\":\"Instructions on how to use the \\\"Ignored Build Step\\\" field to programmatically prevent a new deployment from being built.\",\"rank\":0,\"slug\":\"how-do-i-use-the-ignored-build-step-field-on-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2023-01-20T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I use SMTP with Vercel?\",\"authors\":[\"Allen Hai\"],\"description\":\"Information on SMTP and email usage in Serverless Functions.\",\"rank\":0,\"slug\":\"serverless-functions-and-smtp\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2023-01-19T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why is my Vercel domain not verified?\",\"authors\":[\"Matthew Sweeney\",\"Sam Ko\",\"Justin Vitale\"],\"description\":\"Information on why a Vercel domain may not be verified and how to verify it.\",\"rank\":0,\"slug\":\"why-is-my-vercel-domain-unverified\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2023-01-17T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Building Ecommerce Sites with Next.js and Shopify\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to integrate Next.js and Shopify together for the fastest storefronts using the Storefront GraphQL API.\",\"rank\":0,\"slug\":\"building-ecommerce-sites-with-next-js-and-shopify\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"},{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2023-01-16T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Integrating Next.js and Contentful for your Headless CMS\",\"authors\":[\"Lee Robinson\"],\"description\":\" Next.js with Contentful gives you the power to quickly build scalable dynamic static websites with improved search engine optimization (SEO) and enhanced performance.\",\"rank\":0,\"slug\":\"integrating-next-js-and-contentful-for-your-headless-cms\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2023-01-16T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to determine which Vercel Deployment introduced an issue?\",\"authors\":[\"Holden Altaffer\"],\"description\":\"Process to quickly determine when a deployment issue was introduced using the Vercel CLI\",\"rank\":0,\"slug\":\"how-to-determine-which-vercel-deployment-introduced-an-issue\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"},{\"title\":\"API \u0026 CLI\",\"slug\":\"api-cli\"}],\"createdAt\":\"2023-01-05T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I transfer my domain to Vercel?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on how to transfer a domain to Vercel.\",\"rank\":0,\"slug\":\"how-do-i-transfer-my-domain-to-vercel\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2023-01-05T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Unable to find GitHub repository\",\"authors\":[\"Lee Robinson\"],\"description\":\"This is a guide to check GitHub permissions to ensure your Vercel account has sufficient access to import your repository.\",\"rank\":0,\"slug\":\"unable-to-find-github-repository\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"},{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2022-12-21T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Configure the Cache-Control Response Header in Vercel Projects\",\"authors\":[\"Ismael Rumzan\"],\"description\":\"After reviewing this guide, you will be able to set a cache-control header of any value to be returned when a specific page of your deployment is requested.\",\"rank\":0,\"slug\":\"how-to-configure-the-cache-control-response-header-in-vercel-projects\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"},{\"title\":\"Edge Network \u0026 Caching\",\"slug\":\"edge\"}],\"createdAt\":\"2022-12-20T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I add password protection to my Vercel deployment?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about how to add password protection to your websites.\",\"rank\":0,\"slug\":\"how-do-i-add-password-protection-to-my-vercel-deployment\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2022-12-19T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"What are the best practices for hosting videos on Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn the ideal solutions for using video files like .mp4 and .gif on Vercel to prevent excess bandwidth consumption.\",\"rank\":0,\"slug\":\"best-practices-for-hosting-videos-on-vercel-nextjs-mp4-gif\",\"topics\":[{\"title\":\"Edge Network \u0026 Caching\",\"slug\":\"edge\"},{\"title\":\"Limits, Usage and Pricing\",\"slug\":\"limits\"},{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2022-12-16T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I use special characters in my custom domain on Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"How to resolve error 'The specified value \\\"yöur-domaín.com\\\" is not a fully qualified domain name' when using special characters for a custom domain in Vercel.\",\"rank\":0,\"slug\":\"how-can-i-use-special-characters-in-my-custom-domain\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2022-12-15T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I get notified when my Vercel deployment fails?\",\"authors\":[\"Ismael Rumzan\"],\"description\":\"When your Vercel deployment fails, both a web notification and an email notification are sent to the creator of the deployment.\",\"rank\":0,\"slug\":\"how-do-i-get-notified-when-my-vercel-deployment-fails\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-12-15T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Deploying Storybook with Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to deploy Storybook applications to Vercel in minutes.\",\"rank\":0,\"slug\":\"storybook-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-12-05T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to alias a preview deployment using the CLI\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to automatically alias a Vercel preview deployment.\",\"rank\":0,\"slug\":\"how-to-alias-a-preview-deployment-using-the-cli\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-12-04T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Connection Pooling with Serverless Functions\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn best practices for connecting to relational databases with Serverless Functions.\",\"rank\":0,\"slug\":\"connection-pooling-with-serverless-functions\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2022-11-25T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why is running another CDN on top of Vercel not recommended?\",\"authors\":[\"Justin Vitale\"],\"description\":\"Information about possible strategies when using a CDN on top of Vercel.\",\"rank\":0,\"slug\":\"why-running-another-cdn-on-top-of-vercel-is-not-recommended\",\"topics\":[{\"title\":\"Edge Network \u0026 Caching\",\"slug\":\"edge\"}],\"createdAt\":\"2022-11-17T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Application Authentication on Vercel\",\"authors\":[\"Rich Haines\"],\"description\":\"Learn best practices for application authentication Vercel\",\"rank\":0,\"slug\":\"application-authentication-on-vercel\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2022-10-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Using a Headless CMS with Vercel\",\"authors\":[\"Rich Haines\"],\"description\":\"Learn best practices for using databases in a serverless environment with Vercel\",\"rank\":0,\"slug\":\"using-a-headless-cms-with-vercel\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2022-10-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Upload and Store Files with Vercel\",\"authors\":[\"Rich Haines\"],\"description\":\"Learn how to upload and store files with Vercel\",\"rank\":0,\"slug\":\"how-to-upload-and-store-files-with-vercel\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2022-10-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"A/B Testing on Vercel\",\"authors\":[\"Rich Haines\"],\"description\":\"Learn best practices for A/B testing on Vercel\",\"rank\":0,\"slug\":\"ab-testing-on-vercel\",\"topics\":[{\"title\":\"Analytics\",\"slug\":\"analytics\"}],\"createdAt\":\"2022-10-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I use AWS SDK Environment Variables on Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"How to use AWS SDK Environment Variables on Vercel\",\"rank\":0,\"slug\":\"how-can-i-use-aws-sdk-environment-variables-on-vercel\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2022-10-21T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I use AWS S3 with Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Example how to use AWS S3 library on Vercel\",\"rank\":0,\"slug\":\"how-can-i-use-aws-s3-with-vercel\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2022-10-21T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I migrate a site to Vercel without downtime?\",\"authors\":[\"Justin Vitale\"],\"description\":\"Information about how to assign a Vercel deployment to a domain without downtime.\",\"rank\":0,\"slug\":\"zero-downtime-migration\",\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2022-10-14T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I do a \\\"Zero Downtime\\\" DNS migration to Vercel?\",\"authors\":[\"William Li\",\"Justin Vitale\",\"Matthew Sweeney\"],\"description\":\"Information about how to migrate your DNS records to Vercel without downtime.\",\"rank\":0,\"slug\":\"zero-downtime-migration-for-dns\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2022-10-14T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I resolve a 'module not found' error?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on resolving a 'module not found' error.\",\"rank\":0,\"slug\":\"how-do-i-resolve-a-module-not-found-error\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-10-11T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I reduce my Serverless Execution usage on Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Information about how to reduce the usage of Serverless Functions on Vercel.\",\"rank\":0,\"slug\":\"how-can-i-reduce-my-serverless-execution-usage-on-vercel\",\"topics\":[{\"title\":\"Limits, Usage and Pricing\",\"slug\":\"limits\"}],\"createdAt\":\"2022-10-11T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Publish and Subscribe to Realtime Data on Vercel\",\"authors\":[\"Rich Haines\"],\"description\":\"Learn how to upload and store files with Vercel\",\"rank\":0,\"slug\":\"publish-and-subscribe-to-realtime-data-on-vercel\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2022-10-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"What is the best way to get support from Vercel?\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Information on how to get help from Vercel Support through the available channels.\",\"rank\":0,\"slug\":\"how-to-get-vercel-support\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2022-10-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I reduce my build time with Next.js on Vercel?\",\"authors\":[\"Lee Robinson\",\"Anthony Shew\",\"Ismael Rumzan\"],\"description\":\"When building a Next.js project with thousands of static pages, you may hit the maximum build time per deployment limit of 45 minutes. Learn some strategies for reducing your build times by reducing computation during each build.\",\"rank\":0,\"slug\":\"how-do-i-reduce-my-build-time-with-next-js-on-vercel\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"},{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-09-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Are Vercel Preview Deployments indexed by search engines?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on whether a Vercel Deployment will be indexed by search engines.\",\"rank\":0,\"slug\":\"are-vercel-preview-deployment-indexed-by-search-engines\",\"topics\":[{\"title\":\"Edge Network \u0026 Caching\",\"slug\":\"edge\"}],\"createdAt\":\"2022-09-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I run end-to-end tests after my Vercel Preview Deployment?\",\"authors\":[\"Anthony Shew\"],\"description\":\"Learn how to use the Vercel CLI in combination with your CI/CD provider to run end-to-end tests for every code change.\",\"rank\":0,\"slug\":\"how-can-i-run-end-to-end-tests-after-my-vercel-preview-deployment\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-09-08T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I use the Vercel CLI for custom workflows?\",\"authors\":[\"Lee Robinson\"],\"description\":\"You can use the Vercel CLI to deploy any application, including custom git providers and restricted source code.\",\"rank\":0,\"slug\":\"using-vercel-cli-for-custom-workflows\",\"topics\":[{\"title\":\"API \u0026 CLI\",\"slug\":\"api-cli\"},{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-09-05T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Migrate to Vercel from Netlify\",\"authors\":[\"Jason Hoch\"],\"description\":\"Migrate your website's configuration from Netlify to Vercel\",\"rank\":0,\"slug\":\"migrate-to-vercel-from-netlify\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-09-04T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I prevent the Vercel for GitHub integration comments?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on how to prevent the Vercel for GitHub integration from adding comments.\",\"rank\":0,\"slug\":\"how-to-prevent-vercel-github-comments\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I change my Nameservers on Vercel?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about how to change Nameservers for domains registered with Vercel.\",\"rank\":0,\"slug\":\"how-do-i-change-my-nameservers-on-vercel\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2022-08-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I enable CORS on Vercel?\",\"authors\":[\"Justin Vitale\",\"Matthew Sweeney\"],\"description\":\"Information on how to enable CORS on Vercel Serverless Functions.\",\"rank\":0,\"slug\":\"how-to-enable-cors\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I get a fixed IP address for my Vercel deployments?\",\"authors\":[\"William Li\",\"Matthew Sweeney\"],\"description\":\"You can allowlist IP addresses with Vercel Secure Compute.\",\"rank\":0,\"slug\":\"can-i-get-a-fixed-ip-address\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Do Vercel Serverless Functions support WebSocket connections?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on Vercel's support for WebSocket connections with Vercel Functions.\",\"rank\":0,\"slug\":\"do-vercel-serverless-functions-support-websocket-connections\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2022-08-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Does Vercel support Yarn 2?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on Vercel's support for Yarn 2.\",\"rank\":0,\"slug\":\"does-vercel-support-yarn-2\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Does Vercel support Yarn 4?\",\"authors\":[\"Austin Merrick\"],\"description\":\"Information on Vercel's support for Yarn 4.\",\"rank\":0,\"slug\":\"does-vercel-support-yarn-4\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Does Vercel support Yarn 3?\",\"authors\":[\"Austin Merrick\"],\"description\":\"Information on Vercel's support for Yarn 3.\",\"rank\":0,\"slug\":\"does-vercel-support-yarn-3\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I add a domain using the Vercel API?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on adding a domain using the Vercel API.\",\"rank\":0,\"slug\":\"how-do-i-add-a-domain-using-the-vercel-api\",\"topics\":[{\"title\":\"API \u0026 CLI\",\"slug\":\"api-cli\"}],\"createdAt\":\"2022-08-29T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why is Vercel CLI asking me to log in? \",\"authors\":[\"Allen Hai\"],\"description\":\"Information on why you may be getting prompted to log in to Vercel CLI.\",\"rank\":0,\"slug\":\"why-is-vercel-cli-asking-me-to-log-in\",\"topics\":[{\"title\":\"API \u0026 CLI\",\"slug\":\"api-cli\"}],\"createdAt\":\"2022-08-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I add a custom build step to my project? \",\"authors\":[\"Allen Hai\"],\"description\":\"Learn how to add a custom build step for your project.\",\"rank\":0,\"slug\":\"how-can-i-add-a-custom-build-step-to-my-project\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I remove a domain from my Vercel account?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn how to completely remove a domain from your Vercel account?\",\"rank\":0,\"slug\":\"how-do-i-remove-a-domain-from-my-vercel-account\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2022-08-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I deploy Discord bots to Vercel?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about whether it's possible to deploy Discord Bots to Vercel.\",\"rank\":0,\"slug\":\"can-i-deploy-discord-bots-to-vercel\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2022-08-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I use a non-default branch for production?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about whether setting a non-default branch as production is possible?\",\"rank\":0,\"slug\":\"can-i-use-a-non-default-branch-for-production\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why do my Vercel deployments have multiple domains?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about why Vercel auto generates URLs for your deployments.\",\"rank\":0,\"slug\":\"why-do-my-vercel-deployments-have-multiple-domains\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2022-08-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I point a subdomain to a service outside of Vercel?\",\"authors\":[\"Matthew Sweeney\",\"Justin Vitale\",\"William Li\"],\"description\":\"Information on how to make a subdomain available to a service outside of Vercel.\",\"rank\":0,\"slug\":\"pointing-subdomains-to-external-services\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2022-08-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I resolve a 'process.env.CI = true' error?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on resolving a 'process.env.CI = true' error.\",\"rank\":0,\"slug\":\"how-do-i-resolve-a-process-env-ci-true-error\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I prerender my application on Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to enable prerendering with your frontend framework on Vercel for better performance and SEO.\",\"rank\":0,\"slug\":\"how-can-i-prerender-my-application-on-vercel\",\"topics\":[{\"title\":\"Edge Network \u0026 Caching\",\"slug\":\"edge\"},{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2022-08-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I use Bitbucket Data Center with Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"You can use Bitbucket Data Center and Bitbucket Pipelines to deploy your application to Vercel.\",\"rank\":0,\"slug\":\"can-i-use-bitbucket-data-center-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I use GitHub Enterprise Server with Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"You can use GitHub Enterprise Server and GitHub Actions to deploy your application to Vercel.\",\"rank\":0,\"slug\":\"can-i-use-github-enterprise-server-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I use self-managed GitLab with Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"You can use self-managed GitLab and GitHub Pipelines to deploy your application to Vercel.\",\"rank\":0,\"slug\":\"can-i-use-self-managed-gitlab-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I use Bitbucket Pipelines with Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to use Bitbucket Pipelines to deploy to Vercel including support for Bitbucket Data Center.\",\"rank\":0,\"slug\":\"how-can-i-use-bitbucket-pipelines-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I use GitLab Pipelines with Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to use GitLab Pipelines to deploy to Vercel including support for self-managed GitLab.\",\"rank\":0,\"slug\":\"how-can-i-use-gitlab-pipelines-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I perform Vercel redirects based on query strings?\",\"authors\":[\"Ismael Rumzan\"],\"description\":\"When using redirects with the `vercel.json` or `next.config.js` configuration file, your URL may contain query parameters that you would like to use in your re-direction, this is possible with 2 different methods.\",\"rank\":0,\"slug\":\"how-do-i-perform-vercel-redirects-based-on-query-strings\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I bypass the 4.5MB body size limit of Vercel Serverless Functions?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn how to deal with the body size limit of Serverless Functions on Vercel.\",\"rank\":0,\"slug\":\"how-to-bypass-vercel-body-size-limit-serverless-functions\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"},{\"title\":\"Limits, Usage and Pricing\",\"slug\":\"limits\"}],\"createdAt\":\"2022-08-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I lower my Vercel Function execution time?\",\"authors\":[\"Sam Ko\"],\"description\":\"Learn how to lower your Serverless Function execution time.\",\"rank\":0,\"slug\":\"how-do-i-lower-my-serverless-function-execution-time\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2022-08-26T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Using Headless WordPress with Next.js and Vercel\",\"authors\":[\"Lee Robinson\",\"Maedah Batool\",\"Anthony Shew\"],\"description\":\"Learn how to use Headless WordPress with your Next.js application and deploy it to Vercel.\",\"rank\":0,\"slug\":\"wordpress-with-vercel\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"}],\"createdAt\":\"2022-08-24T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can you deploy based on tags/releases on Vercel?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to deploy based on tags/releases on Vercel.\",\"rank\":0,\"slug\":\"can-you-deploy-based-on-tags-releases-on-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-08-05T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I add environment variables to my Vercel project?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to add Environment Variables to your Vercel project.\",\"rank\":0,\"slug\":\"how-to-add-vercel-environment-variables\",\"topics\":[{\"title\":\"Environment Variables\",\"slug\":\"environment\"}],\"createdAt\":\"2022-08-01T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I use the latest npm version for my Vercel Deployment?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to use the latest npm version for Vercel deployments.\",\"rank\":0,\"slug\":\"how-do-i-use-the-latest-npm-version-for-my-vercel-deployment\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-07-25T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I redirect from a subdomain to a subpath?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to redirect from your subdomain to a subpath on Vercel with a vercel.json file or with Next.js\",\"rank\":0,\"slug\":\"can-i-redirect-from-a-subdomain-to-a-subpath\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2022-07-20T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Does Vercel support Docker deployments?\",\"authors\":[\"Sam Ko\"],\"description\":\"While Vercel does not support deploying Docker images directly, you can use Docker as part of your development toolchain when building for Vercel.\",\"rank\":0,\"slug\":\"does-vercel-support-docker-deployments\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-07-04T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why am I unable to login or signup to the Vercel platform?\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Information on what to do if you are experiencing issues logging in or signing up to the Vercel platform.\",\"rank\":0,\"slug\":\"why-can-i-not-signup\",\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2022-06-29T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I get the raw body of a Serverless Function?\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to disable body parsing for Vercel Serverless Functions to enable reading the raw data from a POST request.\",\"rank\":0,\"slug\":\"how-do-i-get-the-raw-body-of-a-serverless-function\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2022-06-11T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to move a domain between Vercel projects with \\\"Zero Downtime\\\"?\",\"authors\":[\"Holden Altaffer\"],\"description\":\"Information about how to move your domain between Vercel projects without downtime.\",\"rank\":0,\"slug\":\"how-to-move-a-domain-between-vercel-projects-with-zero-downtime\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2022-06-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I deploy a locally built Next.js app to Vercel?\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Learn how to deploy a locally built Next.js application to Vercel.\",\"rank\":0,\"slug\":\"deploying-locally-built-nextjs\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-06-03T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Deploying a Monorepo Using Yarn Workspaces to Vercel\",\"authors\":[\"Ismael Rumzan\"],\"description\":\"In this guide, you will deploy a monorepo that includes two frontend applications and one shared library with Yarn workspaces.\",\"rank\":0,\"slug\":\"deploying-yarn-monorepos-to-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-05-25T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I move a domain to a Vercel team?\",\"authors\":[\"Justin Vitale\",\"Matthew Sweeney\"],\"description\":\"Information on how to move domains between accounts on Vercel.\",\"rank\":0,\"slug\":\"how-can-i-move-a-domain-to-a-team\",\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2022-05-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can a CAA record be added to a Subdomain Configured with CNAME?\",\"authors\":[\"Holden Altaffer\"],\"description\":\"This guide is for any users with requirements on customization of CAA records on subdomains.\",\"rank\":0,\"slug\":\"can-a-caa-record-be-added-to-a-subdomain-configured-with-cname\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2022-05-05T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I use a Vercel API Access Token?\",\"authors\":[\"Ismael Rumzan\"],\"description\":\"An Access Token is required in order to use the Vercel API. Tokens can be created and managed at the level of your account.\",\"rank\":0,\"slug\":\"how-do-i-use-a-vercel-api-access-token\",\"topics\":[{\"title\":\"API \u0026 CLI\",\"slug\":\"api-cli\"}],\"createdAt\":\"2022-05-01T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Integrating Terraform with Vercel\",\"authors\":[\"Maedah Batool\",\"Ismael Rumzan\",\"Doug Parsons\"],\"description\":\"Understand the benefits of Terraform and how to set up the Integration with Vercel.\",\"rank\":0,\"slug\":\"integrating-terraform-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-04-21T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to use Deploy Hooks with Vercel and a Headless CMS\",\"authors\":[\"Lee Robinson\"],\"description\":\"Create your own Deploy Hooks to trigger automatic deployments on Vercel when using a Headless CMS.\",\"rank\":0,\"slug\":\"set-up-and-use-deploy-hooks-with-vercel-and-headless-cms\",\"topics\":[{\"title\":\"Databases \u0026 CMS\",\"slug\":\"databases\"},{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-03-15T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I use Vercel to deploy to a private cloud?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about if it's possible to deploy to a private cloud with Vercel.\",\"rank\":0,\"slug\":\"can-i-use-vercel-to-deploy-to-a-private-cloud\",\"topics\":[{\"title\":\"Edge Network \u0026 Caching\",\"slug\":\"edge\"}],\"createdAt\":\"2022-02-15T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"When is the SSL Certificate on my Vercel Domain renewed?\",\"authors\":[\"Ismael Rumzan\"],\"description\":\"Information about the when renewal of a Vercel Domain's SSL certificate will be processed.\",\"rank\":0,\"slug\":\"renewal-of-ssl-certificates-with-a-vercel-domain\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2022-02-08T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Brunch App with Vercel\",\"authors\":[\"Rich Haines\"],\"description\":\"Create a Brunch app and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-brunch-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-02-07T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Middleman App with Vercel\",\"authors\":[\"Rich Haines\"],\"description\":\"Create a Middleman app and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-middleman-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-02-07T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Solid App with Vercel\",\"authors\":[\"Rich Haines\"],\"description\":\"Create a Solidjs app and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-solid-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-02-07T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Jekyll Site with Vercel\",\"authors\":[\"Rich Haines\"],\"description\":\"Create a Jekyll website and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-jekyll-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2022-02-04T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I add a custom domain to my Vercel project?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn how to add a custom domain to your Vercel project. \",\"rank\":0,\"slug\":\"how-do-i-add-a-custom-domain-to-my-vercel-project\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2022-01-24T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Where can I submit Vercel feature requests?\",\"authors\":[\"Matthew Sweeney\",\"Allen Hai\"],\"description\":\"Information on how to make feature requests for the Vercel platform.\",\"rank\":0,\"slug\":\"where-to-submit-feature-requests\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2022-01-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"What is Vercel's Green Energy Policy?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information about Vercel's Green Energy Policy.\",\"rank\":0,\"slug\":\"what-is-vercel-green-energy-policy\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How long will it take for my Vercel DNS records to update?\",\"authors\":[\"Justin Vitale\",\"Matthew Sweeney\"],\"description\":\"Information on the length of time it may take for Vercel DNS changes to take place.\",\"rank\":0,\"slug\":\"how-long-to-update-dns-records\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I connect a Pro team to a personal Git account?\",\"authors\":[\"Allen Hai\"],\"description\":\"Information on connecting personal Git accounts to a Vercel team.\",\"rank\":0,\"slug\":\"connecting-teams-with-personal-git-accounts\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I change the name of my Vercel Project?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on changing the name of a Vercel Project.\",\"rank\":0,\"slug\":\"how-do-i-change-the-name-of-my-vercel-project\",\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I change my Vercel avatar?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on changing your Vercel avatar.\",\"rank\":0,\"slug\":\"how-do-i-change-my-vercel-avatar\",\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I change my Vercel username?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on changing your Vercel username.\",\"rank\":0,\"slug\":\"how-do-i-change-my-vercel-username\",\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I disable Git Notifications from Deployments?\",\"authors\":[\"Ismael Rumzan\"],\"description\":\"If your project is connected via a Git account to your deployment, you will receive email notifications whenever the deployment has completed. How can you disable these notifications?\",\"rank\":0,\"slug\":\"how-do-i-disable-git-notifications-from-deployments\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I generate an SHA for uploading a file to the Vercel API?\",\"authors\":[\"Ismael Rumzan\"],\"description\":\"When using the Vercel API to create a deployment, you first need to upload your files. An SHA is required to upload these files.\",\"rank\":0,\"slug\":\"how-do-i-generate-an-sha-for-uploading-a-file-to-the-vercel-api\",\"topics\":[{\"title\":\"API \u0026 CLI\",\"slug\":\"api-cli\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I select a team on Vercel?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on selecting a team on Vercel.\",\"rank\":0,\"slug\":\"how-do-i-select-a-team-on-vercel\",\"topics\":[{\"title\":\"Account, Projects \u0026 Teams\",\"slug\":\"account\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I disable auto renewals for a domain registered with Vercel?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about disabling auto-renewal of domains registered with Vercel.\",\"rank\":0,\"slug\":\"how-can-i-disable-auto-renewals-for-a-domain-registered-with-vercel\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Does using Vercel's Nameserver's lock you in?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn about how using Vercel's Nameservers doesn't lock you to anything.\",\"rank\":0,\"slug\":\"does-using-vercel-s-nameserver-s-lock-you-in\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why must we use the Domain Nameservers method for Wildcard Domains on Vercel?\",\"authors\":[\"Ismael Rumzan\"],\"description\":\"Learn why the domain Nameservers method is needed to set up a wildcard domain as custom domain.\",\"rank\":0,\"slug\":\"why-use-domain-nameservers-method-wildcard-domains\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How does Vercel handle copyright infringement claims?\",\"authors\":[\"Allen Hai\"],\"description\":\"Information on the process Vercel will follow when receiving a copyright infringement claim.\",\"rank\":0,\"slug\":\"how-does-vercel-handle-copyright-infringement-claims\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I resolve \\\"err_too_many_redirects\\\" when using a Cloudflare proxy with Vercel?\",\"authors\":[\"Justin Vitale\"],\"description\":\"Information about how to resolve the \\\"err_too_many_redirects\\\" error when using a Cloudflare proxy with Vercel.\",\"rank\":0,\"slug\":\"resolve-err-too-many-redirects-when-using-cloudflare-proxy-with-vercel\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Can I use my domain on Vercel with A records?\",\"authors\":[\"Justin Vitale\",\"Sam Ko\",\"Matthew Sweeney\"],\"description\":\"Information on how to use A records with Vercel to verify a domain.\",\"rank\":0,\"slug\":\"a-record-and-caa-with-vercel\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Does Vercel support HIPAA compliance?\",\"authors\":[\"Sam Ko\"],\"description\":\"Learn about Vercel and HIPAA compliance.\",\"rank\":0,\"slug\":\"is-vercel-hipaa-compliant\",\"topics\":[{\"title\":\"Policy \u0026 Security\",\"slug\":\"security\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Does Vercel support permanent redirects?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on Vercel's support for permanent redirects.\",\"rank\":0,\"slug\":\"does-vercel-support-permanent-redirects\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Why is my domain not automatically generating an SSL certificate?\",\"authors\":[\"Justin Vitale\"],\"description\":\"Information on why a domain may not be automatically generating an SSL certificate.\",\"rank\":0,\"slug\":\"domain-not-generating-ssl-certificate\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I set up a staging environment on Vercel?\",\"authors\":[\"Allen Hai\"],\"description\":\"Information on how to set up a staging environment on Vercel.\",\"rank\":0,\"slug\":\"set-up-a-staging-environment-on-vercel\",\"topics\":[{\"title\":\"Environment Variables\",\"slug\":\"environment\"}],\"createdAt\":\"2021-12-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Custom 404 Page\",\"authors\":[\"Steven Salat\"],\"description\":\"Create a custom 404 page and deploy with Vercel.\",\"rank\":0,\"slug\":\"custom-404-page\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2021-03-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How do I migrate away from `vercel.json` env and build.env?\",\"authors\":[\"Sam Ko\"],\"description\":\"Information on how to migrate your `vercel.json` environment variables to the Environment Variables UI.\",\"rank\":0,\"slug\":\"how-do-i-migrate-away-from-vercel-json-env-and-build-env\",\"topics\":[{\"title\":\"Environment Variables\",\"slug\":\"environment\"}],\"createdAt\":\"2021-02-03T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy an Angular Site with Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"Create your Angular app and deploy it with Vercel.\",\"rank\":0,\"slug\":\"deploying-angular-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2021-01-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Redwood Site with Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"Create your Redwood app and deploy it with Vercel.\",\"rank\":0,\"slug\":\"deploying-redwood-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2021-01-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Preact Site with Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"Create your Preact app and deploy it with Vercel.\",\"rank\":0,\"slug\":\"deploying-preact-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2021-01-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Remix Site with Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"Create your Remix app and deploy it with Vercel.\",\"rank\":0,\"slug\":\"deploying-remix-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2021-01-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Vue.js Site with Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"Create your Vue.js app and deploy it with Vercel.\",\"rank\":0,\"slug\":\"deploying-vuejs-to-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"},{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2021-01-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How can I debug a DNS record?\",\"authors\":[\"Allen Hai\"],\"description\":\"Learn how to troubleshoot and debug DNS records.\",\"rank\":0,\"slug\":\"how-can-i-debug-a-dns-record\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2020-10-30T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Deploy Next.js and Userbase with Vercel\",\"authors\":[\"Allen Hai\"],\"description\":\"Create a Todo app with Next.js and Userbase and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-next-and-userbase-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2020-07-15T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Add Auth to a Next.js Site with Magic.link\",\"authors\":[\"Lee Robinson\"],\"description\":\"Learn how to add user authentication to a Next.js site using Magic.link.\",\"rank\":0,\"slug\":\"add-auth-to-nextjs-with-magic\",\"topics\":[{\"title\":\"Frameworks\",\"slug\":\"frameworks\"}],\"createdAt\":\"2020-06-24T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Getting started with Next.js, TypeScript, and Stripe Checkout\",\"authors\":[\"Lee Robinson\"],\"description\":\"Add payments functionality to your Next.js applications with Stripe and deploy to Vercel.\",\"rank\":0,\"slug\":\"getting-started-with-nextjs-typescript-stripe\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"},{\"title\":\"Integrations \u0026 Logs\",\"slug\":\"integrations\"}],\"createdAt\":\"2020-06-07T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Dojo App with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Create a Dojo app and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-dojo-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2020-04-13T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Monitor Frontend Performance with DebugBear and Vercel\",\"authors\":[\"Sam Ko\"],\"description\":\"Automatically test each Vercel deployment and report performance changes to GitHub.\",\"rank\":0,\"slug\":\"monitor-frontend-performance-with-debugbear-and-vercel\",\"topics\":[{\"title\":\"Integrations \u0026 Logs\",\"slug\":\"integrations\"},{\"title\":\"Analytics\",\"slug\":\"analytics\"}],\"createdAt\":\"2020-04-01T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Error Reports for Your Projects with URIports and Vercel\",\"authors\":[\"Timothy Lorimer\"],\"description\":\"Enable error reporting for your websites deployed with Vercel and act fast on issues.\",\"rank\":0,\"slug\":\"client-side-error-reports-with-uriports-vercel\",\"topics\":[{\"title\":\"Integrations \u0026 Logs\",\"slug\":\"integrations\"}],\"createdAt\":\"2020-02-27T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Monitor Performance with Calibre and Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"Receive performance reports directly in your GitHub Pull Requests, following a Vercel deployment.\",\"rank\":0,\"slug\":\"monitoring-performance-with-calibre-and-vercel\",\"topics\":[{\"title\":\"Integrations \u0026 Logs\",\"slug\":\"integrations\"},{\"title\":\"Analytics\",\"slug\":\"analytics\"}],\"createdAt\":\"2020-02-24T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Deploy Foundation with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Create a Foundation app and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-foundation-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-12-02T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Create and Deploy a Crystallize E-commerce Site with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"How to launch an e-commerce site using Next.js and Crystallize on Vercel in minutes.\",\"rank\":0,\"slug\":\"deploying-crystallize-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-11-15T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Polymer App with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Create a Polymer app and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-polymer-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-11-11T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Stencil app with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Create a Stencil app and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-stencil-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-11-06T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy an UmiJS App with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Create an UmiJS app and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-umijs-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-11-04T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy an Aurelia App with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Create an Aurelia app and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-aurelia-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-11-01T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Hexo Blog with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Create a Hexo blog and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-hexo-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-10-31T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy an Eleventy Site with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Create an Eleventy website and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-eleventy-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-10-22T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy MDX Deck with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Create a React based slideshow with MDX Deck and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-mdx-deck-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-10-18T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Transferring Domains to Vercel\",\"authors\":[\"Lee Robinson\"],\"description\":\"How to transfer your domain to Vercel.\",\"rank\":0,\"slug\":\"transferring-domains-to-vercel\",\"topics\":[{\"title\":\"Domains \u0026 DNS\",\"slug\":\"dns\"}],\"createdAt\":\"2019-10-11T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy an Ember App with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Create an Ember app and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-ember-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-10-11T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Docusaurus Site with Vercel\",\"authors\":[\"Matthew Sweeney\",\"Rich Haines\"],\"description\":\"Create a Docusaurus documentation site and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-docusaurus-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-10-09T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Deploying React Forms Using Formspree with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Create and deploy a React form with the help of Formspree and Vercel.\",\"rank\":0,\"slug\":\"deploying-react-forms-using-formspree-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-09-12T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Deploying Real-Time Apps with Pusher Channels and Vercel\",\"authors\":[\"Allen Hai\"],\"description\":\"How to get started building and deploying real-time apps with Channels on Vercel.\",\"rank\":0,\"slug\":\"deploying-pusher-channels-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"},{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2019-08-28T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Handling Node.js Request Bodies with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Parse Node.js request bodies for use inside Serverless Functions deployed with Vercel.\",\"rank\":0,\"slug\":\"handling-node-request-body\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}],\"createdAt\":\"2019-05-10T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Charge App with Vercel\",\"authors\":[\"Matthew Sweeney\"],\"description\":\"Create a Charge App and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-charge-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-04-09T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"How to Deploy a Hugo Site with Vercel\",\"authors\":[\"Prosper Otemuyiwa\"],\"description\":\"Create a Hugo website and deploy it live with Vercel.\",\"rank\":0,\"slug\":\"deploying-hugo-with-vercel\",\"topics\":[{\"title\":\"Build, Deployment \u0026 Git\",\"slug\":\"build\"}],\"createdAt\":\"2019-02-20T12:00:00.000Z\",\"type\":\"how-to\"},{\"title\":\"Using Tailwind CSS with your OG Image\",\"description\":\"Learn how to use Tailwind CSS to style your OG images.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"using-tailwind\",\"topics\":[{\"title\":\"Og Image Generation\",\"slug\":\"og-image-generation\"}]},{\"title\":\"Using an SVG image in your OG image\",\"description\":\"Learn how to use SVG embedded content to generate your OG images.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"using-svg-image\",\"topics\":[{\"title\":\"Og Image Generation\",\"slug\":\"og-image-generation\"}]},{\"title\":\"Using emoji in your OG image\",\"description\":\"Learn how to use emojis to generate an OG image.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"using-emoji-in-image\",\"topics\":[{\"title\":\"Og Image Generation\",\"slug\":\"og-image-generation\"}]},{\"title\":\"Using languages in your OG image\",\"description\":\"Learn how to use other languages in the text of your OG image.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"using-different-languages\",\"topics\":[{\"title\":\"Og Image Generation\",\"slug\":\"og-image-generation\"}]},{\"title\":\"Using a custom font in your OG Image\",\"description\":\"Learn how to use a custom font from the tile system in your OG images.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"using-custom-font\",\"topics\":[{\"title\":\"Og Image Generation\",\"slug\":\"og-image-generation\"}]},{\"title\":\"Using an external image as OG image\",\"description\":\"Learn how to pass the username as a URL parameter to pull an external profile image for the image generation.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"using-an-external-dynamic-image\",\"topics\":[{\"title\":\"Og Image Generation\",\"slug\":\"og-image-generation\"}]},{\"title\":\"Using the crypto Web API to redirect requests with a unique token\",\"description\":\"Learn how to use the Crypto Web API in your Edge Middleware.\",\"lastEdited\":\"2025-03-04T21:38:33.000Z\",\"slug\":\"use-crypto-web-api\",\"topics\":[{\"title\":\"Middleware\",\"slug\":\"middleware\"}]},{\"title\":\"Understand the Cost Impact of Function Invocations\",\"description\":\"Learn how to use Observability to understand function invocations and their cost impact.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"understand-cost-impact-of-function-invocations\",\"topics\":[{\"title\":\"Observability\",\"slug\":\"observability\"}]},{\"title\":\"Troubleshooting Content Link\",\"description\":\"This guide provides troubleshooting information for common issues when using Content Link\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"troubleshooting-content-link\",\"topics\":[{\"title\":\"Cms\",\"slug\":\"cms\"},{\"title\":\"Troubleshooting\",\"slug\":\"troubleshooting\"}]},{\"title\":\"Traffic Spikes\",\"description\":\"Learn how to block traffic from a specific IP address.\",\"lastEdited\":\"2025-03-04T21:38:33.000Z\",\"slug\":\"traffic-spikes\",\"topics\":[{\"title\":\"Security\",\"slug\":\"security\"}]},{\"title\":\"Team and User Management with Vercel SDK\",\"description\":\"Learn how to use the Vercel SDK through real-life examples.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"team-management\",\"topics\":[{\"title\":\"Api Cli\",\"slug\":\"api-cli\"}]},{\"title\":\"Suspicious Traffic in Specific Countries\",\"description\":\"Learn how to block traffic in specific geographical regions.\",\"lastEdited\":\"2025-03-04T21:38:33.000Z\",\"slug\":\"suspicious-traffic-in-specific-countries\",\"topics\":[{\"title\":\"Security\",\"slug\":\"security\"}]},{\"title\":\"Streaming responses from LLMs\",\"description\":\"Explore streaming on Vercel with code samples that work out of the box.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"streaming-from-llm\",\"topics\":[{\"title\":\"Streaming\",\"slug\":\"streaming\"}]},{\"title\":\"Set cache control headers for functions\",\"description\":\"Learn how to set headers to cache your function's responses.\",\"lastEdited\":\"2025-03-12T17:49:12.000Z\",\"slug\":\"set-cache-control-headers\",\"topics\":[{\"title\":\"Functions\",\"slug\":\"functions\"}]},{\"title\":\"Sending a sample of events to Speed Insights\",\"description\":\"Learn how to send a sample of your data to Speed insights.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"sending-sample-to-speed-insights\",\"topics\":[{\"title\":\"Observability\",\"slug\":\"observability\"}]},{\"title\":\"Rendering content based on device\",\"description\":\"Learn how to render different content based on the user agent in your Edge Middleware.\",\"lastEdited\":\"2025-03-04T21:38:33.000Z\",\"slug\":\"rendering-content-based-on-device\",\"topics\":[{\"title\":\"Middleware\",\"slug\":\"middleware\"}]},{\"title\":\"Project Management with Vercel SDK\",\"description\":\"Learn how to use the Vercel SDK through real-life examples.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"project-management\",\"topics\":[{\"title\":\"Api Cli\",\"slug\":\"api-cli\"}]},{\"title\":\"Processing Data Chunks\",\"description\":\"Learn how to create an API endpoint that processes data chunks.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"processing-data-chunks\",\"topics\":[{\"title\":\"Streaming\",\"slug\":\"streaming\"}]},{\"title\":\"Penetration testing on Vercel\",\"description\":\"Learn how to perform pentesting on Vercel.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"penetration-testing-on-vercel\",\"topics\":[{\"title\":\"Security\",\"slug\":\"security\"}]},{\"title\":\"Pause your project\",\"description\":\"Use a webhook to pause your project based on spend management.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"pause-your-project\",\"topics\":[{\"title\":\"Limits\",\"slug\":\"limits\"}]},{\"title\":\"Modifying request headers\",\"description\":\"Learn how to modify request headers in your Edge Middleware.\",\"lastEdited\":\"2025-03-04T21:38:33.000Z\",\"slug\":\"modify-request-headers\",\"topics\":[{\"title\":\"Middleware\",\"slug\":\"middleware\"}]},{\"title\":\"Logs and Monitoring with Vercel SDK\",\"description\":\"Learn how to use the Vercel SDK through real-life examples.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"logs-monitoring\",\"topics\":[{\"title\":\"Api Cli\",\"slug\":\"api-cli\"}]},{\"title\":\"Limit Abuse with Rate Limiting\",\"description\":\"Learn how to protect your authentication endpoints against abuse.\",\"lastEdited\":\"2025-03-04T21:38:33.000Z\",\"slug\":\"limit-abuse-with-rate-limiting\",\"topics\":[{\"title\":\"Security\",\"slug\":\"security\"}]},{\"title\":\"Investigate latency issues and slowness on Vercel\",\"description\":\"Learn how to use Observability to investigate latency issues and slowness on Vercel.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"investigate-latency-issues-and-slowness\",\"topics\":[{\"title\":\"Observability\",\"slug\":\"observability\"}]},{\"title\":\"Integrations with Vercel SDK\",\"description\":\"Learn how to use the Vercel SDK through real-life examples.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"integrations\",\"topics\":[{\"title\":\"Api Cli\",\"slug\":\"api-cli\"}]},{\"title\":\"Handling Backpressure\",\"description\":\"Learn how to handle backpressure by pushing data into a steam as it's needed, rather than as it's ready.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"handling-backpressure\",\"topics\":[{\"title\":\"Streaming\",\"slug\":\"streaming\"}]},{\"title\":\"Filtering query parameters\",\"description\":\"Learn how to filter query parameters in your Edge Middleware.\",\"lastEdited\":\"2025-03-04T21:38:33.000Z\",\"slug\":\"filter-query-parameters\",\"topics\":[{\"title\":\"Middleware\",\"slug\":\"middleware\"}]},{\"title\":\"Environment Variables with Vercel SDK\",\"description\":\"Learn how to use the Vercel SDK through real-life examples.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"environment-variables\",\"topics\":[{\"title\":\"Api Cli\",\"slug\":\"api-cli\"}]},{\"title\":\"Encrypting parameters\",\"description\":\"Learn how to encrypt parameters so that only certain values can be passed to generate your image.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"encrypting-parameters\",\"topics\":[{\"title\":\"Og Image Generation\",\"slug\":\"og-image-generation\"}]},{\"title\":\"Emergency Redirect\",\"description\":\"Learn how to implement an emergency redirect without re-deploying your site.\",\"lastEdited\":\"2025-03-04T21:38:33.000Z\",\"slug\":\"emergency-redirect\",\"topics\":[{\"title\":\"Security\",\"slug\":\"security\"}]},{\"title\":\"Using dynamic text as your OG Image\",\"description\":\"Learn how to pass the image title as a URL parameter.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"dynamic-text-as-image\",\"topics\":[{\"title\":\"Og Image Generation\",\"slug\":\"og-image-generation\"},{\"title\":\"Functions\",\"slug\":\"functions\"}]},{\"title\":\"Dynamically run build commands\",\"description\":\"Learn how to run different scripts based on the environment or branch.\",\"lastEdited\":\"2025-03-04T21:38:33.000Z\",\"slug\":\"dynamic-build-commands\",\"topics\":[{\"title\":\"Build\",\"slug\":\"build\"}]},{\"title\":\"Domain Management with Vercel SDK\",\"description\":\"Learn how to use the Vercel SDK through real-life examples.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"domain-management\",\"topics\":[{\"title\":\"Api Cli\",\"slug\":\"api-cli\"}]},{\"title\":\"Deployment Automation with Vercel SDK\",\"description\":\"Learn how to use the Vercel SDK through real-life examples.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"deployments-automation\",\"topics\":[{\"title\":\"Api Cli\",\"slug\":\"api-cli\"}]},{\"title\":\"Dependencies from package.json are missing after install\",\"description\":\"Understand why dependencies may not being installed during a build and how to fix.\",\"lastEdited\":\"2025-03-04T21:38:33.000Z\",\"slug\":\"dependencies-from-package-json-missing-after-install\",\"topics\":[{\"title\":\"Build\",\"slug\":\"build\"}]},{\"title\":\"Deny traffic from a Set of IP Addresses\",\"description\":\"Learn how to specific IP addresses with the Vercel WAF API.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"deny-traffic-from-a-set-of-ip-addresses\",\"topics\":[{\"title\":\"Security\",\"slug\":\"security\"}]},{\"title\":\"Deny non-browser Traffic or Blocklisted ASNs\",\"description\":\"Learn how to block traffic from known threats with the Vercel WAF API.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"deny-non-browser-traffic-or-blocklisted-asns\",\"topics\":[{\"title\":\"Security\",\"slug\":\"security\"}]},{\"title\":\"Challenge cURL Requests\",\"description\":\"Learn how to challenge curl requests with the Vercel WAF API.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"challenge-curl-requests\",\"topics\":[{\"title\":\"Security\",\"slug\":\"security\"}]},{\"title\":\"Challenge Cookieless Requests on a Specific Path\",\"description\":\"Learn how to challenge specific requests with the Vercel WAF API.\",\"lastEdited\":\"2025-02-07T07:41:02.000Z\",\"slug\":\"challenge-cookieless-requests-on-a-specific-path\",\"topics\":[{\"title\":\"Security\",\"slug\":\"security\"}]},{\"title\":\"Adding a response header\",\"description\":\"Learn how to add a response header in your Edge Middleware.\",\"lastEdited\":\"2025-03-04T21:38:33.000Z\",\"slug\":\"add-response-header\",\"topics\":[{\"title\":\"Middleware\",\"slug\":\"middleware\"}]}]},\"meta\":{\"title\":\"Guides\",\"description\":\"How-tos and Tutorials.\",\"authors\":[],\"openGraph\":{\"siteName\":\"Vercel Guides\",\"url\":\"https://vercel.com/guides\",\"locale\":\"en_US\",\"type\":\"website\",\"images\":[{\"url\":\"https://vercel.com/api/dynamic-og?title=Vercel%20Guides\",\"alt\":\"Vercel Guides\"}]}}}]}]\n"])</script></body></html>