# Push your ideas to the web

Create with AI or code, deploy instantly on production infrastructure. One platform to build and ship.

[Start building](https://app.netlify.com/signup) [Talk to sales](/contact/sales)

Add Netlify to your coding agent

 

![Meta](/images/home/logos/meta-black.svg)

![Mighty](/images/home/logos/mighty-black.svg)

![Finn](/images/home/logos/finn-black.svg)

![Autodesk](/images/home/logos/autodesk-black.svg)

![Zscaler](/images/home/logos/zscaler-black.svg)

![ServiceTitan](/images/home/logos/servicetitan-black.svg)

![Stack Overflow](/images/home/logos/stack-overflow.svg)

![Riot Games](/images/home/logos/riot-games.svg)

![Kubernetes](/images/home/logos/kubernetes.svg)

![Figma](/images/home/logos/figma.svg)

![Meta](/images/home/logos/meta-black.svg)

![Mighty](/images/home/logos/mighty-black.svg)

![Finn](/images/home/logos/finn-black.svg)

![Autodesk](/images/home/logos/autodesk-black.svg)

![Zscaler](/images/home/logos/zscaler-black.svg)

![ServiceTitan](/images/home/logos/servicetitan-black.svg)

![Stack Overflow](/images/home/logos/stack-overflow.svg)

![Riot Games](/images/home/logos/riot-games.svg)

![Kubernetes](/images/home/logos/kubernetes.svg)

![Figma](/images/home/logos/figma.svg)

How it works

## Build your way.  
Ship on one platform.

Every path runs on the same workflow and production infrastructure, powering millions of sites and apps.

### Start with code or AI

Start with a prompt, push from Git, or drag and drop. All paths lead to the same project.

### Build fullstack apps

Connect APIs, manage data, optimize images, and add AI features from your first prompt.

### Go live everywhere

Ship to a global CDN in seconds. Fast for every user, instantly.

[Play](https://youtube.com/watch?v=Evdv_HSFHBk) 

Workflow

### Prompt. Preview. Repeat.

Prompt from the dashboard, develop locally, or push from Git. Every change gets a preview URL before it's live.

-   Prompt Claude, Gemini, or Codex
-   Deploy from Git, CLI, or drag and drop
-   Preview every change before it's live
-   Roll back any deploy in one click

![Line drawing illustration of a code editor with HTML tags, multiple lines of code, and surrounding icons including for various AI tools and frameworks.](/images/home/switchback-1.svg)

Platform

### Build with agent-ready primitives.

Add APIs, run logic at the edge, schedule jobs, and handle background work on production infrastructure.

-   Build APIs with serverless functions
-   Add instant databases and file storage
-   Handle auth with built-in identity
-   Connect to AI models through AI Gateway

[Explore the platform

](/platform/)

![Line drawing illustration of a browser window containing connected elements - a chart showing upward trending data, a security lock icon, a progress bar with checkmark, and a power plug.](/images/home/switchback-2.svg)

Scale

### Grow on the same infrastructure.

From your first deploy to global traffic, the same infrastructure supports your growth as you scale.

-   Automatic HTTPS and DDoS protection
-   Manage access, secrets, and env vars by team
-   Global edge network with 99.99% uptime

![Line drawing illustration showing two overlapping circles with decorative clouds, one representing a rollback and the other a meter increasing.](/images/home/switchback-3.svg)

> I can push a change, and within 30 seconds the site is completely rebuilt.

Jeffrey Sica Kubernetes contributor, Head of Projects at CNCF

Use cases

## For every kind of web app.

Build everything from marketing sites to AI apps on one platform.

    

### Launch AI features with one gateway

Prototype, test, and scale AI-powered experiences faster. Product teams can iterate with agents while engineers productionize on the same platform.

-   Prototype and ship AI features with **Agent Runners**
-   Connect to OpenAI, Anthropic, and Gemini through **AI Gateway**
-   Deploy backend logic as API endpoints with **Serverless Functions**

[Explore AI Gateway](/docs/ai-gateway)

Example: Generate alt text with OpenAI

```
import OpenAI from "openai";

export default async (req: Request) => {
  const { description } = await req.json();
  const client = new OpenAI();

  const res = await client.responses.create({
    model: "gpt-5-mini",
    input: [
      { role: "user", content: `Write concise alt text for: ${description}` },
    ],
  });

  return Response.json({ altText: res.output_text });
};

export const config = { path: "/api/alt-text" };
```

### Launch fast and iterate faster

Run campaigns quickly, test changes safely, and let marketers and designers contribute directly with agents.

-   Generate pages, update copy, and publish with **Agent Runners**
-   Review every change before it goes live with **Deploy Previews**
-   Optimize and serve images on demand with **Image CDN**

[Marketing sites on Netlify](/solutions/marketing-sites/)

Example: Optimized image with form

```
<!-- Resize an image to 800px wide -->
<img src="/.netlify/images?url=/hero.jpg&w=800"
     alt="Optimized hero image">

<!-- Collect leads with zero config -->
<form name="waitlist" method="POST" data-netlify="true">
  <label>Email: <input type="email" name="email" /></label>
  <button type="submit">Join waitlist</button>
</form>
```

### Build fullstack apps without managing infrastructure

Prototype features quickly with agents and move them into production-ready code as you scale.

-   Scaffold and iterate on features with **Agent Runners**
-   Deploy and safely iterate on managed Postgres with **Netlify Database**
-   Scale your backend logic without managing servers with **Serverless Functions**

[Explore platform primitives](/docs/primitives)

Example: Persist user-generated uploads

```
import { getStore } from "@netlify/blobs";
import type { Context } from "@netlify/functions";
import { v4 as uuid } from "uuid";

export default async (req: Request, context: Context) => {
  // Accessing the request as `multipart/form-data`.
  const form = await req.formData();
  const file = form.get("file") as File;

  // Generating a unique key for the entry.
  const key = uuid();

  const uploads = getStore("file-uploads");
  await uploads.set(key, file, {
    metadata: { country: context.geo.country.name }
  });

  return new Response("Submission saved");
};
```

### Run fast storefronts at global scale

Test new experiences quickly and let teams iterate safely across merchandising, design, and engineering.

-   Prototype landing pages and flows with **Agent Runners**
-   Deliver sub-second page loads from 100+ locations with **Edge Network**
-   Optimize product images on the fly with **Image CDN**

[Ecommerce on Netlify](/solutions/ecommerce/)

Example: Fetch products from a headless API

```
export default async (req: Request) => {
  const res = await fetch(Netlify.env.get("STORE_API_URL"), {
    headers: {
      Authorization: `Bearer ${Netlify.env.get("STORE_API_TOKEN")}`,
    },
  });

  const { products } = await res.json();

  return Response.json(
    products.map((p) => ({
      id: p.id,
      title: p.title,
      price: p.variants[0].price,
      image: `/.netlify/images?url=${p.image}&w=400`,
    }))
  );
};

export const config = { path: "/api/products" };
```

### Create internal apps with less overhead

Build dashboards and workflow tools faster with contributions from ops, data, and product teams.

-   Build and update internal tools from the dashboard with **Agent Runners**
-   Connect to internal APIs and databases with **Serverless Functions**
-   Manage permissions across your team with **Access Controls**

[Internal apps on Netlify](/solutions/internal-apps/)

Example: Proxy an internal API

```
export default async (req: Request) => {
  const { query } = await req.json();

  const res = await fetch(Netlify.env.get("INTERNAL_API"), {
    method: "POST",
    headers: {
      Authorization: `Bearer ${Netlify.env.get("INTERNAL_TOKEN")}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({ query }),
  });

  return new Response(res.body, {
    headers: { "Content-Type": "application/json" },
  });
};

export const config = { path: "/api/internal" };
```

10M+developers

60M+apps deployed

99.99%uptime

## Start your way.

Choose the workflow that fits how you work.

Start with a prompt

Describe what you want to build. An AI agent handles the rest.

[Start for free

](https://app.netlify.com/signup)

Deploy from Git

Auto-deploy on every push. Every PR gets a preview URL.

[Import a project

](https://app.netlify.com/start)

Deploy from terminal

Deploy directly from your working directory. No login required to start.

`npm i -g netlify-cli netlify deploy --allow-anonymous`

[Get started with CLI

](https://docs.netlify.com/api-and-cli-guides/cli-guides/get-started-with-cli/)

Drag and drop

Drop your project folder and it's live in seconds. No setup required.

[Try Netlify Drop

](https://app.netlify.com/drop)