Из блога OpenReplay
Современные возможности CSS, для которых больше не нужен JavaScript
Container queries, анимации на основе прокрутки, Popover API и селектор :has теперь позволяют реализовывать интерактивные паттерны UI без JavaScript.
Работа со временем в тестах: надёжные паттерны для асинхронности и задержек
Нестабильные тесты из-за таймеров и асинхронности в Jest, Vitest, React Testing Library, Playwright и Cypress устраняются с помощью паттернов fake timer.
10 команд Git, которые должен знать каждый разработчик
Десять команд Git, включая git switch, git restore и git reflog, помогают разработчикам уверенно управлять повседневными рабочими процессами.
Более умное кэширование в Next.js: частичный рендеринг и переиспользуемые компоненты
Кэширование в Next.js App Router, включая Data Cache, Full Route Cache и Partial Prerendering, становится предсказуемым, если серверные компоненты управляют собственной политикой кэширования.
Автоматизация повторяющихся задач с помощью Cron Jobs
Планирование скриптов через cron jobs: синтаксис, абсолютные пути, логирование, предотвращение перекрытий, а также systemd timers и Kubernetes CronJobs.
Советы и хитрости по отладке GitHub Actions
Отладка CI/CD-пайплайнов: debug-логирование, валидация воркфлоу через actionlint, локальное тестирование с nektos/act и корректная область артефактов.
Подводные камни JavaScript: пять проблем, с которыми вы будете сталкиваться снова и снова
Статья разбирает ловушки JavaScript: приведение типов, привязку this, hoisting, некорректный async и случайную мутацию, ломающие production-код.
Сравнение Electron и Tauri для настольных приложений
Сравнение Electron и Tauri по производительности, безопасности и размеру бандла для выбора фреймворка кроссплатформенного настольного приложения.
Запуск высокопроизводительного кода с помощью WASM
WebAssembly 3.0 добавляет GC, потоки, Memory64 и SIMD; статья показывает, как структурировать WASM-модули для вычислительных hotspot'ов на фронтенде.
Знакомство с JavaScript-движками, которые управляют веб-приложениями
Сравнение V8, SpiderMonkey, JavaScriptCore и Hermes: как JavaScript-движки парсят, компилируют и оптимизируют код в браузерах и средах выполнения.
Топ-5 сервисов placeholder-изображений для веб-разработчиков
Сравнение пяти CDN-сервисов placeholder-изображений, включая Placehold.co, Lorem Picsum и DiceBear, для выбора инструмента под современный frontend.
Руководство разработчика по SSL-сертификатам
Разбор TLS-сертификатов, протокола ACME и Let's Encrypt: разработчики могут автоматизировать обновление и предотвращать сбои в production API.
Исправление ошибки 'Unexpected token < in JSON at position 0'
Разбор ошибки парсинга JSON, вызванной HTML-ответами из-за неверных URL, редиректов аутентификации или серверных ошибок в fetch и Next.js API.
Инспектирование HTTPS-запросов с помощью HTTP Toolkit
HTTP Toolkit перехватывает HTTPS-трафик через MITM-прокси и раскрывает данные запросов и ответов для браузеров, мобильных и десктопных приложений.
Три альтернативы Vercel для современного веб-хостинга
Сравнение Netlify, Cloudflare Pages и Fly.io как альтернатив Vercel помогает выбрать подходящую edge-платформу для современных веб-проектов.
Странная жизнь NaN в JavaScript
NaN в JavaScript следует правилам IEEE 754 и вызывает скрытые сбои; для обнаружения используется Number.isNaN, входные данные валидируются до JSON-сериализации.
Легковесный подход к всплывающим подсказкам в React
Сравнение нативного title, CSS-паттернов, хуков и Floating UI для создания доступных тултипов в React с определением коллизий и минимальным бандлом.
Пять плагинов ESLint, которые улучшают качество кода
Пять плагинов ESLint, typescript-eslint, eslint-plugin-import, unicorn, jsx-a11y и CSS-линтинг, позволяют командам выявлять баги до продакшна.
Как мигрировать ваши тесты с Enzyme на React Testing Library
Переход с Enzyme на React Testing Library охватывает паттерны рефакторинга, доступные запросы и async-обработку для поведенческого тестирования компонентов.
Как создавать пользовательские ошибки в JavaScript
Статья показывает, как строить классы ошибок на основе Error.cause и синтаксиса классов для диагностики сбоев в асинхронных потоках приложений.
Руководство для начинающих по образам и контейнерам Docker
Статья охватывает основы образов и контейнеров Docker, создание Dockerfile, управление volumes и запуск многоконтейнерных приложений через Docker Compose.
Настройка редактора с помощью улучшенных шрифтов для программирования
Сравнение Fira Code, JetBrains Mono, Cascadia Code и Monaspace; настройка лигатур и Nerd Fonts в VS Code и JetBrains IDE для повышения читаемости кода.
Исправление ошибки 'TypeError: Cannot Read Property of Undefined' в JavaScript
Устранение TypeError 'cannot read property of undefined' в JavaScript с помощью optional chaining, nullish coalescing и инициализации состояния React.
Как добавить социальную авторизацию с помощью BetterAuth
Добавление социальной авторизации в TypeScript-приложения с BetterAuth, настройка провайдеров Google и GitHub, расширение OAuth2 через плагин Generic OAuth.