Зачем
Loom — стандарт для записи экрана, но в российском контексте он ломается: лимит 5 минут, нестабильный интерфейс, ограниченный доступ из РФ. Я сделал своё — без этих ограничений и с полным контролем над инфраструктурой.
Что это
Запись экрана на macOS → загрузка на сервер → публичная ссылка → просмотр в браузере без регистрации.
Стек
Go · PostgreSQL · gRPC · REST · Docker · nginx · собственный VPS
Go-бэкенд и дизайн я делаю сам — здесь важна каждая строчка и каждый пиксель. Всё остальное — вайбкодинг: осознанно отдаю его ИИ-инструментам, чтобы не распылять время и внимание.
Ключевые технические решения
Стриминговая загрузка через gRPC
Видео передаётся чанками с macOS-клиента через client-streaming RPC. Protobuf-контракт использует oneof — метаданные отправляются один раз первым сообщением, дальше идут только байтовые куски. Первый черновик дублировал метаданные в каждом чанке — исправлено после ревью.
Безопасность контракта
user_id берётся из JWT в gRPC-метаданных, а не из тела запроса — клиент не может подделать владельца видео.
Публичные ссылки
Видео доступно по случайному неугадываемому слагу, а не по sequential ID — нельзя перебором получить чужие записи.
Раздельная auth-схема
JWT в теле ответа для macOS-клиента (хранится в Keychain), httpOnly cookie для веб-вьюера. Один OTP-флоу, две схемы хранения под разный контекст безопасности.
Статус
Альфа работает на theflare.space. MVP-флоу record → upload → share функционирует.
Записать своё первое видео на theflare.space