# render-static-sites

Помогает агенту развернуть статический сайт или SPA на CDN Render: команды сборки, путь публикации, роутинг, заголовки и превью из пул-реквестов.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 367 установок · ★ 88
- Автор: Render
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/render-oss/skills/tree/HEAD/skills/render-static-sites/SKILL.md
- Обновлён: 2026-10-08
- HTML: https://affpapa.org/nevibecode/skills/render-static-sites

## Что делает

Скилл описывает, как выложить статический фронтенд на CDN Render. Внутри — таблица команд сборки и путей публикации для React, Vite, Hugo, Gatsby, Docusaurus, Jekyll, Astro и статических экспортов Next.js и Nuxt. Агент подставит нужную пару вместо того, чтобы угадывать `dist` или `build`.

Отдельно разобраны правила роутинга. Для SPA нужен catch-all rewrite на `index.html`, иначе прямой заход на внутренний маршрут отдаёт 404. Редиректы для старых адресов ставятся выше catch-all, иначе они не сработают. Заголовки ответа задаются через Dashboard или поле `headers` в Blueprint.

Важное ограничение: статические сайты не живут в приватной сети Render и не могут обращаться к другим сервисам по внутренним именам. Если фронтенду нужен работающий сервер — это уже Web Service, а не Static Site. Для SSR-фреймворков скилл отправляет к `render-web-services`. Есть бесплатный тариф, но исходящий трафик и минуты сборки считаются в общих лимитах воркспейса.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add render-oss/skills --skill render-static-sites -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/render-static-sites/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/render-static-sites/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add render-oss/skills --skill render-static-sites -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/render-static-sites/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add render-oss/skills --skill render-static-sites -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/render-static-sites/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install render-oss/skills render-static-sites
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/render-static-sites/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add render-oss/skills --skill render-static-sites -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/render-oss/skills --path skills/render-static-sites
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/render-static-sites/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add render-oss/skills --skill render-static-sites -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/render-oss/skills/tree/HEAD/skills/render-static-sites/SKILL.md

## Когда брать
- выбрать команду сборки и путь публикации под свой фреймворк
- настроить catch-all rewrite, чтобы SPA не отдавал 404
- добавить редиректы со старых URL выше общего правила
- прописать заголовки безопасности и кеширования для ассетов
- включить превью-окружения для пул-реквестов

## Примеры запросов агенту
- Задеплой мой Vite-фронтенд на Render как статический сайт, подскажи buildCommand и staticPublishPath
- Настрой SPA fallback на Render: все маршруты должны отдавать index.html
- Добавь заголовок Cache-Control для /assets/* и включи PR previews

## Похожие
- [firebase-hosting-basics](https://affpapa.org/nevibecode/skills/firebase-hosting-basics.md) — скилл · 170300 установок
- [stitch::extract-static-html](https://affpapa.org/nevibecode/skills/stitchextract-static-html.md) — скилл · 10000 установок
- [google-cloud-networking-observability](https://affpapa.org/nevibecode/skills/google-cloud-networking-observability.md) — скилл · 11856 установок
- [tao-run-on-kubernetes](https://affpapa.org/nevibecode/skills/tao-run-on-kubernetes.md) — скилл · 1600 установок
- [cloudfront](https://affpapa.org/nevibecode/skills/cloudfront.md) — скилл · 5200 установок
- [netlify-caching](https://affpapa.org/nevibecode/skills/netlify-caching.md) — скилл · 3100 установок

Из того же набора: [render-oss/skills](https://affpapa.org/nevibecode/by/render-oss/skills.md) — 14 карточек

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
