CINXE.COM

Changelog | Netlify

<!DOCTYPE html><html lang="en"> <head><meta charset="utf-8"><meta name="viewport" content="width=device-width"><meta name="generator" content="Astro v5.3.0"><!-- Page information --><title>Changelog | Netlify</title><meta name="description" content="Stay updated with the latest features, fixes, and improvements. Realize the speed, agility and performance of a scalable, composable web architecture with Netlify. Explore the composable web platform now!"><link rel="canonical" href="https://www.netlify.com/changelog/"><!-- Favicons --><link rel="icon" href="/favicon/favicon.ico" sizes="32x32"><link rel="icon" href="/favicon/icon.svg" type="image/svg+xml"><link rel="apple-touch-icon" href="/favicon/apple-touch-icon.png"><link rel="manifest" href="/site.webmanifest" crossorigin="use-credentials"><meta name="apple-mobile-web-app-title" content="Netlify"><meta name="application-name" content="Netlify"><meta name="theme-color" content="#ffffff"><!-- Open Graph meta tags --><meta property="og:type" content="website"><meta property="og:title" content="Changelog | Netlify"><meta property="og:description" content="Stay updated with the latest features, fixes, and improvements. Realize the speed, agility and performance of a scalable, composable web architecture with Netlify. Explore the composable web platform now!"><meta property="og:image" content="https://www.netlify.com//images/og-image-default.png"><!-- Twitter meta tags --><meta name="twitter:card" content="summary_large_image"><meta property="twitter:domain" content="netlify.com"><meta name="twitter:title" content="Changelog | Netlify"><meta name="twitter:description" content="Stay updated with the latest features, fixes, and improvements. Realize the speed, agility and performance of a scalable, composable web architecture with Netlify. Explore the composable web platform now!"><meta name="twitter:image" content="https://www.netlify.com//images/og-image-default.png"><!-- Page assets --><link rel="preload" href="/fonts/pacaembu/PacaembuNetlify-Variable.woff2" as="font" type="font/woff2" crossorigin=""><link rel="preload" href="/fonts/mulish/MulishVar-latin.woff2" as="font" type="font/woff2" crossorigin=""><!-- Third-party verification --><meta name="slack-app-id" content="A05P27DR8C8"><!-- Third-party scripts --><script> window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag('consent', 'default', { ad_storage: 'denied', analytics_storage: 'denied', functionality_storage: 'denied', personalization_storage: 'denied', security_storage: 'denied', region: [ 'AT', 'BE', 'BG', 'HR', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR', 'DE', 'EL', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL', 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', 'SE', 'UK', ], }); gtag('consent', 'default', { ad_storage: 'granted', analytics_storage: 'granted', functionality_storage: 'granted', personalization_storage: 'granted', security_storage: 'granted', }); function OptanonWrapper() { if (!OneTrust.IsAlertBoxClosed()) { document.body.classList.add('onetrust-alert-box-open'); } OneTrust.OnConsentChanged(() => { if (OneTrust.IsAlertBoxClosed()) { document.body.classList.remove('onetrust-alert-box-open'); } }); } </script> <script>(function(){const id = "GTM-T7WNFLD"; (function (w, d, s, l, i) { w[l] = w[l] || []; w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' }); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', id); })();</script><!-- Qualified --><script> (function (w, q) { w['QualifiedObject'] = q; w[q] = w[q] || function () { (w[q].q = w[q].q || []).push(arguments); }; })(window, 'qualified'); </script> <script async src="https://js.qualified.com/qualified.js?token=FvGWn26rk1tuEjBR"></script> <!-- End Qualified --><!-- RSS Feeds --><link rel="alternate" type="application/rss+xml" title="Netlify Changelog" href="https://www.netlify.com/changelog/feed.xml"><link rel="stylesheet" href="/_astro/convince-your-boss.jIVP1guf.css"> <style>.button[data-astro-cid-tcbm7f7q][data-icon-name=arrow][data-icon-position=inline-end]:hover{--_icon-x: 2px}.button[data-astro-cid-tcbm7f7q][data-icon-name=arrow] svg[data-astro-cid-tcbm7f7q]{--button-icon-size: .7em;transform:rotate(var(--_icon-rotate, 0)) translate(var(--_icon-x, 0));transition:transform .2s var(--ease-out)}.button[data-astro-cid-tcbm7f7q][data-icon-name=arrow][data-icon-position=inline-end][href*="//"]:not([href*="netlify.com"]){--_icon-rotate: -45deg}.button[data-astro-cid-tcbm7f7q][data-icon-name=arrow][data-icon-position=inline-end][href^="#"]{--_icon-rotate: 90deg}.button[data-astro-cid-tcbm7f7q]::-webkit-details-marker{display:none} [data-astro-cid-patnjmll][data-variant=encapsulated]{--size: 3rem;--icon-size: 1.25rem;display:grid;place-items:center;color:var(--neutral-light-800);background-color:var(--blue-000);width:var(--size);height:var(--size);border-radius:var(--radius-circle)} .changelog-entry[data-astro-cid-kubicw44]{position:relative;display:grid;gap:1rem;grid-column-gap:var(--space-xl);padding-inline-start:2rem;width:100%;padding-block:4rem}.changelog-entry[data-astro-cid-kubicw44]:after,.changelog-entry[data-astro-cid-kubicw44]:first-of-type:before{content:"";display:block;position:absolute;height:100%;width:1px;background-image:linear-gradient(var(--color-bg-3) 33%,rgba(255,255,255,0) 0%);background-position:right;background-size:1rem 1rem;background-repeat:repeat-y;z-index:-1}.changelog-entry[data-astro-cid-kubicw44]:first-of-type:before{height:var(--space-xl);transform:translateY(calc(-1 * var(--space-xl)))}.changelog-entry-aside[data-astro-cid-kubicw44]:before{--_size: .7rem;content:"";display:block;position:absolute;top:calc((var(--space-2xl) + .5rem));left:calc(-1 * var(--_size) / 2.1);height:var(--_size);width:var(--_size);background:var(--color-brand-1);box-shadow:0 0 0 .5em var(--color-bg-1);transform:rotate(45deg)}.changelog-entry-title[data-astro-cid-kubicw44]>[data-astro-cid-kubicw44][data-icon=external-link]{--icon-size: var(--step-0);--icon-color: currentColor}.changelog-entry-metadata[data-astro-cid-kubicw44]{display:block;grid-column:1 / -1;color:var(--color-text-2)}.changelog-entry-metadata[data-astro-cid-kubicw44]>[data-astro-cid-kubicw44]{display:inline-block}.changelog-entry-image[data-astro-cid-kubicw44],.changelog-entry-description img{border-radius:var(--radius-l);overflow:hidden}.changelog-entry-description[data-astro-cid-kubicw44]{color:var(--color-text-2)}.changelog-entry-card-link[data-astro-cid-kubicw44]{display:inline-block;text-decoration:none;height:max-content;max-width:min(40ch,100%);text-wrap:balance}.changelog-entry-card-link[data-astro-cid-kubicw44]:hover{color:var(--color-link-hover-1);text-decoration:underline}.changelog-entry-links[data-astro-cid-kubicw44]{--cluster-column-gap: var(--space-s)}.changelog-entry-link[data-astro-cid-kubicw44]{--icon-size: .8em;--icon-color: var(--color-text-3);color:var(--color-text-2);text-decoration:none;border:1px solid var(--color-bg-3);padding:var(--space-3xs) var(--space-xs);border-radius:var(--radius-pill);display:flex;align-items:center;gap:var(--space-2xs)}@media (min-width: 665px){.changelog-entry[data-astro-cid-kubicw44]{grid-template-columns:minmax(100px,1fr) 1.25fr}.changelog-entry-aside[data-astro-cid-kubicw44]{position:sticky;top:calc(var(--site-header-height) + 2rem);height:max-content}.changelog-entry-aside[data-astro-cid-kubicw44]:before{--_size: .8rem;top:.6rem;left:calc(-1 * (var(--space-l) + var(--_size) / 2.1))}}.tag-input[data-astro-cid-t7zqjfio]{flex:140px;max-width:min(140px,100%)}.changelog-items[data-astro-cid-orlsyalv]{--grid-min: 18rem;--grid-count: 1fr;--grid-column-gap: clamp(var(--space-l), 6vw, var(--space-2xl));--grid-row-gap: 0;list-style:none;padding-inline:0}.changelog-pagination-link[data-astro-cid-orlsyalv]{--icon-size: .8em;display:flex;align-items:center;gap:.25em;color:currentColor;text-decoration:none}.changelog-pagination-link[data-astro-cid-orlsyalv]:hover{text-decoration:underline}.changelog-pagination-link[data-astro-cid-orlsyalv][data-step=next]{margin-left:auto}.changelog-pagination-link[data-astro-cid-orlsyalv][data-step=previous] svg[data-astro-cid-orlsyalv]{transform:rotate(-180deg)}.hero[data-astro-cid-orlsyalv]{position:relative;padding-block:var(--space-s);border-bottom:1px solid var(--color-bg-3)}.hero[data-astro-cid-orlsyalv] .subtitle[data-astro-cid-orlsyalv]{max-width:55ch}.changelog-content[data-astro-cid-orlsyalv]{position:relative;isolation:isolate}.changelog-content[data-astro-cid-orlsyalv]:after{--_size: 12px;content:"";position:absolute;top:0;left:calc(-1 * var(--_size) / 2.5);height:var(--_size);width:var(--_size);border-radius:var(--radius-circle);background:var(--color-brand-1);z-index:1;top:unset;bottom:0}.pagination[data-astro-cid-orlsyalv]{margin-block-start:var(--space-3xl)}.action-bar[data-astro-cid-orlsyalv]{--cluster-justify: space-between} </style> <link rel="stylesheet" href="/_astro/_guideSlug_.JvHpYphR.css"> <style>img[data-astro-cid-jbhojhg7]{width:100%} .hubspot-form-wrapper{--center-max: 35rem}.hs-form-booleancheckbox-display{display:flex;align-items:baseline;gap:var(--space-2xs)}.hs-form :where(.legal-consent-container,[class^=hs_notice_and_consent]){font-size:var(--step--1)}.hs-form .legal-consent-container .hs-form-booleancheckbox-display>span{margin-left:0}.hs-form-required{margin-inline-start:.1em;color:var(--color-text-invalid)}.hs-error-msg{font-size:.8em;color:var(--color-text-invalid)}.hs_error_rollup .hs-error-msgs{font-size:.8em;line-height:normal;color:var(--color-text-invalid);background-color:var(--color-bg-invalid);padding:var(--space-xs) var(--space-s);border-radius:var(--radius-m)}.hs-error-msg{display:block}.hs-form-field:not([hidden]){display:grid;gap:var(--space-3xs)}.hs-submit input{width:100%} .prose[data-astro-cid-cnvtppup]{max-width:var(--prose-max-width, 100%)} .tags[data-astro-cid-gbftaqod]{--cluster-column-gap: var(--space-s)} </style></head> <body> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-T7WNFLD" height="0" width="0" style="display:none;visibility:hidden"> </iframe></noscript> <header class="site-header"> <script id="announcement-render" data-announcement-url="https://biilmann.blog/articles/introducing-ax/?utm_source=ntl-announcement" data-announcement-hide-after="2025-03-01"> (function () { const storageUrl = localStorage.getItem('Netlify_hide-announcement-bar'); const scriptTarget = document.querySelector('#announcement-render'); if (!scriptTarget) return; const url = scriptTarget.getAttribute('data-announcement-url'); const hideAfter = scriptTarget.getAttribute('data-announcement-hide-after'); function isExpired(date) { if (!date) return; let hideAfterSplit = date.split(/[^\d]/).map((entry) => parseInt(entry, 10)); let compareDate = new Date(hideAfterSplit[0], hideAfterSplit[1] - 1, hideAfterSplit[2] + 1); return compareDate && new Date() > compareDate; } if (storageUrl === url || isExpired(hideAfter)) { document.documentElement.setAttribute('data-announcement-state', 'hidden'); } })(); </script> <div class="announcement-bar" data-href="https://biilmann.blog/articles/introducing-ax/?utm_source=ntl-announcement" data-astro-cid-o54ltyzl> <p data-astro-cid-o54ltyzl><span data-astro-cid-o54ltyzl> Find out if you’re ready for the</span> <a href="https://biilmann.blog/articles/introducing-ax/?utm_source=ntl-announcement" id="cta-header-announcementBar" data-astro-cid-o54ltyzl>new era of Agent Experience (AX)</a></p> <button class="close" type="reset" id="cta-header-announcementBar-close" data-astro-cid-o54ltyzl> <span class="visually-hidden" data-astro-cid-o54ltyzl>Close announcement bar</span> <svg width="0.75em" height="1em" viewBox="0 0 384 512" aria-hidden="true" style="--button-icon-size: 1.25rem" data-astro-cid-o54ltyzl="true" data-icon="close"> <use href="#ai:local:close"></use> </svg> </button> </div> <script type="module">(function(){const e=document.querySelector(".announcement-bar"),n=document.querySelector(".announcement-bar > .close");if(!e||!n)return;const r=e.getAttribute("data-href");new ResizeObserver(([t])=>{document.body.style.setProperty("--announcement-bar-height",`${t.borderBoxSize[0].blockSize}px`)}).observe(e),n.addEventListener("click",t=>{t.preventDefault(),r&&localStorage.setItem("Netlify_hide-announcement-bar",r),e.setAttribute("hidden","true")})})();</script> <section class="wrapper l-breakout wrapper-subnav"> <nav id="site-nav" class="site-navigation" aria-labelledby="site-nav-label" data-astro-cid-2ioqeek6> <h2 id="site-nav-label" class="visually-hidden" data-astro-cid-2ioqeek6>Site navigation</h2> <a id="mainNav-netlifyLogo" href="/" data-astro-cid-jwiz4kkf> <span class="visually-hidden" data-astro-cid-jwiz4kkf>Go to homepage</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 209" fill="none" aria-hidden="true" data-astro-cid-jwiz4kkf> <g clip-path="url(#clip0_235_8)" data-astro-cid-jwiz4kkf> <path d="M117.436 207.036V154.604L118.529 153.51H129.452L130.545 154.604V207.036L129.452 208.13H118.529L117.436 207.036Z" class="spark" data-astro-cid-jwiz4kkf></path> <path d="M117.436 53.5225V1.09339L118.529 0H129.452L130.545 1.09339V53.5225L129.452 54.6159H118.529L117.436 53.5225Z" class="spark" data-astro-cid-jwiz4kkf></path> <path d="M69.9539 169.238H68.4094L60.6869 161.512V159.967L78.7201 141.938L86.8976 141.942L87.9948 143.031V151.209L69.9539 169.238Z" class="spark" data-astro-cid-jwiz4kkf></path> <path d="M69.9462 38.8917H68.4017L60.6792 46.6181V48.1626L78.7124 66.192L86.8899 66.1882L87.9871 65.0986V56.9212L69.9462 38.8917Z" class="spark" data-astro-cid-jwiz4kkf></path> <path d="M1.09339 97.5104H75.3711L76.4645 98.6038V109.526L75.3711 110.62H1.09339L0 109.526V98.6038L1.09339 97.5104Z" class="spark" data-astro-cid-jwiz4kkf></path> <path d="M440.999 97.5104H510.91L512.004 98.6038V109.526L510.91 110.62H436.633L435.539 109.526L439.905 98.6038L440.999 97.5104Z" class="spark" data-astro-cid-jwiz4kkf></path> <path d="M212.056 108.727L210.963 109.821H177.079L175.986 110.914C175.986 113.101 178.173 119.657 186.916 119.657C190.196 119.657 193.472 118.564 194.566 116.377L195.659 115.284H208.776L209.869 116.377C208.776 122.934 203.313 132.774 186.916 132.774C168.336 132.774 159.589 119.657 159.589 104.357C159.589 89.0576 168.332 75.9408 185.822 75.9408C203.313 75.9408 212.056 89.0576 212.056 104.357V108.731V108.727ZM195.659 97.7971C195.659 96.7037 194.566 89.0538 185.822 89.0538C177.079 89.0538 175.986 96.7037 175.986 97.7971L177.079 98.8905H194.566L195.659 97.7971Z" class="text" data-astro-cid-jwiz4kkf></path> <path d="M242.66 115.284C242.66 117.47 243.753 118.564 245.94 118.564H255.776L256.87 119.657V130.587L255.776 131.681H245.94C236.103 131.681 227.36 127.307 227.36 115.284V91.2368L226.266 90.1434H218.617L217.523 89.05V78.1199L218.617 77.0265H226.266L227.36 75.9332V66.0965L228.453 65.0031H241.57L242.663 66.0965V75.9332L243.757 77.0265H255.78L256.874 78.1199V89.05L255.78 90.1434H243.757L242.663 91.2368V115.284H242.66Z" class="text" data-astro-cid-jwiz4kkf></path> <path d="M283.1 131.681H269.983L268.889 130.587V56.2636L269.983 55.1702H283.1L284.193 56.2636V130.587L283.1 131.681Z" class="text" data-astro-cid-jwiz4kkf></path> <path d="M312.61 68.2871H299.493L298.399 67.1937V56.2636L299.493 55.1702H312.61L313.703 56.2636V67.1937L312.61 68.2871ZM312.61 131.681H299.493L298.399 130.587V78.1237L299.493 77.0304H312.61L313.703 78.1237V130.587L312.61 131.681Z" class="text" data-astro-cid-jwiz4kkf></path> <path d="M363.98 56.2636V67.1937L362.886 68.2871H353.05C350.863 68.2871 349.769 69.3805 349.769 71.5672V75.9408L350.863 77.0342H361.793L362.886 78.1276V89.0576L361.793 90.151H350.863L349.769 91.2444V130.591L348.676 131.684H335.559L334.466 130.591V91.2444L333.372 90.151H325.723L324.629 89.0576V78.1276L325.723 77.0342H333.372L334.466 75.9408V71.5672C334.466 59.5438 343.209 55.1702 353.046 55.1702H362.882L363.976 56.2636H363.98Z" class="text" data-astro-cid-jwiz4kkf></path> <path d="M404.42 132.774C400.046 143.704 395.677 150.261 380.373 150.261H374.906L373.813 149.167V138.237L374.906 137.144H380.373C385.836 137.144 386.929 136.05 388.023 132.77V131.677L370.536 89.05V78.1199L371.63 77.0265H381.466L382.56 78.1199L395.677 115.284H396.77L409.887 78.1199L410.98 77.0265H420.817L421.91 78.1199V89.05L404.424 132.77L404.42 132.774Z" class="text" data-astro-cid-jwiz4kkf></path> <path d="M135.454 131.681L134.361 130.587L134.368 98.9172C134.368 93.4541 132.22 89.2182 125.625 89.0806C122.234 88.9926 118.354 89.0729 114.209 89.2488L113.59 89.8834L113.598 130.587L112.504 131.681H99.3913L98.2979 130.587V77.5388L99.3913 76.4454L128.901 76.1778C143.685 76.1778 149.668 86.3356 149.668 97.8009V130.587L148.575 131.681H135.454Z" class="text" data-astro-cid-jwiz4kkf></path> </g> <defs data-astro-cid-jwiz4kkf> <clipPath id="clip0_235_8" data-astro-cid-jwiz4kkf> <rect width="512" height="208.126" fill="white" data-astro-cid-jwiz4kkf></rect> </clipPath> </defs> </svg> </a> <a class="skip-to-content" href="#main" data-astro-cid-2ioqeek6>Skip to content</a> <ul data-variant="compact" class="menu" role="list" data-astro-cid-2ioqeek6> <li data-astro-cid-2ioqeek6> <button id="main-nav-compact-search" class="site-search-toggle" data-site-search-open class="search-toggle" data-astro-cid-3dk7mn5f> <span class="visually-hidden" data-astro-cid-3dk7mn5f>Search</span> <svg width="16" height="20" aria-hidden="true" data-astro-cid-3dk7mn5f="true" data-icon="search"> <symbol id="ai:local:search" viewBox="0 0 22 24"><path fill="currentcolor" d="M9.413.473a9.081 9.081 0 0 1 6.454 15.47l5.526 5.524-2.122 2.121-5.872-5.872A9.081 9.081 0 1 1 9.413.472m0 3a6.081 6.081 0 1 0 0 12.162 6.081 6.081 0 0 0 0-12.162"/></symbol><use href="#ai:local:search"></use> </svg> </button> </li> <li data-astro-cid-2ioqeek6> <a id="main-nav-compact-login" href="https://app.netlify.com/login" data-astro-cid-2ioqeek6> Log in </a> </li> </ul> <button id="main-nav-compact-hamburger" type="button" class="nav-toggle" aria-expanded="false" aria-controls="main-menu" data-site-nav-toggle data-astro-cid-qsvltxvz> <span class="visually-hidden" data-astro-cid-qsvltxvz>Toggle main menu</span> <svg width="1.24em" height="1em" aria-hidden="true" data-astro-cid-qsvltxvz="true" data-icon="menu"> <symbol id="ai:local:menu" viewBox="0 0 31 25"><path fill="currentcolor" d="M.581.719h30v4h-30zm0 10h30v4h-30zm0 10h30v4h-30z"/></symbol><use href="#ai:local:menu"></use> </svg> </button> <ul class="menu" role="list" data-astro-cid-2ioqeek6> <li class="has-submenu" data-astro-cid-2ioqeek6> <span id="main-nav-platform" data-astro-cid-2ioqeek6>Platform</span> <submenu-utils data-astro-cid-sdvpe5d5="true"> <button class="submenu-toggle" aria-haspopup="true" aria-expanded="false" data-astro-cid-sdvpe5d5> <span class="visually-hidden" data-astro-cid-sdvpe5d5>Toggle platform submenu</span> <svg width="1em" height="1em" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="chevron"> <symbol id="ai:local:chevron" viewBox="0 0 512 512"><path fill="currentcolor" d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"/></symbol><use href="#ai:local:chevron"></use> </svg> </button> <div id="platform-submenu" class="submenu" data-theme="light" data-astro-cid-sdvpe5d5> <div class="section l-stack" data-astro-cid-sdvpe5d5> <h3 data-astro-cid-sdvpe5d5>The Netlify Platform</h3> <p><strong>Instantly build and deploy</strong> your sites to our global network from Git. Custom domains, https, deploy previews, rollbacks and much more.</p> <ul class="l-stack" role="list" data-astro-cid-sdvpe5d5> <li data-astro-cid-sdvpe5d5> <a id="nav-explore-the-platform" href="/platform/" data-astro-cid-sdvpe5d5> Explore the platform </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-netlify-connect" href="/platform/connect/" data-astro-cid-sdvpe5d5> Netlify Connect </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-netlify-core" href="/platform/core/" data-astro-cid-sdvpe5d5> Netlify Core </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-netlify-create" href="/platform/create/" data-astro-cid-sdvpe5d5> Netlify Create </a> </li> </ul> </div><div class="section l-stack" data-astro-cid-sdvpe5d5> <h3 data-astro-cid-sdvpe5d5>Key Features</h3> <ul class="l-stack" role="list" data-astro-cid-sdvpe5d5> <li data-astro-cid-sdvpe5d5> <a id="nav-platform-primitives" href="/platform/primitives/" data-astro-cid-sdvpe5d5> Platform Primitives </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-enterprise-team-management" href="/platform/core/enterprise-team-management/" data-astro-cid-sdvpe5d5> Enterprise Team Management </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-sdk" href="/platform/software-development-kit/" data-astro-cid-sdvpe5d5> SDK </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-security" href="/security/" data-astro-cid-sdvpe5d5> Security </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-edge-functions" href="/platform/core/edge/#edge-functions/" data-astro-cid-sdvpe5d5> Edge Functions </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-analytics" href="/platform/core/analytics/" data-astro-cid-sdvpe5d5> Analytics </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-deploy-previews" href="/platform/core/deploy-previews/" data-astro-cid-sdvpe5d5> Deploy Previews </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-split-testing" href="https://docs.netlify.com/site-deploys/split-testing/" data-astro-cid-sdvpe5d5> Split Testing </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-forms" href="/platform/core/forms/" data-astro-cid-sdvpe5d5> Forms </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-integrations" href="/integrations/" data-astro-cid-sdvpe5d5> Integrations </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-changelog" href="/changelog/" data-astro-cid-sdvpe5d5> Changelog </a> </li> </ul> </div><div class="section l-stack" data-astro-cid-sdvpe5d5> <h3 data-astro-cid-sdvpe5d5>Ecosystem</h3> <ul class="l-stack" role="list" data-astro-cid-sdvpe5d5> <li data-astro-cid-sdvpe5d5> <a id="nav-tech-partners" href="/partners/technology/" data-astro-cid-sdvpe5d5> Tech Partners </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-agency-partners" href="/partners/agency/" data-astro-cid-sdvpe5d5> Agency Partners </a> </li> </ul> </div> </div> </submenu-utils> <script type="module" src="/_astro/SiteNavigationSubmenu.astro_astro_type_script_index_0_lang.C3dcV_OH.js"></script> </li><li class="has-submenu" data-astro-cid-2ioqeek6> <span id="main-nav-solutions" data-astro-cid-2ioqeek6>Solutions</span> <submenu-utils data-astro-cid-sdvpe5d5="true"> <button class="submenu-toggle" aria-haspopup="true" aria-expanded="false" data-astro-cid-sdvpe5d5> <span class="visually-hidden" data-astro-cid-sdvpe5d5>Toggle solutions submenu</span> <svg width="1em" height="1em" viewBox="0 0 512 512" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="chevron"> <use href="#ai:local:chevron"></use> </svg> </button> <div id="solutions-submenu" class="submenu" data-theme="light" data-astro-cid-sdvpe5d5> <div class="section l-stack" data-astro-cid-sdvpe5d5> <h3 data-astro-cid-sdvpe5d5>Why Netlify?</h3> <ul class="l-stack" role="list" data-astro-cid-sdvpe5d5> <li data-astro-cid-sdvpe5d5> <a id="nav-resources-guides" href="/resources/" data-astro-cid-sdvpe5d5> Resources &amp; Guides </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-customers" href="/customers/" data-astro-cid-sdvpe5d5> Customers </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-case-studies" href="/resources/case-studies/" data-astro-cid-sdvpe5d5> Case Studies </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-roi-calculator" href="/roi-calculator/" data-astro-cid-sdvpe5d5> ROI Calculator </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-security-at-netlify" href="/security/" data-astro-cid-sdvpe5d5> Security at Netlify </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-whitepaper" href="/whitepaper/" data-astro-cid-sdvpe5d5> Whitepaper </a> </li> </ul> </div><div class="section l-stack" data-astro-cid-sdvpe5d5> <h3 data-astro-cid-sdvpe5d5>Use Cases</h3> <ul class="l-stack" role="list" data-astro-cid-sdvpe5d5> <li data-astro-cid-sdvpe5d5> <a id="nav-company-websites" href="/for/company-websites/" data-astro-cid-sdvpe5d5> Company Websites </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-e-commerce" href="/for/ecommerce/" data-astro-cid-sdvpe5d5> E-commerce </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-web-apps" href="/for/web-applications/" data-astro-cid-sdvpe5d5> Web Apps </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-large-sites" href="/blog/2020/06/16/building-large-sites-on-netlify/" data-astro-cid-sdvpe5d5> Large Sites </a> </li> </ul> </div><div class="section l-stack" data-astro-cid-sdvpe5d5> <h3 data-astro-cid-sdvpe5d5>Don&#39;t see your solution?</h3> <p><strong>Don’t see your solution? </strong>We can help. <a href="https://www.netlify.com/enterprise/contact/?attr=homepage&ref=&id=nav-solutions-chat-with-netlify-expert">Chat with a Netlify expert</a></p> </div> </div> </submenu-utils> </li><li class data-astro-cid-2ioqeek6> <a id="main-nav-integrations" href="/integrations/" data-astro-cid-2ioqeek6> Integrations </a> </li><li class="has-submenu" data-astro-cid-2ioqeek6> <span id="main-nav-start-building" data-astro-cid-2ioqeek6>Start Building</span> <submenu-utils data-astro-cid-sdvpe5d5="true"> <button class="submenu-toggle" aria-haspopup="true" aria-expanded="false" data-astro-cid-sdvpe5d5> <span class="visually-hidden" data-astro-cid-sdvpe5d5>Toggle start building submenu</span> <svg width="1em" height="1em" viewBox="0 0 512 512" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="chevron"> <use href="#ai:local:chevron"></use> </svg> </button> <div id="start-building-submenu" class="submenu" data-theme="light" data-astro-cid-sdvpe5d5> <div class="section l-stack" data-astro-cid-sdvpe5d5> <h3 data-astro-cid-sdvpe5d5>Where to start</h3> <ul class="l-stack" role="list" data-astro-cid-sdvpe5d5> <li data-astro-cid-sdvpe5d5> <a id="nav-docs" href="https://docs.netlify.com/" data-astro-cid-sdvpe5d5> Docs </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-developer-hub" href="https://developers.netlify.com/" data-astro-cid-sdvpe5d5> Developer Hub </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-templates" href="/integrations/templates/" data-astro-cid-sdvpe5d5> Templates </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-composable-commerce-101" href="/composable-commerce/" data-astro-cid-sdvpe5d5> Composable Commerce 101 </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-work-with-a-partner-agency" href="/agency-directory/" data-astro-cid-sdvpe5d5> Work with a Partner Agency </a> </li> </ul> </div><div class="section l-stack" data-astro-cid-sdvpe5d5> <h3 data-astro-cid-sdvpe5d5>Project kickstarts</h3> <ul class="l-stack" role="list" data-astro-cid-sdvpe5d5> <li data-astro-cid-sdvpe5d5> <svg width="0.8em" height="1em" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="astro"> <symbol id="ai:local:astro" viewBox="0 0 85 107"><path fill="currentColor" d="M27.59 91.137c-4.834-4.42-6.246-13.704-4.232-20.43 3.492 4.241 8.33 5.584 13.342 6.343 7.737 1.17 15.336.732 22.523-2.804.822-.405 1.582-.943 2.48-1.489.675 1.957.85 3.932.615 5.943-.573 4.896-3.01 8.678-6.885 11.545-1.55 1.147-3.19 2.172-4.79 3.253-4.917 3.323-6.247 7.22-4.4 12.888.044.139.084.277.183.614-2.51-1.124-4.344-2.76-5.742-4.911-1.475-2.27-2.177-4.78-2.214-7.498-.019-1.322-.019-2.656-.197-3.96-.434-3.178-1.926-4.601-4.737-4.683-2.884-.084-5.166 1.699-5.771 4.507-.046.216-.113.429-.18.68zM0 69.587s14.314-6.973 28.668-6.973L39.49 29.12c.405-1.62 1.588-2.72 2.924-2.72s2.518 1.1 2.924 2.72L56.16 62.614c17 0 28.668 6.973 28.668 6.973S60.514 3.352 60.467 3.219C59.769 1.261 58.591 0 57.003 0H27.827c-1.588 0-2.718 1.261-3.464 3.22C24.311 3.35 0 69.586 0 69.586"/></symbol><use href="#ai:local:astro"></use> </svg> <a id="nav-astro" href="https://docs.netlify.com/frameworks/astro/" data-astro-cid-sdvpe5d5> Astro </a> </li><li data-astro-cid-sdvpe5d5> <svg width="1em" height="1em" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="nextjs"> <symbol id="ai:local:nextjs" viewBox="0 0 24 24"><path fill="currentcolor" d="M11.573 0a5 5 0 0 0-.359.007L10.85.04c-3.407.307-6.6 2.146-8.622 4.972a11.9 11.9 0 0 0-2.119 5.243c-.096.659-.108.854-.108 1.747s.012 1.089.108 1.748c.652 4.506 3.86 8.292 8.209 9.695.779.25 1.6.422 2.534.525.363.04 1.935.04 2.299 0 1.611-.178 2.977-.577 4.323-1.264.207-.106.247-.134.219-.158-.02-.013-.9-1.193-1.955-2.62l-1.919-2.592-2.404-3.558a339 339 0 0 0-2.422-3.556c-.009-.002-.018 1.579-.023 3.51-.007 3.38-.01 3.515-.052 3.595a.43.43 0 0 1-.206.214c-.075.037-.14.044-.495.044H7.81l-.108-.068a.44.44 0 0 1-.157-.171l-.05-.106.006-4.703.007-4.705.072-.092a.7.7 0 0 1 .174-.143c.096-.047.134-.051.54-.051.478 0 .558.018.682.154a467 467 0 0 1 2.895 4.361l4.735 7.17 1.9 2.879.096-.063a12.3 12.3 0 0 0 2.466-2.163 11.94 11.94 0 0 0 2.824-6.134c.096-.66.108-.854.108-1.748 0-.893-.012-1.088-.108-1.747-.652-4.506-3.859-8.292-8.208-9.695a12.6 12.6 0 0 0-2.499-.523A33 33 0 0 0 11.573 0m4.068 7.217c.347 0 .408.005.486.047a.47.47 0 0 1 .237.277c.018.06.023 1.365.018 4.304l-.006 4.218-.744-1.14-.746-1.14v-3.066c0-1.982.01-3.097.023-3.15a.48.48 0 0 1 .233-.296c.096-.05.13-.054.5-.054z"/></symbol><use href="#ai:local:nextjs"></use> </svg> <a id="nav-next-js" href="/with/nextjs/" data-astro-cid-sdvpe5d5> Next.js </a> </li><li data-astro-cid-sdvpe5d5> <svg width="1em" height="1em" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="nuxtjs"> <symbol id="ai:local:nuxtjs" viewBox="0 0 24 24"><path fill="currentcolor" d="M13.464 19.83h8.922c.283 0 .562-.073.807-.21a1.6 1.6 0 0 0 .591-.574 1.53 1.53 0 0 0 .216-.783 1.53 1.53 0 0 0-.217-.782L17.792 7.414a1.6 1.6 0 0 0-.591-.573 1.65 1.65 0 0 0-.807-.21c-.283 0-.562.073-.807.21a1.6 1.6 0 0 0-.59.573L13.463 9.99 10.47 4.953a1.6 1.6 0 0 0-.591-.573 1.65 1.65 0 0 0-.807-.21c-.284 0-.562.073-.807.21a1.6 1.6 0 0 0-.591.573L.216 17.481a1.53 1.53 0 0 0-.217.782c0 .275.074.545.216.783a1.6 1.6 0 0 0 .59.574c.246.137.525.21.808.21h5.6c2.22 0 3.856-.946 4.982-2.79l2.733-4.593 1.464-2.457 4.395 7.382h-5.859Zm-6.341-2.46-3.908-.002 5.858-9.842 2.923 4.921-1.957 3.29c-.748 1.196-1.597 1.632-2.916 1.632"/></symbol><use href="#ai:local:nuxtjs"></use> </svg> <a id="nav-nuxt" href="/with/nuxt/" data-astro-cid-sdvpe5d5> Nuxt </a> </li><li data-astro-cid-sdvpe5d5> <svg width="1em" height="1em" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="gatsby"> <symbol id="ai:local:gatsby" viewBox="0 0 24 24"><path fill="currentcolor" d="M12 0C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.6 0 12 0m0 2.571c3.171 0 5.915 1.543 7.629 3.858l-1.286 1.115C16.886 5.572 14.571 4.286 12 4.286c-3.343 0-6.171 2.143-7.286 5.143l9.857 9.857c2.486-.857 4.373-3 4.973-5.572h-4.115V12h6c0 4.457-3.172 8.228-7.372 9.17L2.83 9.944C3.772 5.743 7.543 2.57 12 2.57zm-9.429 9.6 9.344 9.258c-2.4-.086-4.801-.943-6.601-2.743s-2.743-4.201-2.743-6.515"/></symbol><use href="#ai:local:gatsby"></use> </svg> <a id="nav-gatsby" href="/with/gatsby/" data-astro-cid-sdvpe5d5> Gatsby </a> </li><li data-astro-cid-sdvpe5d5> <svg width="1em" height="1em" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="wordpress"> <symbol id="ai:local:wordpress" viewBox="0 0 24 24"><path fill="currentcolor" d="M21.469 6.825c.84 1.537 1.318 3.3 1.318 5.175 0 3.979-2.156 7.456-5.363 9.325l3.295-9.527c.615-1.54.82-2.771.82-3.864 0-.405-.026-.78-.07-1.11m-7.981.105c.647-.03 1.232-.105 1.232-.105.582-.075.514-.93-.067-.899 0 0-1.755.135-2.88.135-1.064 0-2.85-.15-2.85-.15-.585-.03-.661.855-.075.885 0 0 .54.061 1.125.09l1.68 4.605-2.37 7.08L5.354 6.9c.649-.03 1.234-.1 1.234-.1.585-.075.516-.93-.065-.896 0 0-1.746.138-2.874.138-.2 0-.438-.008-.69-.015C4.911 3.15 8.235 1.215 12 1.215c2.809 0 5.365 1.072 7.286 2.833-.046-.003-.091-.009-.141-.009-1.06 0-1.812.923-1.812 1.914 0 .89.513 1.643 1.06 2.531.411.72.89 1.643.89 2.977 0 .915-.354 1.994-.821 3.479l-1.075 3.585-3.9-11.61zM12 22.784c-1.059 0-2.081-.153-3.048-.437l3.237-9.406 3.315 9.087q.036.078.078.149c-1.12.393-2.325.609-3.582.609M1.211 12c0-1.564.336-3.05.935-4.39L7.29 21.709A10.79 10.79 0 0 1 1.211 12M12 0C5.385 0 0 5.385 0 12s5.385 12 12 12 12-5.385 12-12S18.615 0 12 0"/></symbol><use href="#ai:local:wordpress"></use> </svg> <a id="nav-wordpress" href="/with/wordpress/" data-astro-cid-sdvpe5d5> Wordpress </a> </li><li data-astro-cid-sdvpe5d5> <svg width="1em" height="1em" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="react"> <symbol id="ai:local:react" viewBox="0 0 24 24"><path fill="currentcolor" d="M14.23 12.004a2.236 2.236 0 0 1-2.235 2.236 2.236 2.236 0 0 1-2.236-2.236 2.236 2.236 0 0 1 2.235-2.236 2.236 2.236 0 0 1 2.236 2.236m2.648-10.69c-1.346 0-3.107.96-4.888 2.622-1.78-1.653-3.542-2.602-4.887-2.602-.41 0-.783.093-1.106.278-1.375.793-1.683 3.264-.973 6.365C1.98 8.917 0 10.42 0 12.004c0 1.59 1.99 3.097 5.043 4.03-.704 3.113-.39 5.588.988 6.38.32.187.69.275 1.102.275 1.345 0 3.107-.96 4.888-2.624 1.78 1.654 3.542 2.603 4.887 2.603.41 0 .783-.09 1.106-.275 1.374-.792 1.683-3.263.973-6.365C22.02 15.096 24 13.59 24 12.004c0-1.59-1.99-3.097-5.043-4.032.704-3.11.39-5.587-.988-6.38a2.17 2.17 0 0 0-1.092-.278zm-.005 1.09v.006c.225 0 .406.044.558.127.666.382.955 1.835.73 3.704-.054.46-.142.945-.25 1.44a23.5 23.5 0 0 0-3.107-.534A24 24 0 0 0 12.769 4.7c1.592-1.48 3.087-2.292 4.105-2.295zm-9.77.02c1.012 0 2.514.808 4.11 2.28-.686.72-1.37 1.537-2.02 2.442a23 23 0 0 0-3.113.538 15 15 0 0 1-.254-1.42c-.23-1.868.054-3.32.714-3.707.19-.09.4-.127.563-.132zm4.882 3.05q.684.704 1.36 1.564c-.44-.02-.89-.034-1.345-.034q-.691-.001-1.36.034c.44-.572.895-1.096 1.345-1.565zM12 8.1c.74 0 1.477.034 2.202.093q.61.874 1.183 1.86.557.961 1.018 1.946c-.308.655-.646 1.31-1.013 1.95-.38.66-.773 1.288-1.18 1.87a25.6 25.6 0 0 1-4.412.005 27 27 0 0 1-1.183-1.86q-.557-.961-1.018-1.946a25 25 0 0 1 1.013-1.954c.38-.66.773-1.286 1.18-1.868A25 25 0 0 1 12 8.098zm-3.635.254c-.24.377-.48.763-.704 1.16q-.336.585-.635 1.174c-.265-.656-.49-1.31-.676-1.947.64-.15 1.315-.283 2.015-.386zm7.26 0q1.044.153 2.006.387c-.18.632-.405 1.282-.66 1.933a26 26 0 0 0-1.345-2.32zm3.063.675q.727.226 1.375.498c1.732.74 2.852 1.708 2.852 2.476-.005.768-1.125 1.74-2.857 2.475-.42.18-.88.342-1.355.493a24 24 0 0 0-1.1-2.98c.45-1.017.81-2.01 1.085-2.964zm-13.395.004c.278.96.645 1.957 1.1 2.98a23 23 0 0 0-1.086 2.964c-.484-.15-.944-.318-1.37-.5-1.732-.737-2.852-1.706-2.852-2.474s1.12-1.742 2.852-2.476c.42-.18.88-.342 1.356-.494m11.678 4.28c.265.657.49 1.312.676 1.948-.64.157-1.316.29-2.016.39a26 26 0 0 0 1.341-2.338zm-9.945.02c.2.392.41.783.64 1.175q.345.586.705 1.143a22 22 0 0 1-2.006-.386c.18-.63.406-1.282.66-1.933zM17.92 16.32c.112.493.2.968.254 1.423.23 1.868-.054 3.32-.714 3.708-.147.09-.338.128-.563.128-1.012 0-2.514-.807-4.11-2.28.686-.72 1.37-1.536 2.02-2.44 1.107-.118 2.154-.3 3.113-.54zm-11.83.01c.96.234 2.006.415 3.107.532.66.905 1.345 1.727 2.035 2.446-1.595 1.483-3.092 2.295-4.11 2.295a1.2 1.2 0 0 1-.553-.132c-.666-.38-.955-1.834-.73-3.703.054-.46.142-.944.25-1.438zm4.56.64q.661.032 1.345.034.691.001 1.36-.034c-.44.572-.895 1.095-1.345 1.565q-.684-.706-1.36-1.565"/></symbol><use href="#ai:local:react"></use> </svg> <a id="nav-react" href="/with/react/" data-astro-cid-sdvpe5d5> React </a> </li><li data-astro-cid-sdvpe5d5> <svg width="1em" height="1em" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="vue"> <symbol id="ai:local:vue" viewBox="0 0 24 24"><path fill="currentcolor" d="M24 1.61h-9.94L12 5.16 9.94 1.61H0l12 20.78ZM12 14.08 5.16 2.23h4.43L12 6.41l2.41-4.18h4.43Z"/></symbol><use href="#ai:local:vue"></use> </svg> <a id="nav-vue" href="/with/vue/" data-astro-cid-sdvpe5d5> Vue </a> </li><li data-astro-cid-sdvpe5d5> <svg width="1em" height="1em" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="svelte"> <symbol id="ai:local:svelte" viewBox="0 0 24 24"><path fill="currentcolor" d="M10.354 21.125a4.44 4.44 0 0 1-4.765-1.767 4.1 4.1 0 0 1-.703-3.107 4 4 0 0 1 .134-.522l.105-.321.287.21a7.2 7.2 0 0 0 2.186 1.092l.208.063-.02.208a1.25 1.25 0 0 0 .226.83 1.34 1.34 0 0 0 1.435.533 1.2 1.2 0 0 0 .343-.15l5.59-3.562a1.16 1.16 0 0 0 .524-.778 1.24 1.24 0 0 0-.211-.937 1.34 1.34 0 0 0-1.435-.533 1.2 1.2 0 0 0-.343.15l-2.133 1.36a4 4 0 0 1-1.135.499 4.44 4.44 0 0 1-4.765-1.766 4.1 4.1 0 0 1-.702-3.108 3.86 3.86 0 0 1 1.742-2.582l5.589-3.563a4 4 0 0 1 1.135-.499 4.44 4.44 0 0 1 4.765 1.767 4.1 4.1 0 0 1 .703 3.107 4 4 0 0 1-.134.522l-.105.321-.286-.21a7.2 7.2 0 0 0-2.187-1.093l-.208-.063.02-.207a1.25 1.25 0 0 0-.226-.831 1.34 1.34 0 0 0-1.435-.532 1.2 1.2 0 0 0-.343.15L8.62 9.368a1.16 1.16 0 0 0-.524.778 1.24 1.24 0 0 0 .211.937 1.34 1.34 0 0 0 1.435.533 1.2 1.2 0 0 0 .344-.151l2.132-1.36a4 4 0 0 1 1.135-.498 4.44 4.44 0 0 1 4.765 1.766 4.1 4.1 0 0 1 .702 3.108 3.86 3.86 0 0 1-1.742 2.583l-5.589 3.562a4 4 0 0 1-1.135.499m10.358-17.95C18.484-.015 14.082-.96 10.9 1.068L5.31 4.63a6.4 6.4 0 0 0-2.896 4.295 6.75 6.75 0 0 0 .666 4.336 6.4 6.4 0 0 0-.96 2.396 6.83 6.83 0 0 0 1.168 5.167c2.229 3.19 6.63 4.135 9.812 2.108l5.59-3.562a6.4 6.4 0 0 0 2.896-4.295 6.76 6.76 0 0 0-.665-4.336 6.4 6.4 0 0 0 .958-2.396 6.83 6.83 0 0 0-1.167-5.168"/></symbol><use href="#ai:local:svelte"></use> </svg> <a id="nav-svelte" href="/with/svelte/" data-astro-cid-sdvpe5d5> Svelte </a> </li><li data-astro-cid-sdvpe5d5> <svg width="1em" height="1em" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="sitecore"> <symbol id="ai:local:sitecore" viewBox="0 0 50 50"><path fill="currentColor" d="M25 2C12.317 2 2 12.318 2 25s10.317 23 23 23 23-10.318 23-23S37.683 2 25 2m0 6c9.374 0 17 7.626 17 17s-7.626 17-17 17S8 34.374 8 25 15.626 8 25 8m9.244 5.21-6.531 4.546.426.73c.007.015.821 1.435.861 3.514.033 1.654 0 9-11 9-3 0-7-1-7-1s3 3 11 3c10.842 0 10.999-11.512 11-12.002l.004-.996L39.133 20a15.1 15.1 0 0 0-4.889-6.79m.694 8.79C34.629 25.204 32.804 35 22 35c-3.375 0-6.494-.665-8.883-1.379C14.864 34.993 18.375 37 24 37c7.335 0 11.096-6.431 11.133-6.496l.53-.93 2.849 1.899A14.9 14.9 0 0 0 40 25a15 15 0 0 0-.322-3zm1.343 10.389C34.845 34.386 30.792 39 24 39c-2.383 0-4.43-.335-6.166-.836A14.85 14.85 0 0 0 25 40c5.236 0 9.847-2.701 12.531-6.777z"/></symbol><use href="#ai:local:sitecore"></use> </svg> <a id="nav-sitecore" href="/with/sitecore/" data-astro-cid-sdvpe5d5> Sitecore </a> </li><li data-astro-cid-sdvpe5d5> <svg width="1em" height="1em" aria-hidden="true" data-astro-cid-sdvpe5d5="true" data-icon="jamstack"> <symbol id="ai:local:jamstack" viewBox="0 0 24 24"><path fill="currentcolor" d="M12 0C5.365 0 0 5.364 0 12s5.365 12 12 12 12-5.364 12-12V0zm.496 3.318h8.17v8.17h-8.17zm-9.168 9.178h8.16v8.149c-4.382-.257-7.904-3.767-8.16-8.149m9.168.016h8.152a8.684 8.684 0 0 1-8.152 8.148z"/></symbol><use href="#ai:local:jamstack"></use> </svg> <a id="nav-jamstack" href="/jamstack/" data-astro-cid-sdvpe5d5> Jamstack </a> </li><li data-astro-cid-sdvpe5d5> <a id="nav-more" href="/integrations/frameworks/" data-astro-cid-sdvpe5d5> +More </a> </li> </ul> </div> </div> </submenu-utils> </li><li class data-astro-cid-2ioqeek6> <a id="main-nav-docs" href="https://docs.netlify.com/" data-astro-cid-2ioqeek6> Docs </a> </li><li class data-astro-cid-2ioqeek6> <a id="main-nav-pricing" href="/pricing/" data-astro-cid-2ioqeek6> Pricing </a> </li><li class="nav-search" data-astro-cid-2ioqeek6> <button id="cta-main-nav-search" class="site-search-toggle" data-site-search-open class="search-toggle" data-astro-cid-3dk7mn5f> <span class="visually-hidden" data-astro-cid-3dk7mn5f>Search</span> <svg width="16" height="20" viewBox="0 0 22 24" aria-hidden="true" data-astro-cid-3dk7mn5f="true" data-icon="search"> <use href="#ai:local:search"></use> </svg> </button> </li><li class data-astro-cid-2ioqeek6> <a id="main-nav-contact" href="/contact/" data-astro-cid-2ioqeek6> Contact </a> </li><li class data-astro-cid-2ioqeek6> <a id="main-nav-login" href="https://app.netlify.com/login" data-astro-cid-2ioqeek6> Log in </a> </li> </ul> <a id="signup" href="https://app.netlify.com/signup" class="button" data-type="primary" data-astro-cid-2ioqeek6> Sign up</a> </nav> <div class="site-subnav-wrapper" data-astro-cid-ocgy7ziz> <nav class="site-subnav" data-astro-cid-ocgy7ziz> <ul role="list" class="l-cluster" data-astro-cid-ocgy7ziz> <li data-astro-cid-ocgy7ziz> <h2 class="site-subnav-heading" data-astro-cid-ocgy7ziz> <a class="link" href="/changelog/" id="changelog-subNav-overview" aria-current="page" data-astro-cid-ocgy7ziz> Changelog </a> </h2> </li> <li data-astro-cid-ocgy7ziz> <a class="link text--1 font-semibold" href="/changelog/tag/ax/" id="changelog-subNav-ax" data-astro-cid-ocgy7ziz> AX </a> </li><li data-astro-cid-ocgy7ziz> <a class="link text--1 font-semibold" href="/changelog/tag/sdk/" id="changelog-subNav-sdk" data-astro-cid-ocgy7ziz> SDK </a> </li><li data-astro-cid-ocgy7ziz> <a class="link text--1 font-semibold" href="/changelog/tag/cli/" id="changelog-subNav-cli" data-astro-cid-ocgy7ziz> CLI </a> </li> </ul> </nav> </div> <site-search class="className" data-astro-cid-pkfvzmd6="true"> <dialog id="site-search-dialog" class="l-center" data-theme="light" data-astro-cid-pkfvzmd6> <button class="close" type="reset" onclick="this.closest('dialog').close('cancel')" data-astro-cid-pkfvzmd6> <span class="visually-hidden" data-astro-cid-pkfvzmd6>Close search modal</span> <svg width="0.75em" height="1em" aria-hidden="true" data-astro-cid-pkfvzmd6="true" data-icon="close"> <symbol id="ai:local:close" viewBox="0 0 384 512"><path fill="currentcolor" d="M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3l105.4 105.3c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256z"/></symbol><use href="#ai:local:close"></use> </svg> </button> <div class="l-center l-stack" data-astro-cid-pkfvzmd6> <div class="search-input" data-astro-cid-pkfvzmd6> <label class="visually-hidden" for="site-search" data-astro-cid-pkfvzmd6>Search Netlify:</label> <input id="site-search" type="text" placeholder="Start typing to search" autofocus data-astro-cid-pkfvzmd6> </div> <article class="results" data-astro-cid-pkfvzmd6></article> </div> </dialog> </site-search> <script src="https://cdn.jsdelivr.net/npm/algoliasearch@4.17.0/dist/algoliasearch-lite.umd.js" integrity="sha256-Lf9DrpGmcRip6OQzbcL6lnvNmoZNSKpyQX5pMlwatWE=" crossorigin="anonymous" defer></script> <script type="module" src="/_astro/SiteSearch.astro_astro_type_script_index_0_lang.HzBFYGfW.js"></script> </section> <script> const header = document.querySelector('.site-header'); document.documentElement.style.setProperty('--site-header-height', `${header.getBoundingClientRect().height}px`); const resizeObserver = new ResizeObserver(([el]) => { document.documentElement.style.setProperty('--site-header-height', `${el.contentRect.height}px`); }); header && resizeObserver.observe(header); </script> </header> <script type="module">const t=document.querySelector("[data-site-nav-toggle]");t?.addEventListener("click",function(){let e=this.getAttribute("aria-expanded")==="true"||!1;document.documentElement.toggleAttribute("data-site-nav-open",!e),this.setAttribute("aria-expanded",String(!e))});</script> <main id="main"> <div class="l-stack l-stack-xl" data-astro-cid-orlsyalv> <section class="hero" data-astro-cid-orlsyalv> <div class="l-center" style="--center-max: 1200px" data-astro-cid-orlsyalv> <h1 class="visually-hidden" data-astro-cid-orlsyalv>Changelog</h1> <div class="action-bar | l-cluster" data-astro-cid-orlsyalv> <select class="tag-input" data-astro-cid-t7zqjfio> <option value="all" data-astro-cid-t7zqjfio>All Tags</option> <option value="ai" data-astro-cid-t7zqjfio> AI </option><option value="ax" data-astro-cid-t7zqjfio> AX </option><option value="build" data-astro-cid-t7zqjfio> Build </option><option value="cli" data-astro-cid-t7zqjfio> CLI </option><option value="extensions" data-astro-cid-t7zqjfio> Extensions </option><option value="forms" data-astro-cid-t7zqjfio> Forms </option><option value="functions" data-astro-cid-t7zqjfio> Functions </option><option value="sdk" data-astro-cid-t7zqjfio> SDK </option><option value="updates" data-astro-cid-t7zqjfio> Updates </option><option value="workflow" data-astro-cid-t7zqjfio> Workflow </option> </select> <script type="module">const n=document.querySelector(".tag-input");n?.addEventListener("change",t=>{const e=t.target?.value;window.location=e==="all"?"/changelog/":`/changelog/tag/${e}/`});</script> <a data-type="default" data-inline-icon="false" data-icon-only="false" href="https://www.netlify.com/changelog/feed.xml" data-astro-cid-orlsyalv="true" data-astro-cid-tcbm7f7q="true" class="button font-medium"> Subscribe to feed <svg width="0.88em" height="1em" data-astro-cid-orlsyalv="true" data-icon="rss"> <symbol id="ai:local:rss" viewBox="0 0 448 512"><path fill="currentColor" d="M0 64c0-17.7 14.3-32 32-32 229.8 0 416 186.2 416 416 0 17.7-14.3 32-32 32s-32-14.3-32-32C384 253.6 226.4 96 32 96 14.3 96 0 81.7 0 64m0 352a64 64 0 1 1 128 0 64 64 0 1 1-128 0m32-256c159.1 0 288 128.9 288 288 0 17.7-14.3 32-32 32s-32-14.3-32-32c0-123.7-100.3-224-224-224-17.7 0-32-14.3-32-32s14.3-32 32-32"/></symbol><use href="#ai:local:rss"></use> </svg> </a> </div> </div> </section> <div class="l-center" style="--center-max: 1200px" data-astro-cid-orlsyalv> <section class="changelog-content" data-astro-cid-orlsyalv> <ul class="changelog-items | l-grid" data-astro-cid-orlsyalv> <li class="changelog-entry" data-astro-cid-kubicw44> <div class="changelog-entry-aside l-stack l-stack-medium" data-astro-cid-kubicw44> <a class="changelog-entry-card-link" href="/changelog/set-up-deploys-for-all-branches-with-a-prefix/" data-astro-cid-kubicw44> <h2 class="changelog-entry-title | tracking-tight text-2 font-heading" data-astro-cid-kubicw44> Set up deploys for all branches with a prefix </h2> </a> <div class="changelog-entry-metadata | font-medium text--1 leading-none" data-astro-cid-kubicw44> <p class="changelog-entry-date" data-astro-cid-kubicw44>February 18, 2025</p> </div> <ul class="tags | l-cluster" role="list" data-astro-cid-gbftaqod> <li data-astro-cid-gbftaqod> <a href="/changelog/tag/build/" data-astro-cid-gbftaqod> <span class="c-badge" data-mode="light" data-type="light" data-color="neutral">build</span> </a> </li><li data-astro-cid-gbftaqod> <a href="/changelog/tag/workflow/" data-astro-cid-gbftaqod> <span class="c-badge" data-mode="light" data-type="light" data-color="neutral">workflow</span> </a> </li> </ul> </div> <div class="l-stack l-stack-medium" data-astro-cid-kubicw44> <div class="prose l-stack changelog-entry-description text-05 l-stack-small" data-type="changelog" data-astro-cid-kubicw44="true" data-astro-cid-cnvtppup style=""> <p><img src="https://cdn.sanity.io/images/o0o2tn5x/marketing/1db6ae1900bb72def6e9413dc6d8a4689a17d990-1209x860.png" alt="Netlify UI settings to deploy all branches with the prefix release"></p> <p>We now support configuring your site to deploy all branches with a specific prefix. Leverage the new functionality by configuring Branch Deploys in Site Configuration > Continuous deployment. Add a wildcard at the end of your prefix to deploy all branches beginning with the given text - for example, enter <code>release/*</code> to automatically deploy <code>release/alpha-1</code>, <code>release/v2</code>, and so on.</p> </div> <div class="changelog-entry-links | l-cluster text--1" data-astro-cid-kubicw44> <a class="changelog-entry-link" href="/changelog/set-up-deploys-for-all-branches-with-a-prefix/" id="cta-permalink-set-up-deploys-for-all-branches-with-a-prefix" data-astro-cid-kubicw44> <svg width="1.25em" height="1em" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="fa6-solid:link"> <symbol id="ai:fa6-solid:link" viewBox="0 0 640 512"><path fill="currentColor" d="M579.8 267.7c56.5-56.5 56.5-148 0-204.5c-50-50-128.8-56.5-186.3-15.4l-1.6 1.1c-14.4 10.3-17.7 30.3-7.4 44.6s30.3 17.7 44.6 7.4l1.6-1.1c32.1-22.9 76-19.3 103.8 8.6c31.5 31.5 31.5 82.5 0 114L422.3 334.8c-31.5 31.5-82.5 31.5-114 0c-27.9-27.9-31.5-71.8-8.6-103.8l1.1-1.6c10.3-14.4 6.9-34.4-7.4-44.6s-34.4-6.9-44.6 7.4l-1.1 1.6C206.5 251.2 213 330 263 380c56.5 56.5 148 56.5 204.5 0zM60.2 244.3c-56.5 56.5-56.5 148 0 204.5c50 50 128.8 56.5 186.3 15.4l1.6-1.1c14.4-10.3 17.7-30.3 7.4-44.6s-30.3-17.7-44.6-7.4l-1.6 1.1c-32.1 22.9-76 19.3-103.8-8.6C74 372 74 321 105.5 289.5l112.2-112.3c31.5-31.5 82.5-31.5 114 0c27.9 27.9 31.5 71.8 8.6 103.9l-1.1 1.6c-10.3 14.4-6.9 34.4 7.4 44.6s34.4 6.9 44.6-7.4l1.1-1.6C433.5 260.8 427 182 377 132c-56.5-56.5-148-56.5-204.5 0z"/></symbol><use href="#ai:fa6-solid:link"></use> </svg> <span class="visually-hidden" data-astro-cid-kubicw44>Permalink to Set up deploys for all branches with a prefix</span> <span aria-hidden="true" data-astro-cid-kubicw44>Permalink</span> </a> </div> </div> </li> <li class="changelog-entry" data-astro-cid-kubicw44> <div class="changelog-entry-aside l-stack l-stack-medium" data-astro-cid-kubicw44> <a class="changelog-entry-card-link" href="/changelog/form-detection-now-autoenabled-for-partner-and-ai-generated-sites/" data-astro-cid-kubicw44> <h2 class="changelog-entry-title | tracking-tight text-2 font-heading" data-astro-cid-kubicw44> Form detection now autoenabled for partner and AI-generated sites </h2> </a> <div class="changelog-entry-metadata | font-medium text--1 leading-none" data-astro-cid-kubicw44> <p class="changelog-entry-date" data-astro-cid-kubicw44>February 14, 2025</p> </div> <ul class="tags | l-cluster" role="list" data-astro-cid-gbftaqod> <li data-astro-cid-gbftaqod> <a href="/changelog/tag/ai/" data-astro-cid-gbftaqod> <span class="c-badge" data-mode="light" data-type="light" data-color="neutral">ai</span> </a> </li><li data-astro-cid-gbftaqod> <a href="/changelog/tag/forms/" data-astro-cid-gbftaqod> <span class="c-badge" data-mode="light" data-type="light" data-color="neutral">forms</span> </a> </li> </ul> </div> <div class="l-stack l-stack-medium" data-astro-cid-kubicw44> <div class="prose l-stack changelog-entry-description text-05 l-stack-small" data-type="changelog" data-astro-cid-kubicw44="true" data-astro-cid-cnvtppup style=""> <p>Previously, users creating sites through partner tools or AI code generation tools like Bolt had to manually enable form detection—often causing confusion and blocking access to submissions. Now, form detection is autoenabled, allowing end users, especially low-code users, to start collecting submissions immediately without extra setup. This update reduces friction for both partner tool users and AI-generated site deployments, ensuring a smoother experience.</p> </div> <div class="changelog-entry-links | l-cluster text--1" data-astro-cid-kubicw44> <a class="changelog-entry-link" href="/changelog/form-detection-now-autoenabled-for-partner-and-ai-generated-sites/" id="cta-permalink-form-detection-now-autoenabled-for-partner-and-ai-generated-sites" data-astro-cid-kubicw44> <svg width="1.25em" height="1em" viewBox="0 0 640 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="fa6-solid:link"> <use href="#ai:fa6-solid:link"></use> </svg> <span class="visually-hidden" data-astro-cid-kubicw44>Permalink to Form detection now autoenabled for partner and AI-generated sites</span> <span aria-hidden="true" data-astro-cid-kubicw44>Permalink</span> </a> </div> </div> </li> <li class="changelog-entry" data-astro-cid-kubicw44> <div class="changelog-entry-aside l-stack l-stack-medium" data-astro-cid-kubicw44> <a class="changelog-entry-card-link" href="https://docs.netlify.com/welcome/build-with-ai/" data-astro-cid-kubicw44> <h2 class="changelog-entry-title | tracking-tight text-2 font-heading" data-astro-cid-kubicw44> Official Netlify context for AI developer tools <svg width="1em" height="1em" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="external-link"> <symbol id="ai:local:external-link" viewBox="0 0 512 512"><path fill="currentColor" d="M304 24c0 13.3 10.7 24 24 24h102.1L207 271c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l223-223L464 184c0 13.3 10.7 24 24 24s24-10.7 24-24V24c0-13.3-10.7-24-24-24H328c-13.3 0-24 10.7-24 24M72 32C32.2 32 0 64.2 0 104v336c0 39.8 32.2 72 72 72h336c39.8 0 72-32.2 72-72V312c0-13.3-10.7-24-24-24s-24 10.7-24 24v128c0 13.3-10.7 24-24 24H72c-13.3 0-24-10.7-24-24V104c0-13.3 10.7-24 24-24h128c13.3 0 24-10.7 24-24s-10.7-24-24-24z"/></symbol><use href="#ai:local:external-link"></use> </svg> </h2> </a> <div class="changelog-entry-metadata | font-medium text--1 leading-none" data-astro-cid-kubicw44> <p class="changelog-entry-date" data-astro-cid-kubicw44>February 13, 2025</p> </div> <ul class="tags | l-cluster" role="list" data-astro-cid-gbftaqod> <li data-astro-cid-gbftaqod> <a href="/changelog/tag/ax/" data-astro-cid-gbftaqod> <span class="c-badge" data-mode="light" data-type="light" data-color="neutral">ax</span> </a> </li><li data-astro-cid-gbftaqod> <a href="/changelog/tag/ai/" data-astro-cid-gbftaqod> <span class="c-badge" data-mode="light" data-type="light" data-color="neutral">ai</span> </a> </li> </ul> </div> <div class="l-stack l-stack-medium" data-astro-cid-kubicw44> <div class="prose l-stack changelog-entry-description text-05 l-stack-small" data-type="changelog" data-astro-cid-kubicw44="true" data-astro-cid-cnvtppup style=""> <p>Netlify now provides official AI context files to improve the accuracy and reliability of AI coding assistants like Cursor, Windsurf, and GitHub Copilot. Developers can easily integrate the context files into their projects, with specific support for Cursor and other AI tools.</p> <p>Additionally, Netlify CLI (v18.1.0+) includes a <code>netlify recipes ai-context</code> command for seamless context management, allowing for easy updates while preserving custom overrides.</p> <p>With this realease, Netlify’s documentation also now supports a /llms.txt resource, enabling AI tools that automatically reference <a href="https://docs.netlify.com/llms.txt">https://docs.netlify.com/llms.txt</a> to have enhanced web context.</p> <p>To learn more about this and how to use it, check out our <a href="https://docs.netlify.com/welcome/build-with-ai/">documentation</a>.</p> </div> <div class="changelog-entry-links | l-cluster text--1" data-astro-cid-kubicw44> <a class="changelog-entry-link" href="/changelog/official-netlify-ai-context/" id="cta-permalink-official-netlify-context-for-ai-developer-tools" data-astro-cid-kubicw44> <svg width="1.25em" height="1em" viewBox="0 0 640 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="fa6-solid:link"> <use href="#ai:fa6-solid:link"></use> </svg> <span class="visually-hidden" data-astro-cid-kubicw44>Permalink to Official Netlify context for AI developer tools</span> <span aria-hidden="true" data-astro-cid-kubicw44>Permalink</span> </a> <a class="changelog-entry-link" href="https://docs.netlify.com/welcome/build-with-ai/" id="cta-learnMore-official-netlify-context-for-ai-developer-tools" data-astro-cid-kubicw44> <svg width="1em" height="1em" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="fa6-solid:arrow-up-right-from-square"> <symbol id="ai:fa6-solid:arrow-up-right-from-square" viewBox="0 0 512 512"><path fill="currentColor" d="M320 0c-17.7 0-32 14.3-32 32s14.3 32 32 32h82.7L201.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L448 109.3V192c0 17.7 14.3 32 32 32s32-14.3 32-32V32c0-17.7-14.3-32-32-32zM80 32C35.8 32 0 67.8 0 112v320c0 44.2 35.8 80 80 80h320c44.2 0 80-35.8 80-80V320c0-17.7-14.3-32-32-32s-32 14.3-32 32v112c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16h112c17.7 0 32-14.3 32-32s-14.3-32-32-32z"/></symbol><use href="#ai:fa6-solid:arrow-up-right-from-square"></use> </svg> <span class="visually-hidden" data-astro-cid-kubicw44>Learn more about Official Netlify context for AI developer tools</span> <ps anaria-hidden="true" data-astro-cid-kubicw44>Learn More</ps> </a> </div> </div> </li> <li class="changelog-entry" data-astro-cid-kubicw44> <div class="changelog-entry-aside l-stack l-stack-medium" data-astro-cid-kubicw44> <a class="changelog-entry-card-link" href="/changelog/deployment-label-update/" data-astro-cid-kubicw44> <h2 class="changelog-entry-title | tracking-tight text-2 font-heading" data-astro-cid-kubicw44> Deployment label update for AI partner integrations </h2> </a> <div class="changelog-entry-metadata | font-medium text--1 leading-none" data-astro-cid-kubicw44> <p class="changelog-entry-date" data-astro-cid-kubicw44>February 10, 2025</p> </div> <ul class="tags | l-cluster" role="list" data-astro-cid-gbftaqod> <li data-astro-cid-gbftaqod> <a href="/changelog/tag/ai/" data-astro-cid-gbftaqod> <span class="c-badge" data-mode="light" data-type="light" data-color="neutral">ai</span> </a> </li><li data-astro-cid-gbftaqod> <a href="/changelog/tag/ax/" data-astro-cid-gbftaqod> <span class="c-badge" data-mode="light" data-type="light" data-color="neutral">ax</span> </a> </li> </ul> </div> <div class="l-stack l-stack-medium" data-astro-cid-kubicw44> <div class="prose l-stack changelog-entry-description text-05 l-stack-small" data-type="changelog" data-astro-cid-kubicw44="true" data-astro-cid-cnvtppup style=""> <p><img src="https://cdn.sanity.io/images/o0o2tn5x/marketing/9c3c30414091f485ff033ae98cd09b920fecb365-1652x657.png" alt=""></p> <p>We’ve made a small but meaningful update to how deployment statuses are displayed in the Netlify UI. Previously, when a site was deployed from a partner site (such as Bolt, for example), the label simply read “Manual deploy.” Now, you’ll see “Deployed from [Partner name]” instead. This change helps provide clearer visibility into where your deployments are coming from, making it easier to track automated workflows and integrations.</p> <p>If you’re working with partners like Bolt, this update ensures your deployment history reflects that connection, reducing ambiguity and improving collaboration. It doesn’t change anything about how deployments work—just a small tweak to make things clearer and more informative. Let us know if you have feedback, and happy deploying!</p> </div> <div class="changelog-entry-links | l-cluster text--1" data-astro-cid-kubicw44> <a class="changelog-entry-link" href="/changelog/deployment-label-update/" id="cta-permalink-deployment-label-update-for-ai-partner-integrations" data-astro-cid-kubicw44> <svg width="1.25em" height="1em" viewBox="0 0 640 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="fa6-solid:link"> <use href="#ai:fa6-solid:link"></use> </svg> <span class="visually-hidden" data-astro-cid-kubicw44>Permalink to Deployment label update for AI partner integrations</span> <span aria-hidden="true" data-astro-cid-kubicw44>Permalink</span> </a> </div> </div> </li> <li class="changelog-entry" data-astro-cid-kubicw44> <div class="changelog-entry-aside l-stack l-stack-medium" data-astro-cid-kubicw44> <a class="changelog-entry-card-link" href="https://www.netlify.com/integrations/prisma/postgres-setup-guide/" data-astro-cid-kubicw44> <h2 class="changelog-entry-title | tracking-tight text-2 font-heading" data-astro-cid-kubicw44> Prisma Postgres extension now available <svg width="1em" height="1em" viewBox="0 0 512 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="external-link"> <use href="#ai:local:external-link"></use> </svg> </h2> </a> <div class="changelog-entry-metadata | font-medium text--1 leading-none" data-astro-cid-kubicw44> <p class="changelog-entry-date" data-astro-cid-kubicw44>February 6, 2025</p> </div> <ul class="tags | l-cluster" role="list" data-astro-cid-gbftaqod> <li data-astro-cid-gbftaqod> <a href="/changelog/tag/extensions/" data-astro-cid-gbftaqod> <span class="c-badge" data-mode="light" data-type="light" data-color="neutral">extensions</span> </a> </li> </ul> </div> <div class="l-stack l-stack-medium" data-astro-cid-kubicw44> <div class="prose l-stack changelog-entry-description text-05 l-stack-small" data-type="changelog" data-astro-cid-kubicw44="true" data-astro-cid-cnvtppup style=""> <p>Prisma Postgres is the first serverless database without cold starts, and a modern, type-safe ORM. Install the extension to create a new instance and instantly add enviornment variables to your Netlify account.</p> </div> <div class="changelog-entry-links | l-cluster text--1" data-astro-cid-kubicw44> <a class="changelog-entry-link" href="/changelog/prisma-postgres-extension/" id="cta-permalink-prisma-postgres-extension-now-available" data-astro-cid-kubicw44> <svg width="1.25em" height="1em" viewBox="0 0 640 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="fa6-solid:link"> <use href="#ai:fa6-solid:link"></use> </svg> <span class="visually-hidden" data-astro-cid-kubicw44>Permalink to Prisma Postgres extension now available</span> <span aria-hidden="true" data-astro-cid-kubicw44>Permalink</span> </a> <a class="changelog-entry-link" href="https://www.netlify.com/integrations/prisma/postgres-setup-guide/" id="cta-learnMore-prisma-postgres-extension-now-available" data-astro-cid-kubicw44> <svg width="1em" height="1em" viewBox="0 0 512 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="fa6-solid:arrow-up-right-from-square"> <use href="#ai:fa6-solid:arrow-up-right-from-square"></use> </svg> <span class="visually-hidden" data-astro-cid-kubicw44>Learn more about Prisma Postgres extension now available</span> <ps anaria-hidden="true" data-astro-cid-kubicw44>Learn More</ps> </a> </div> </div> </li> <li class="changelog-entry" data-astro-cid-kubicw44> <div class="changelog-entry-aside l-stack l-stack-medium" data-astro-cid-kubicw44> <a class="changelog-entry-card-link" href="/changelog/updates-to-the-netlify-changelog/" data-astro-cid-kubicw44> <h2 class="changelog-entry-title | tracking-tight text-2 font-heading" data-astro-cid-kubicw44> Visual updates and improvements to the Netlify Changelog </h2> </a> <div class="changelog-entry-metadata | font-medium text--1 leading-none" data-astro-cid-kubicw44> <p class="changelog-entry-date" data-astro-cid-kubicw44>February 4, 2025</p> </div> </div> <div class="l-stack l-stack-medium" data-astro-cid-kubicw44> <div class="prose l-stack changelog-entry-description text-05 l-stack-small" data-type="changelog" data-astro-cid-kubicw44="true" data-astro-cid-cnvtppup style=""> <p>We have updated the layout and added more features to our Changelog to help you better track updates across the company.</p> <ul> <li><strong>Filter by Tags</strong> – Using the dropdown selector in the top left, you can now filter posts by specific tags.</li> <li><strong>Follow Your Feed</strong> – You can now subscribe to a specific tag’s RSS feed by clicking the “Subscribe to feed” button in the top right.</li> <li><strong>General Visual Updates</strong> – We have improved the overall layout to make scanning each entry easier.</li> <li><strong>Unifying Our Feeds</strong> – Previously, if you wanted to follow updates regarding our SDK or CLI releases, you had to refer to the <a href="https://developers.netlify.com">Developer Hub’s</a> feed. We have now brought those feeds under the Netlify Changelog, giving you a single place to check for updates.</li> </ul> <p>We hope you enjoy these updates and look forward to hearing your feedback on our socials!</p> </div> <div class="changelog-entry-links | l-cluster text--1" data-astro-cid-kubicw44> <a class="changelog-entry-link" href="/changelog/updates-to-the-netlify-changelog/" id="cta-permalink-visual-updates-and-improvements-to-the-netlify-changelog" data-astro-cid-kubicw44> <svg width="1.25em" height="1em" viewBox="0 0 640 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="fa6-solid:link"> <use href="#ai:fa6-solid:link"></use> </svg> <span class="visually-hidden" data-astro-cid-kubicw44>Permalink to Visual updates and improvements to the Netlify Changelog</span> <span aria-hidden="true" data-astro-cid-kubicw44>Permalink</span> </a> </div> </div> </li> <li class="changelog-entry" data-astro-cid-kubicw44> <div class="changelog-entry-aside l-stack l-stack-medium" data-astro-cid-kubicw44> <a class="changelog-entry-card-link" href="https://developers.netlify.com/sdk/extension-ui/add-a-new-surface/#site-deploy" data-astro-cid-kubicw44> <h2 class="changelog-entry-title | tracking-tight text-2 font-heading" data-astro-cid-kubicw44> Extension UI for deploy summaries <svg width="1em" height="1em" viewBox="0 0 512 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="external-link"> <use href="#ai:local:external-link"></use> </svg> </h2> </a> <div class="changelog-entry-metadata | font-medium text--1 leading-none" data-astro-cid-kubicw44> <p class="changelog-entry-date" data-astro-cid-kubicw44>January 30, 2025</p> </div> <ul class="tags | l-cluster" role="list" data-astro-cid-gbftaqod> <li data-astro-cid-gbftaqod> <a href="/changelog/tag/extensions/" data-astro-cid-gbftaqod> <span class="c-badge" data-mode="light" data-type="light" data-color="neutral">extensions</span> </a> </li> </ul> </div> <div class="l-stack l-stack-medium" data-astro-cid-kubicw44> <div class="prose l-stack changelog-entry-description text-05 l-stack-small" data-type="changelog" data-astro-cid-kubicw44="true" data-astro-cid-cnvtppup style=""> <p><img src="https://developers.netlify.com/_astro/extension-ui-surface-site-deploy.DOcEctAH_1DeHBL.webp" alt="Site deploy UI"></p> <p>Extensions now support custom React components in deploy summaries, replacing the previous support for text-only updates. This lets extension developers build dynamic, interactive UI to extend the deployment process.</p> </div> <div class="changelog-entry-links | l-cluster text--1" data-astro-cid-kubicw44> <a class="changelog-entry-link" href="/changelog/extension-ui-deploy-summaries/" id="cta-permalink-extension-ui-for-deploy-summaries" data-astro-cid-kubicw44> <svg width="1.25em" height="1em" viewBox="0 0 640 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="fa6-solid:link"> <use href="#ai:fa6-solid:link"></use> </svg> <span class="visually-hidden" data-astro-cid-kubicw44>Permalink to Extension UI for deploy summaries</span> <span aria-hidden="true" data-astro-cid-kubicw44>Permalink</span> </a> <a class="changelog-entry-link" href="https://developers.netlify.com/sdk/extension-ui/add-a-new-surface/#site-deploy" id="cta-learnMore-extension-ui-for-deploy-summaries" data-astro-cid-kubicw44> <svg width="1em" height="1em" viewBox="0 0 512 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="fa6-solid:arrow-up-right-from-square"> <use href="#ai:fa6-solid:arrow-up-right-from-square"></use> </svg> <span class="visually-hidden" data-astro-cid-kubicw44>Learn more about Extension UI for deploy summaries</span> <ps anaria-hidden="true" data-astro-cid-kubicw44>Learn More</ps> </a> </div> </div> </li> <li class="changelog-entry" data-astro-cid-kubicw44> <div class="changelog-entry-aside l-stack l-stack-medium" data-astro-cid-kubicw44> <a class="changelog-entry-card-link" href="https://answers.netlify.com/t/builds-functions-plugins-default-node-js-version-upgrade-to-22/135981" data-astro-cid-kubicw44> <h2 class="changelog-entry-title | tracking-tight text-2 font-heading" data-astro-cid-kubicw44> Builds + Functions + Plugins: Default Node.js version upgrade to 22 <svg width="1em" height="1em" viewBox="0 0 512 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="external-link"> <use href="#ai:local:external-link"></use> </svg> </h2> </a> <div class="changelog-entry-metadata | font-medium text--1 leading-none" data-astro-cid-kubicw44> <p class="changelog-entry-date" data-astro-cid-kubicw44>January 3, 2025</p> <p data-astro-cid-kubicw44>• Support Forums</p> </div> <ul class="tags | l-cluster" role="list" data-astro-cid-gbftaqod> <li data-astro-cid-gbftaqod> <a href="/changelog/tag/updates/" data-astro-cid-gbftaqod> <span class="c-badge" data-mode="light" data-type="light" data-color="neutral">updates</span> </a> </li> </ul> </div> <div class="l-stack l-stack-medium" data-astro-cid-kubicw44> <div class="prose l-stack changelog-entry-description text-05 l-stack-small" data-type="changelog" data-astro-cid-kubicw44="true" data-astro-cid-cnvtppup style=""> <p>The default system Node.js version will be updated from version v18 → v22 on January 27, 2025. IMPORTANT UPDATE - This release been delayed to February 24, 2025 Why are we doing this? Node.js v22 is the current LTS (Long Term Supported) version, and…</p> </div> <div class="changelog-entry-links | l-cluster text--1" data-astro-cid-kubicw44> <a class="changelog-entry-link" href="https://answers.netlify.com/t/builds-functions-plugins-default-node-js-version-upgrade-to-22/135981" id="cta-learnMore-builds-functions-plugins-default-node-js-version-upgrade-to-22" data-astro-cid-kubicw44> <svg width="1em" height="1em" viewBox="0 0 512 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="fa6-solid:arrow-up-right-from-square"> <use href="#ai:fa6-solid:arrow-up-right-from-square"></use> </svg> <span class="visually-hidden" data-astro-cid-kubicw44>Learn more about Builds + Functions + Plugins: Default Node.js version upgrade to 22</span> <ps anaria-hidden="true" data-astro-cid-kubicw44>Learn More</ps> </a> </div> </div> </li> <li class="changelog-entry" data-astro-cid-kubicw44> <div class="changelog-entry-aside l-stack l-stack-medium" data-astro-cid-kubicw44> <a class="changelog-entry-card-link" href="https://answers.netlify.com/t/new-ubuntu-24-04-noble-numbat-build-image/130497" data-astro-cid-kubicw44> <h2 class="changelog-entry-title | tracking-tight text-2 font-heading" data-astro-cid-kubicw44> New Ubuntu 24.04 Noble Numbat Build Image <svg width="1em" height="1em" viewBox="0 0 512 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="external-link"> <use href="#ai:local:external-link"></use> </svg> </h2> </a> <div class="changelog-entry-metadata | font-medium text--1 leading-none" data-astro-cid-kubicw44> <p class="changelog-entry-date" data-astro-cid-kubicw44>December 3, 2024</p> <p data-astro-cid-kubicw44>• Support Forums</p> </div> <ul class="tags | l-cluster" role="list" data-astro-cid-gbftaqod> <li data-astro-cid-gbftaqod> <a href="/changelog/tag/updates/" data-astro-cid-gbftaqod> <span class="c-badge" data-mode="light" data-type="light" data-color="neutral">updates</span> </a> </li> </ul> </div> <div class="l-stack l-stack-medium" data-astro-cid-kubicw44> <div class="prose l-stack changelog-entry-description text-05 l-stack-small" data-type="changelog" data-astro-cid-kubicw44="true" data-astro-cid-cnvtppup style=""> <p>We’re excited to announce the release of a new build image based on Ubuntu 24.04 Noble Numbat! What’s new in the Ubuntu 24.04 Noble Numbat build image? Upgrades The new build image includes several updates to the default versions of popular tools…</p> </div> <div class="changelog-entry-links | l-cluster text--1" data-astro-cid-kubicw44> <a class="changelog-entry-link" href="https://answers.netlify.com/t/new-ubuntu-24-04-noble-numbat-build-image/130497" id="cta-learnMore-new-ubuntu-24-04-noble-numbat-build-image" data-astro-cid-kubicw44> <svg width="1em" height="1em" viewBox="0 0 512 512" aria-hidden="true" data-astro-cid-kubicw44="true" data-astro-cid-patnjmll="true" class="icon" data-icon="fa6-solid:arrow-up-right-from-square"> <use href="#ai:fa6-solid:arrow-up-right-from-square"></use> </svg> <span class="visually-hidden" data-astro-cid-kubicw44>Learn more about New Ubuntu 24.04 Noble Numbat Build Image</span> <ps anaria-hidden="true" data-astro-cid-kubicw44>Learn More</ps> </a> </div> </div> </li> </ul> </section> <section class="pagination | l-cluster" style="--cluster-justify: space-between" data-astro-cid-orlsyalv> <a class="changelog-pagination-link | font-bold" href="/changelog/page/2" data-step="next" id="cta-changelog-next-page" data-astro-cid-orlsyalv> Next page <svg width="0.88em" height="1em" class="icon" data-astro-cid-orlsyalv="true" data-icon="arrow"> <symbol id="ai:local:arrow" viewBox="0 0 448 512"><path fill="currentcolor" d="M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224H32c-17.7 0-32 14.3-32 32s14.3 32 32 32h306.7L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z"/></symbol><use href="#ai:local:arrow"></use> </svg> </a> </section> </div> </div> <script type="module">const t=document.querySelector("#cta-changelog-hero-subscribeForUpdates");t?.addEventListener("click",e=>{e.preventDefault(),document.querySelector("#hubspot-form-site-footer input[name='email']")?.focus()});</script> </main> <footer class="site-footer | l-breakout l-stack" data-astro-cid-gcn2mc3v> <div class="wrapper | l-cluster" data-astro-cid-7kdedvnl> <a href="/" id="cta-footer-netlifyLogo" data-astro-cid-3ynf2cxt> <span class="visually-hidden" data-astro-cid-3ynf2cxt>Go to Netlify homepage</span> <svg class="logo" width="128" height="113" viewBox="0 0 128 113" fill="none" xmlns="http://www.w3.org/2000/svg" data-astro-cid-3ynf2cxt> <g clip-path="url(#clip0_236_138)" data-astro-cid-3ynf2cxt> <path d="M34.593 94.0509H33.3844L27.3514 88.0179V86.8094L36.5743 77.5866H42.9639L43.8158 78.4385V84.8281L34.593 94.0509Z" fill="#05BDBA" class="spark" data-astro-cid-3ynf2cxt></path> <path d="M27.3514 25.816V24.6074L33.3844 18.5744H34.593L43.8158 27.7972V34.1868L42.9639 35.0388H36.5743L27.3514 25.816Z" class="spark" data-astro-cid-3ynf2cxt></path> <path d="M35.8412 61.4491H0.73307L0 60.716V51.9192L0.73307 51.1861H35.8412L36.5743 51.9192V60.716L35.8412 61.4491Z" class="spark" data-astro-cid-3ynf2cxt></path> <path d="M127.277 61.4491H92.1687L91.4356 60.716V51.9192L92.1687 51.1861H127.277L128.01 51.9192V60.716L127.277 61.4491Z" class="spark" data-astro-cid-3ynf2cxt></path> <path d="M58.9428 27.0642V0.73307L59.6759 0H68.4727L69.2058 0.73307V27.0642L68.4727 27.7972H59.6759L58.9428 27.0642Z" class="spark" data-astro-cid-3ynf2cxt></path> <path d="M58.9428 111.902V85.5711L59.6759 84.838H68.4727L69.2058 85.5711V111.902L68.4727 112.635H59.6759L58.9428 111.902Z" class="spark" data-astro-cid-3ynf2cxt></path> <path d="M80.4594 74.6047H71.6824L70.9493 73.8717V53.3259C70.9493 49.6705 69.5129 46.8372 65.1046 46.7382C62.836 46.6787 60.2405 46.7382 57.4668 46.8471L57.0507 47.2731V73.8618L56.3176 74.5948H47.5406L46.8075 73.8618V38.7636L47.5406 38.0305H67.2939C74.9713 38.0305 81.1925 44.2517 81.1925 51.9291V73.8717L80.4594 74.6047Z" class="text" data-astro-cid-3ynf2cxt></path> </g> <defs data-astro-cid-3ynf2cxt> <clipPath id="clip0_236_138" data-astro-cid-3ynf2cxt> <rect width="128" height="112.635" fill="white" data-astro-cid-3ynf2cxt></rect> </clipPath> </defs> </svg> </a> <ul role="list" class="social | l-cluster" data-astro-cid-7kdedvnl> <li data-astro-cid-7kdedvnl> <a id="cta-footer-git-hub" href="https://github.com/netlify" target="_blank" rel="noopener noreferrer" data-astro-cid-7kdedvnl> <svg width="20" height="20" class="icon" data-astro-cid-7kdedvnl="true" data-icon="github"> <symbol id="ai:local:github" viewBox="0 0 98 96"><path fill="currentcolor" fill-rule="evenodd" d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a47 47 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0" clip-rule="evenodd"/></symbol><use href="#ai:local:github"></use> </svg> <span class="visually-hidden" data-astro-cid-7kdedvnl>GitHub</span> </a> </li><li data-astro-cid-7kdedvnl> <a id="cta-footer-linked-in" href="https://www.linkedin.com/company/netlify" target="_blank" rel="noopener noreferrer" data-astro-cid-7kdedvnl> <svg width="20" height="20" class="icon" data-astro-cid-7kdedvnl="true" data-icon="linkedin"> <symbol id="ai:local:linkedin" viewBox="0 0 448 512"><path fill="currentcolor" d="M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3M135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5m282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9z"/></symbol><use href="#ai:local:linkedin"></use> </svg> <span class="visually-hidden" data-astro-cid-7kdedvnl>LinkedIn</span> </a> </li><li data-astro-cid-7kdedvnl> <a id="cta-footer-bluesky" href="https://bsky.app/profile/netlify.com" target="_blank" rel="noopener noreferrer" data-astro-cid-7kdedvnl> <svg width="20" height="20" class="icon" data-astro-cid-7kdedvnl="true" data-icon="bluesky"> <symbol id="ai:local:bluesky" viewBox="0 0 600 530"><path fill="currentColor" d="M135.72 44.03C202.216 93.951 273.74 195.17 300 249.49c26.262-54.316 97.782-155.54 164.28-205.46C512.26 8.009 590-19.862 590 68.825c0 17.712-10.155 148.79-16.111 170.07-20.703 73.984-96.144 92.854-163.25 81.433 117.3 19.964 147.14 86.092 82.697 152.22-122.39 125.59-175.91-31.511-189.63-71.766-2.514-7.38-3.69-10.832-3.708-7.896-.017-2.936-1.193.516-3.707 7.896-13.714 40.255-67.233 197.36-189.63 71.766-64.444-66.128-34.605-132.26 82.697-152.22-67.108 11.421-142.55-7.45-163.25-81.433C20.15 217.613 9.997 86.535 9.997 68.825c0-88.687 77.742-60.816 125.72-24.795z"/></symbol><use href="#ai:local:bluesky"></use> </svg> <span class="visually-hidden" data-astro-cid-7kdedvnl>Bluesky</span> </a> </li><li data-astro-cid-7kdedvnl> <a id="cta-footer-x-formerly-known-as-twitter" href="https://twitter.com/netlify" target="_blank" rel="noopener noreferrer" data-astro-cid-7kdedvnl> <svg width="20" height="20" class="icon" data-astro-cid-7kdedvnl="true" data-icon="twitter"> <symbol id="ai:local:twitter" viewBox="0 0 512 512"><style>@keyframes appear{0%{opacity:0;transform:scale3d(.3,.3,.3)}20%{opacity:1;transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(.9,.9,.9)}60%{transform:scale3d(1.03,1.03,1.03)}80%{transform:scale3d(.97,.97,.97)}to{transform:scale3d(1.001,1.001,1.001)}}</style><path fill="currentcolor" d="M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8l164.9-188.5L26.8 48h145.6l100.5 132.9zm-24.8 373.8h39.1L151.1 88h-42z" class="icon-twitter-x"/></symbol><use href="#ai:local:twitter"></use> </svg> <span class="visually-hidden" data-astro-cid-7kdedvnl>X (formerly known as Twitter)</span> </a> </li><li data-astro-cid-7kdedvnl> <a id="cta-footer-you-tube" href="https://www.youtube.com/@NetlifyApp" target="_blank" rel="noopener noreferrer" data-astro-cid-7kdedvnl> <svg width="20" height="20" class="icon" data-astro-cid-7kdedvnl="true" data-icon="youtube"> <symbol id="ai:local:youtube" viewBox="0 0 22 16"><path fill="currentcolor" d="M10.994.524s-6.508 0-8.142.435c-.874.25-1.594.99-1.839 1.9C.59 4.536.59 8.007.59 8.007s0 3.484.424 5.134c.245.91.952 1.636 1.84 1.887 1.646.448 8.14.448 8.14.448s6.521 0 8.155-.435a2.62 2.62 0 0 0 1.826-1.887c.437-1.663.437-5.134.437-5.134s.013-3.484-.437-5.16A2.6 2.6 0 0 0 19.148.984c-1.634-.46-8.154-.46-8.154-.46M8.923 4.8l5.415 3.207L8.923 11.2z"/></symbol><use href="#ai:local:youtube"></use> </svg> <span class="visually-hidden" data-astro-cid-7kdedvnl>YouTube</span> </a> </li><li data-astro-cid-7kdedvnl> <a id="cta-footer-discourse" href="https://answers.netlify.com/" target="_blank" rel="noopener noreferrer" data-astro-cid-7kdedvnl> <svg width="20" height="20" class="icon" data-astro-cid-7kdedvnl="true" data-icon="discourse"> <symbol id="ai:local:discourse" viewBox="0 0 24 24"><path fill="currentcolor" d="M12.103 0C18.666 0 24 5.485 24 11.997c0 6.51-5.33 11.99-11.9 11.99L0 24V11.79C0 5.28 5.532 0 12.103 0m.116 4.563a7.4 7.4 0 0 0-6.337 3.57 7.25 7.25 0 0 0-.148 7.22L4.4 19.61l4.794-1.074a7.42 7.42 0 0 0 8.136-1.39 7.26 7.26 0 0 0 1.737-7.997 7.375 7.375 0 0 0-6.84-4.585z"/></symbol><use href="#ai:local:discourse"></use> </svg> <span class="visually-hidden" data-astro-cid-7kdedvnl>Discourse</span> </a> </li> </ul> </div> <nav data-astro-cid-goxdehyl> <details class="section l-stack" data-variant="narrow" data-astro-cid-goxdehyl> <summary data-astro-cid-goxdehyl> <h2 class="text-0 font-bold tracking-tight" data-astro-cid-goxdehyl>Why Netlify?</h2> <svg width="1em" height="1em" viewBox="0 0 512 512" class="icon icon-chevron" aria-hidden="true" data-astro-cid-goxdehyl="true" data-icon="chevron"> <use href="#ai:local:chevron"></use> </svg> </summary> <ul class="l-stack l-stack-xs" role="list"> <li> <a id="cta-footer-sm-why-netlify-customers" href="/customers/"> Customers </a> </li><li> <a id="cta-footer-sm-why-netlify-composable-web-platform" href="/platform/"> Composable Web Platform </a> </li><li> <a id="cta-footer-sm-why-netlify-security" href="/security/"> Security </a> </li><li> <a id="cta-footer-sm-why-netlify-agency-partner-program" href="/partners/agency/"> Agency Partner Program </a> </li><li> <a id="cta-footer-sm-why-netlify-technology-partner-program" href="/partners/technology/"> Technology Partner Program </a> </li> </ul> </details> <section class="section l-stack" data-variant="wide" data-astro-cid-goxdehyl> <h2 class="text-0 font-bold tracking-tight" data-astro-cid-goxdehyl>Why Netlify?</h2> <ul class="l-stack l-stack-xs" role="list"> <li> <a id="cta-footer-why-netlify-customers" href="/customers/"> Customers </a> </li><li> <a id="cta-footer-why-netlify-composable-web-platform" href="/platform/"> Composable Web Platform </a> </li><li> <a id="cta-footer-why-netlify-security" href="/security/"> Security </a> </li><li> <a id="cta-footer-why-netlify-agency-partner-program" href="/partners/agency/"> Agency Partner Program </a> </li><li> <a id="cta-footer-why-netlify-technology-partner-program" href="/partners/technology/"> Technology Partner Program </a> </li> </ul> </section> <details class="section l-stack" data-variant="narrow" data-astro-cid-goxdehyl> <summary data-astro-cid-goxdehyl> <h2 class="text-0 font-bold tracking-tight" data-astro-cid-goxdehyl>Products</h2> <svg width="1em" height="1em" viewBox="0 0 512 512" class="icon icon-chevron" aria-hidden="true" data-astro-cid-goxdehyl="true" data-icon="chevron"> <use href="#ai:local:chevron"></use> </svg> </summary> <ul class="l-stack l-stack-xs" role="list"> <li> <a id="cta-footer-sm-products-composable-web-platform" href="/platform/"> Composable Web Platform </a> </li><li> <a id="cta-footer-sm-products-netlify-connect" href="/platform/connect/"> Netlify Connect </a> </li><li> <a id="cta-footer-sm-products-netlify-core" href="/platform/core/"> Netlify Core </a> </li><li> <a id="cta-footer-sm-products-netlify-create" href="/platform/create/"> Netlify Create </a> </li><li> <a id="cta-footer-sm-products-netlify-sdk" href="/platform/software-development-kit/"> Netlify SDK </a> </li><li> <a id="cta-footer-sm-products-pricing" href="/pricing/"> Pricing </a> </li><li> <a id="cta-footer-sm-products-changelog" href="/changelog/"> Changelog </a> </li><li> <details class="popover" data-astro-cid-suxz6fv2> <summary id="cta-footer-sm-products-add-ons" data-astro-cid-suxz6fv2> <span data-astro-cid-suxz6fv2>Add-ons</span> <svg width="0.88em" height="1em" class="icon icon-plus" aria-hidden="true" data-astro-cid-suxz6fv2="true" data-icon="plus"> <symbol id="ai:local:plus" viewBox="0 0 448 512"><path fill="currentcolor" d="M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32v144H48c-17.7 0-32 14.3-32 32s14.3 32 32 32h144v144c0 17.7 14.3 32 32 32s32-14.3 32-32V288h144c17.7 0 32-14.3 32-32s-14.3-32-32-32H256z"/></symbol><use href="#ai:local:plus"></use> </svg> <svg width="0.88em" height="1em" class="icon icon-minus" aria-hidden="true" data-astro-cid-suxz6fv2="true" data-icon="minus"> <symbol id="ai:local:minus" viewBox="0 0 448 512"><path fill="currentcolor" d="M432 256c0 17.7-14.3 32-32 32H48c-17.7 0-32-14.3-32-32s14.3-32 32-32h352c17.7 0 32 14.3 32 32"/></symbol><use href="#ai:local:minus"></use> </svg> </summary> <ul role="list" data-astro-cid-suxz6fv2> <li data-astro-cid-suxz6fv2> <a id="cta-footer-sm-products-analytics" href="/platform/core/analytics/" data-astro-cid-suxz6fv2> Analytics </a> </li><li data-astro-cid-suxz6fv2> <a id="cta-footer-sm-products-functions" href="/platform/core/functions/" data-astro-cid-suxz6fv2> Functions </a> </li><li data-astro-cid-suxz6fv2> <a id="cta-footer-sm-products-forms" href="/platform/core/forms/" data-astro-cid-suxz6fv2> Forms </a> </li><li data-astro-cid-suxz6fv2> <a id="cta-footer-sm-products-large-media" href="/platform/core/large-media/" data-astro-cid-suxz6fv2> Large Media </a> </li> </ul> </details> <script type="module">(function(){const o=Array.from(document.querySelectorAll("[id^='footer-popover']"));document.addEventListener("click",t=>{o.map(e=>{e.hasAttribute("open")&&!e.contains(t.target)&&e.removeAttribute("open")})})})();</script> </li> </ul> </details> <section class="section l-stack" data-variant="wide" data-astro-cid-goxdehyl> <h2 class="text-0 font-bold tracking-tight" data-astro-cid-goxdehyl>Products</h2> <ul class="l-stack l-stack-xs" role="list"> <li> <a id="cta-footer-products-composable-web-platform" href="/platform/"> Composable Web Platform </a> </li><li> <a id="cta-footer-products-netlify-connect" href="/platform/connect/"> Netlify Connect </a> </li><li> <a id="cta-footer-products-netlify-core" href="/platform/core/"> Netlify Core </a> </li><li> <a id="cta-footer-products-netlify-create" href="/platform/create/"> Netlify Create </a> </li><li> <a id="cta-footer-products-netlify-sdk" href="/platform/software-development-kit/"> Netlify SDK </a> </li><li> <a id="cta-footer-products-pricing" href="/pricing/"> Pricing </a> </li><li> <a id="cta-footer-products-changelog" href="/changelog/"> Changelog </a> </li><li> <details class="popover" data-astro-cid-suxz6fv2> <summary id="cta-footer-products-add-ons" data-astro-cid-suxz6fv2> <span data-astro-cid-suxz6fv2>Add-ons</span> <svg width="0.88em" height="1em" viewBox="0 0 448 512" class="icon icon-plus" aria-hidden="true" data-astro-cid-suxz6fv2="true" data-icon="plus"> <use href="#ai:local:plus"></use> </svg> <svg width="0.88em" height="1em" viewBox="0 0 448 512" class="icon icon-minus" aria-hidden="true" data-astro-cid-suxz6fv2="true" data-icon="minus"> <use href="#ai:local:minus"></use> </svg> </summary> <ul role="list" data-astro-cid-suxz6fv2> <li data-astro-cid-suxz6fv2> <a id="cta-footer-products-analytics" href="/platform/core/analytics/" data-astro-cid-suxz6fv2> Analytics </a> </li><li data-astro-cid-suxz6fv2> <a id="cta-footer-products-functions" href="/platform/core/functions/" data-astro-cid-suxz6fv2> Functions </a> </li><li data-astro-cid-suxz6fv2> <a id="cta-footer-products-forms" href="/platform/core/forms/" data-astro-cid-suxz6fv2> Forms </a> </li><li data-astro-cid-suxz6fv2> <a id="cta-footer-products-large-media" href="/platform/core/large-media/" data-astro-cid-suxz6fv2> Large Media </a> </li> </ul> </details> </li> </ul> </section> <details class="section l-stack" data-variant="narrow" data-astro-cid-goxdehyl> <summary data-astro-cid-goxdehyl> <h2 class="text-0 font-bold tracking-tight" data-astro-cid-goxdehyl>Explore</h2> <svg width="1em" height="1em" viewBox="0 0 512 512" class="icon icon-chevron" aria-hidden="true" data-astro-cid-goxdehyl="true" data-icon="chevron"> <use href="#ai:local:chevron"></use> </svg> </summary> <ul class="l-stack l-stack-xs" role="list"> <li> <a id="cta-footer-sm-explore-docs" href="https://docs.netlify.com/"> Docs </a> </li><li> <a id="cta-footer-sm-explore-integrations" href="/integrations/"> Integrations </a> </li><li> <a id="cta-footer-sm-explore-jamstack-book" href="/oreilly-jamstack/"> Jamstack Book </a> </li><li> <a id="cta-footer-sm-explore-community" href="https://answers.netlify.com/"> Community </a> </li><li> <a id="cta-footer-sm-explore-resources-guides" href="/resources/"> Resources &amp; Guides </a> </li><li> <a id="cta-footer-sm-explore-remotely-interesting" href="https://remotelyinteresting.netlify.com/"> Remotely Interesting </a> </li><li> <details class="popover" data-astro-cid-suxz6fv2> <summary id="cta-footer-sm-explore-technologies" data-astro-cid-suxz6fv2> <span data-astro-cid-suxz6fv2>Technologies</span> <svg width="0.88em" height="1em" viewBox="0 0 448 512" class="icon icon-plus" aria-hidden="true" data-astro-cid-suxz6fv2="true" data-icon="plus"> <use href="#ai:local:plus"></use> </svg> <svg width="0.88em" height="1em" viewBox="0 0 448 512" class="icon icon-minus" aria-hidden="true" data-astro-cid-suxz6fv2="true" data-icon="minus"> <use href="#ai:local:minus"></use> </svg> </summary> <ul role="list" data-astro-cid-suxz6fv2> <li data-astro-cid-suxz6fv2> <a id="cta-footer-sm-explore-jamstack" href="/jamstack/" data-astro-cid-suxz6fv2> Jamstack </a> </li><li data-astro-cid-suxz6fv2> <a id="cta-footer-sm-explore-react" href="/with/react/" data-astro-cid-suxz6fv2> React </a> </li><li data-astro-cid-suxz6fv2> <a id="cta-footer-sm-explore-next-js" href="/with/nextjs/" data-astro-cid-suxz6fv2> Next.js </a> </li> </ul> </details> </li> </ul> </details> <section class="section l-stack" data-variant="wide" data-astro-cid-goxdehyl> <h2 class="text-0 font-bold tracking-tight" data-astro-cid-goxdehyl>Explore</h2> <ul class="l-stack l-stack-xs" role="list"> <li> <a id="cta-footer-explore-docs" href="https://docs.netlify.com/"> Docs </a> </li><li> <a id="cta-footer-explore-integrations" href="/integrations/"> Integrations </a> </li><li> <a id="cta-footer-explore-jamstack-book" href="/oreilly-jamstack/"> Jamstack Book </a> </li><li> <a id="cta-footer-explore-community" href="https://answers.netlify.com/"> Community </a> </li><li> <a id="cta-footer-explore-resources-guides" href="/resources/"> Resources &amp; Guides </a> </li><li> <a id="cta-footer-explore-remotely-interesting" href="https://remotelyinteresting.netlify.com/"> Remotely Interesting </a> </li><li> <details class="popover" data-astro-cid-suxz6fv2> <summary id="cta-footer-explore-technologies" data-astro-cid-suxz6fv2> <span data-astro-cid-suxz6fv2>Technologies</span> <svg width="0.88em" height="1em" viewBox="0 0 448 512" class="icon icon-plus" aria-hidden="true" data-astro-cid-suxz6fv2="true" data-icon="plus"> <use href="#ai:local:plus"></use> </svg> <svg width="0.88em" height="1em" viewBox="0 0 448 512" class="icon icon-minus" aria-hidden="true" data-astro-cid-suxz6fv2="true" data-icon="minus"> <use href="#ai:local:minus"></use> </svg> </summary> <ul role="list" data-astro-cid-suxz6fv2> <li data-astro-cid-suxz6fv2> <a id="cta-footer-explore-jamstack" href="/jamstack/" data-astro-cid-suxz6fv2> Jamstack </a> </li><li data-astro-cid-suxz6fv2> <a id="cta-footer-explore-react" href="/with/react/" data-astro-cid-suxz6fv2> React </a> </li><li data-astro-cid-suxz6fv2> <a id="cta-footer-explore-next-js" href="/with/nextjs/" data-astro-cid-suxz6fv2> Next.js </a> </li> </ul> </details> </li> </ul> </section> <details class="section l-stack" data-variant="narrow" data-astro-cid-goxdehyl> <summary data-astro-cid-goxdehyl> <h2 class="text-0 font-bold tracking-tight" data-astro-cid-goxdehyl>Company</h2> <svg width="1em" height="1em" viewBox="0 0 512 512" class="icon icon-chevron" aria-hidden="true" data-astro-cid-goxdehyl="true" data-icon="chevron"> <use href="#ai:local:chevron"></use> </svg> </summary> <ul class="l-stack l-stack-xs" role="list"> <li> <a id="cta-footer-sm-company-blog" href="/blog/"> Blog </a> </li><li> <a id="cta-footer-sm-company-about" href="/about/"> About </a> </li><li> <a id="cta-footer-sm-company-careers" href="/careers/"> Careers </a> </li><li> <a id="cta-footer-sm-company-compose-conference" href="/conference/"> Compose Conference </a> </li><li> <a id="cta-footer-sm-company-code-of-conduct" href="/code-of-conduct/"> Code of Conduct </a> </li><li> <a id="cta-footer-sm-company-press" href="/press/"> Press </a> </li><li> <a id="cta-footer-sm-company-jamstack-fund" href="/jamstack-fund/"> Jamstack Fund </a> </li><li> <a id="cta-footer-sm-company-netlify-store" href="https://swag.netlify.com/"> Netlify Store </a> </li><li> <a id="cta-footer-sm-company-sustainability" href="/sustainability/"> Sustainability </a> </li> </ul> </details> <section class="section l-stack" data-variant="wide" data-astro-cid-goxdehyl> <h2 class="text-0 font-bold tracking-tight" data-astro-cid-goxdehyl>Company</h2> <ul class="l-stack l-stack-xs" role="list"> <li> <a id="cta-footer-company-blog" href="/blog/"> Blog </a> </li><li> <a id="cta-footer-company-about" href="/about/"> About </a> </li><li> <a id="cta-footer-company-careers" href="/careers/"> Careers </a> </li><li> <a id="cta-footer-company-compose-conference" href="/conference/"> Compose Conference </a> </li><li> <a id="cta-footer-company-code-of-conduct" href="/code-of-conduct/"> Code of Conduct </a> </li><li> <a id="cta-footer-company-press" href="/press/"> Press </a> </li><li> <a id="cta-footer-company-jamstack-fund" href="/jamstack-fund/"> Jamstack Fund </a> </li><li> <a id="cta-footer-company-netlify-store" href="https://swag.netlify.com/"> Netlify Store </a> </li><li> <a id="cta-footer-company-sustainability" href="/sustainability/"> Sustainability </a> </li> </ul> </section> <details class="section l-stack" data-variant="narrow" data-astro-cid-goxdehyl> <summary data-astro-cid-goxdehyl> <h2 class="text-0 font-bold tracking-tight" data-astro-cid-goxdehyl>Contact Us</h2> <svg width="1em" height="1em" viewBox="0 0 512 512" class="icon icon-chevron" aria-hidden="true" data-astro-cid-goxdehyl="true" data-icon="chevron"> <use href="#ai:local:chevron"></use> </svg> </summary> <ul class="l-stack l-stack-xs" role="list"> <li> <a id="cta-footer-sm-contact-us-sales" href="/contact/?attr=homepage&#38;ref=sales&#38;id=cta-footer-sales"> Sales </a> </li><li> <a id="cta-footer-sm-contact-us-support" href="/support/"> Support </a> </li><li> <a id="cta-footer-sm-contact-us-status" href="https://netlifystatus.com/"> Status </a> </li><li> <a id="cta-footer-sm-contact-us-forums" href="https://answers.netlify.com/"> Forums </a> </li><li> <a id="cta-footer-sm-contact-us-hire-an-agency" href="/agency-directory/"> Hire an Agency </a> </li> </ul> </details> <section class="section l-stack" data-variant="wide" data-astro-cid-goxdehyl> <h2 class="text-0 font-bold tracking-tight" data-astro-cid-goxdehyl>Contact Us</h2> <ul class="l-stack l-stack-xs" role="list"> <li> <a id="cta-footer-contact-us-sales" href="/contact/?attr=homepage&#38;ref=sales&#38;id=cta-footer-sales"> Sales </a> </li><li> <a id="cta-footer-contact-us-support" href="/support/"> Support </a> </li><li> <a id="cta-footer-contact-us-status" href="https://netlifystatus.com/"> Status </a> </li><li> <a id="cta-footer-contact-us-forums" href="https://answers.netlify.com/"> Forums </a> </li><li> <a id="cta-footer-contact-us-hire-an-agency" href="/agency-directory/"> Hire an Agency </a> </li> </ul> </section> </nav> <section class="newsletter-form | l-stack l-stack-small l-center" data-astro-cid-gtbzbcej> <h2 class="text-0" data-astro-cid-gtbzbcej>Stay up to date with Netlify news</h2> <article class="hubspot-form-wrapper | l-overlay-stack l-center"><div id="hubspot-form-site-footer" data-hubspot-form-id="3f14aacb-c91a-4a3a-a318-eba2d33a6904"></div><form method="POST" class="hs-form l-cluster" action data-astro-cid-gtbzbcej="true"><div class="hs-form-field" class="hs-fieldtype-input"><label for="email">Email</label><input name="email" id="email" required value type="email"></div><div class="hs-form-field" class="hs-fieldtype-input"><label for="utm_campaign">UTM Campaign</label><input name="utm_campaign" id="utm_campaign" value type="hidden"></div><div class="hs-form-field" class="hs-fieldtype-input"><label for="utm_content">UTM Content</label><input name="utm_content" id="utm_content" value type="hidden"></div><div class="hs-form-field" class="hs-fieldtype-input"><label for="utm_medium">UTM Medium</label><input name="utm_medium" id="utm_medium" value type="hidden"></div><div class="hs-form-field" class="hs-fieldtype-input"><label for="utm_source">UTM Source</label><input name="utm_source" id="utm_source" value type="hidden"></div><div class="hs-form-field" class="hs-fieldtype-input"><label for="utm_term">UTM Term</label><input name="utm_term" id="utm_term" value type="hidden"></div><input type="hidden" name="hubspotformid" value="3f14aacb-c91a-4a3a-a318-eba2d33a6904"><input type="hidden" name="hubspotutk" value=""><div class="hs-submit"><input type="submit" data-type="secondary" value="Subscribe"></div></form></article><script>(function(){const formId = "3f14aacb-c91a-4a3a-a318-eba2d33a6904"; const submitBtnVariant = "secondary"; if (formId && submitBtnVariant) { if (window?.hsFormButtons) { window.hsFormButtons[formId] = `button-${submitBtnVariant}`; } else { window.hsFormButtons = { [formId]: `button-${submitBtnVariant}`, }; } } })();</script><script type="module" src="/_astro/HubSpotForm.astro_astro_type_script_index_0_lang.CkxKWqLg.js"></script> </section> <div class="wrapper | l-cluster" data-astro-cid-k5rle6j4> <ul role="list" class="legal | l-cluster" data-astro-cid-k5rle6j4> <li data-astro-cid-k5rle6j4> <a id="cta-legal-footer-trust-center" href="/trust-center/" data-astro-cid-k5rle6j4> Trust Center </a> </li><li data-astro-cid-k5rle6j4> <a id="cta-legal-footer-privacy" href="/privacy/" data-astro-cid-k5rle6j4> Privacy </a> </li><li data-astro-cid-k5rle6j4> <a id="cta-legal-footer-gdpr-ccpa" href="/gdpr-ccpa/" data-astro-cid-k5rle6j4> GDPR/CCPA </a> </li><li data-astro-cid-k5rle6j4> <a id="cta-legal-footer-abuse" href="mailto:fraud@netlify.com?subject=Abuse%20report&#38;body=Please%20include%20the%20site%20URL%20and%20reason%20for%20your%20report%2C%20and%20we%20will%20reply%20promptly." data-astro-cid-k5rle6j4> Abuse </a> </li><li data-astro-cid-k5rle6j4> <button type="button" id="cta-legal-footer-cookie-settings-toggle" data-type="reset" data-astro-cid-k5rle6j4> Cookie Settings </button> </li> </ul> <p class="copyright" data-astro-cid-k5rle6j4>© 2025 Netlify</p> </div> </footer> <script type="module">document.querySelector("#cta-legal-footer-cookie-settings-toggle")?.addEventListener("click",e=>{e.preventDefault(),window.OneTrust&&window.OneTrust.ToggleInfoDisplay()});</script> <!-- required for all HubSpot forms --> <script defer src="https://js.hsforms.net/forms/v2.js"></script> <script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/7477936.js"></script> </body> </html> <script type="module">window.addEventListener("stackbitObjectsChanged",e=>{e.preventDefault(),e.detail.changedObjectIds.some(d=>e.detail.visibleObjectIds.includes(d))&&window.location.reload()});</script>

Pages: 1 2 3 4 5 6 7 8 9 10