Open source

Webhook Workbench

Open source · отладка вебхуков на Go

Приватный инструмент на собственном сервере: принимает, показывает, проверяет и безопасно переотправляет вебхуки. Один бинарник на Go без зависимостей со встроенным интерфейсом.

Webhook Workbench — превью

Задача

Для отладки вебхуков часто приходится отправлять реальные данные в сторонний сервис.

Решение

Бинарник на Go на вашем сервере: принимает, проверяет и безопасно переотправляет вебхуки, скрывая секреты до сохранения.

Под капотом

Тесты покрывают скрытие секретов, проверку подписей, переотправку и защиту от SSRF. Релизные бинарники с контрольными суммами; публичная песочница.

Обзор

Webhook Workbench принимает входящие вебхуки на любом канале и показывает для каждого запроса декодированное тело, заголовки со скрытыми секретами и готовую команду cURL для воспроизведения. Это один бинарник на Go — только стандартная библиотека, интерфейс встроен внутрь, — и по умолчанию он слушает только localhost.

Подписи проверяются по точному сохранённому телу запроса для профилей GitHub, Stripe (с пятиминутным окном приёма) и произвольного HMAC-SHA-256; секрет используется один раз и нигде не сохраняется. Сохранённые запросы можно переотправить на выбранный адрес, но осторожно: частные, loopback- и не-HTTP-адреса отклоняются, DNS перепроверяется при подключении, число редиректов ограничено, а заголовки авторизации, cookie и hop-by-hop удаляются.

История событий ограничена по размеру и хранится в локальном JSON-снимке, бинарные тела сохраняются в base64, есть health-проба. Docker-конфигурация работает без root, со сброшенными capabilities и корневой файловой системой только для чтения; тесты покрывают скрытие секретов, проверку подписей, переотправку и защиту от SSRF.

Что делает

  • Принимает запросы любым HTTP-методом на /inbox/{channel} и показывает трафик в реальном времени
  • Проверяет подписи GitHub, Stripe и произвольные HMAC-SHA-256
  • Безопасно переотправляет запросы с защитой от SSRF
  • Скрывает секреты до сохранения; опциональная авторизация по bearer-токену

Что дальше

Ищете full-⁠stack, Python- или AI-⁠разработчика — или нужно сделать что-то похожее? Давайте обсудим.

Готов приступить сразу: офис или гибрид в Москве, либо удалённо; полная занятость или контракт. Отвечаю в течение 48 часов, в Telegram — быстрее.

Связаться TelegramСкачать резюме

Альхассан Альфарран.

© 2026 · Спроектировал и сделал сам. Стек сайта: Next.js, Tailwind и Framer Motion.

Моё местное время: · Москва

Заметки
Как устроен этот сайт

Стек

Next.js (App Router) и React, стили на Tailwind CSS, анимации на Framer Motion. Форма обратной связи отправляет письма через Resend, сайт размещён на Vercel.

Три языка, одна вёрстка

У английской, русской и арабской версий свои адреса (/en, /ru, /ar), а собраны они из одних и тех же компонентов. В вёрстке используются логические CSS-свойства (start/end вместо left/right), поэтому арабская версия отражается справа налево без отдельных стилей. Сервер отдаёт каждую страницу сразу с нужным языком и направлением текста, так что после загрузки ничего не перескакивает, а арабский шрифт загружается, только когда на экране есть арабский текст.

Скорость и доступность

Секции ниже первого экрана не отрисовываются, пока страница не прокручена до них, а быстрое меню загружается при первом открытии. Всем можно пользоваться с клавиатуры — есть ссылка для перехода к содержимому и заметный фокус, — а анимации отключаются, если в системе включено уменьшение движения.

Исходный код на GitHub