Из блога OpenReplay
Первый взгляд на Gea — UI-фреймворк, построенный вокруг компилятора
Gea — компилятор-ориентированный JavaScript UI framework с JSX, классами store и прямыми DOM-исправлениями. Статья разбирает props, размеры и зрелость.
Разработка плагина WordPress с нуля
Соберите плагин WordPress с нуля: хуки, активация и деактивация, страница настроек, санитизация, экранирование и безопасное сохранение.
Как исправить ошибку Invalid Hook Call в React
Исправьте ошибку invalid hook call в React, проверив стек, Rules of Hooks, дубликаты React и несоответствие версий react-dom.
Использование Git Worktrees с ИИ-агентами для написания кода
Используйте git worktrees с ИИ-агентами, чтобы изолировать ветки, избежать конфликтов файлов и безопасно управлять портами, БД и слияниями.
Git Worktrees: что это, когда и зачем их использовать
Git worktree: чем они отличаются от stash и вторых клонов, когда их использовать и какие команды нужны для управления ими.
3 альтернативы SSH для нестабильных соединений
Сравните Mosh, Eternal Terminal и autossh для нестабильных SSH-соединений: UDP, TCP-переподключение, требования к серверу и связку с tmux.
Как считать токены и оценивать стоимость API LLM
Точно считайте токены LLM и оценивайте стоимость API с токенизаторами OpenAI, Claude, Gemini и Llama, а также лимиты контекста и биллинг.
Что нового в ECMAScript 2026
ES2026 добавляет семь функций JavaScript: Array.fromAsync, Math.sumPrecise, base64 и hex для Uint8Array, доступ к исходному тексту в JSON.parse и getOrInsert.
Как проверять цветовой контраст по WCAG
Проверьте контраст WCAG для текста, UI-компонентов, индикаторов фокуса и ссылок с нужными инструментами, порогами и исправлениями.
Как создавать миниатюры изображений перед загрузкой
Создавайте миниатюры перед загрузкой: превью FileReader, уменьшение в Canvas toBlob, отправка FormData и совпадение полей multer.
VuePress vs VitePress: что выбрать?
VuePress vs VitePress для документации Vue: сравнение поддержки, скорости разработки, настройки и когда выбрать VitePress или Docusaurus.
Когда ORM — неподходящий инструмент
Когда ORM становится узким местом, переходите на SQL для N+1 запросов, оконных функций, CTE, массовых записей и безопасных параметров.
Как добавить воспроизведение видео в приложения на Vue
Добавьте воспроизведение видео в Vue-приложения с нативным HTML5 video, переиспользуемыми компонентами или Video.js для HLS, субтитров, autoplay и очистки.
5 команд Git, выходящих за рамки commit и push
Пять команд Git beyond commit and push: stash, reflog, cherry-pick, rebase -i и bisect для восстановления, очистки истории и поиска багов.
Как создать индикатор прогресса чтения
Создайте индикатор прогресса чтения на JavaScript или CSS scroll-driven animations: точная формула прокрутки, производительность и доступность.
Замена номеров портов именованными URL при разработке
Замените порты localhost на именованные URL с .localhost, обратным прокси или portless, чтобы избежать конфликтов портов, утечек cookies и неверных вкладок.
Запуск React-библиотек в Preact с помощью preact/compat
Используйте preact/compat, чтобы запускать React-библиотеки в Preact, с alias для Vite, webpack, Rollup, Jest, TypeScript и типичных сбоев.
Модель разрешений Deno: подробный разбор
Права Deno: флаги allow и deny, ограничение доступа, наборы в deno.json, API Permissions и главные риски безопасности.
Линтинг TypeScript с помощью ESLint
Flat config ESLint 10 для TypeScript: настройка с typescript-eslint, typed linting через projectService и корректное подключение Prettier.
Разбираемся с Error.isError() в JavaScript
Error.isError() проверяет настоящие ошибки JavaScript между realms, объясняет, почему он лучше instanceof Error, и показывает безопасный fallback.
Разбираемся с проблемой N+1 запросов
Проблема N+1 объясняется на примерах Rails, Django, Hibernate и Laravel, а также разбираются eager loading, JOIN и способы выявления.
Как исправить ошибку «Maximum update depth exceeded» в React
Исправьте ошибку React maximum update depth exceeded с помощью простых правок для циклов рендера, зависимостей эффектов, обработчиков и throttling.
Инструменты записи экрана для разработчиков
Сравните инструменты записи экрана для разработчиков: Loom, OBS, Screen Studio, CleanShot X и SDK для быстрого обмена, демо и встроенной записи.
Создание toast-уведомлений в Svelte
Создавайте toast-уведомления в Svelte через writable store или svelte-sonner, с синтаксисом Svelte 5, доступностью и автозакрытием.