Skip to main content
Glama

RenderPing

Скриншоты веб-сайтов и PDF из любого URL — один REST-вызов.

RenderPing рендерит любой публичный URL с помощью настоящего headless Chromium и возвращает подписанный URL на PNG, JPEG, WebP или PDF. Полная страница или произвольный viewport, захват элементов, очистка по hide-selector, cookies и заголовки для страниц с аутентификацией, синхронный или асинхронный рендеринг с вебхуками. Поставляется с MCP-сервером, чтобы AI-агенты могли рендерить страницы как инструменты.

Быстрый старт

# Sign up (returns your JWT + full API key, shown once)
curl -X POST https://renderping.theking.qzz.io/api/auth/signup \
  -H "Content-Type: application/json" \
  -d '{"email":"you@example.com","password":"a-long-password"}'

# First capture
curl -X POST https://renderping.theking.qzz.io/api/v1/captures \
  -H "X-API-Key: rp_live_..." -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","format":"png","full_page":true}'

Ответ содержит result_url — HMAC-подписанную ссылку с истекающим сроком действия на отрендеренный файл. Бесплатный план: 50 успешных рендеров в месяц.

Related MCP server: @rendershot/mcp-server

Структура монорепозитория

Путь

Что это

apps/server

Fastify API: аутентификация, API-ключи, очередь захватов, учёт квот, доставка подписанных файлов, биллинг через Paddle + Gumroad

apps/worker

Playwright/Chromium воркер рендеринга с очередью заданий на базе PG (FOR UPDATE SKIP LOCKED, с ограничением конкурентности) и защитой от SSRF

apps/mcp

MCP-сервер (stdio), предоставляющий render_screenshot, render_pdf, check_changes, get_usage AI-агентам

apps/dashboard

SPA на чистом JavaScript: ключи, песочница, счётчик использования, активация лицензий

apps/marketing

Лендинг + детерминированный генератор pSEO (~250 страниц + sitemap + robots)

apps/docs

Сайт документации для разработчиков

packages/shared

Планы, типы, SSRF-защита (assertPublicUrl)

packages/design

Общая дизайн-система (токены + компоненты, без фреймворка)

Примечательные инженерные детали

  • SSRF-безопасный рендеринг: каждый целевой URL разрешается через DNS и проверяется на частные/зарезервированные диапазоны (loopback, RFC1918, link-local/cloud metadata, ULA, IPv4-mapped v6) перед навигацией; заблокированные литеральные хосты также отклоняются по запросу для редиректов/подресурсов (packages/shared/src/net.ts).

  • Побайтовая проверка вебхуков: подписи Paddle проверяются по сырым байтам запроса через специализированный парсер content-type — а не через повторную сериализацию распарсенного JSON (scripts/verify-paddle-webhook.js доказывает это end-to-end).

  • Детерминированный pSEO: два запуска генератора дают побайтово идентичный вывод; верификатор проверяет инварианты canonical/h1/meta/внутренних ссылок на каждой странице плюс полноту sitemap.

  • Верификационные харнессы для всего: scripts/verify-{dashboard,marketing,docs,mcp,paddle-webhook,gumroad-redeem}.js запускаются против живого сервера на localhost:8080.

Самостоятельное размещение

npm install
cp .env.example .env          # fill DATABASE_URL, JWT_SECRET, FILE_SIGN_SECRET
node scripts/migrate.js       # applies migrations/*.sql
npm run build
npm start                     # or systemd units under infra/

Требования: Node 20+, PostgreSQL 12+, Chromium (устанавливается через npx playwright install chromium).

Биллинг

Платные планы — это ежемесячные подписки, продаваемые через Gumroad с мгновенной активацией по лицензионному ключу (POST /api/billing/gumroad/redeem). Путь оплаты Paddle Merchant-of-Rail реализован за функциональными флагами (PADDLE_MODE=sandbox|live) и проверяется собственным харнессом.

Лицензия

© 2026 RenderPing. Все права защищены. Публичный репозиторий опубликован для прозрачности; повторное использование кода требует разрешения.

Maintenance

ActivityStale
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers