Из блога OpenReplay
Что такое Lynx.js? Руководство для начинающих
Lynx.js - кросс-платформенный фреймворк от ByteDance, рендерящий нативный UI на iOS и Android с помощью React, CSS и двухпоточной архитектуры.
Создание типобезопасных API-клиентов с помощью OpenAPI и TypeScript
Генерация TypeScript-типов из OpenAPI-спецификаций через openapi-typescript, openapi-fetch и Orval помогает строить типобезопасные клиенты и устранять ошибки времени выполнения.
Реализация бинарного поиска в JavaScript
Статья охватывает итеративный и рекурсивный бинарный поиск в JavaScript, требование сортировки массива и случаи, когда бинарный поиск эффективнее линейного.
Шпаргалка по обработке текста в Linux
grep, sed, awk, ripgrep и jq ускоряют работу в терминале: разбор лог-файлов, извлечение столбцов и преобразование структурированных текстовых данных.
Как работает CSS Aspect Ratio
Свойство CSS aspect-ratio управляет размерами блоков, заменяет padding-трюк и предотвращает сдвиги макета при использовании object-fit во flexbox и grid.
Как реализовать Toast-уведомления в Vue
Реализация toast-уведомлений во Vue 3 через кастомный composable или Vue Toastification, с доступной разметкой и паттернами Composition API.
Основы кэширования, которые должен знать каждый веб-разработчик
Ускорение веб-приложений достигается грамотным применением browser cache, CDN cache, заголовков Cache-Control, ETag и методов валидации Last-Modified.
Отображение человекочитаемого времени в браузере
Форматирование UTC-меток времени в браузере через Intl.DateTimeFormat, Intl.RelativeTimeFormat, Intl.DurationFormat и Temporal без сторонних библиотек.
CSS Grid Lanes: Новый нативный Masonry-макет
Нативный masonry-макет на CSS Grid, статус поддержки браузерами и стратегии fallback для создания Pinterest-подобных раскладок без JavaScript-библиотек.
Лучшие Git UI для разработчиков
Сравнение Fork, GitKraken, Tower, Sourcetree, GitButler и Lazygit для выбора подходящего Git UI под задачи ветвления, rebase и разрешения конфликтов.
Как обработать Uncaught (in promise) TypeError
Исправление Uncaught in promise TypeError через блоки try catch, обработчики .catch и событие unhandledrejection для обработки ошибок Promise в браузере.
В чём разница между Map, Set и Object в JavaScript?
Сравнение Map, Set и Object в JavaScript помогает выбрать структуру данных с учётом обработки ключей, порядка итерации и производительности.
Использование Git Subrepos для управления большими кодовыми базами
Сравнение Git subrepo, Git submodules и Git subtree для управления общим кодом; статья помогает выбрать подходящий vendoring-процесс для команды.
Как разместить Google Fonts локально в WordPress
Размещение Google Fonts локально в WordPress через Font Library, загрузку WOFF2 или плагины устраняет сторонние подключения и упрощает соответствие GDPR.
Разработка базы данных по принципу Schema-First с Drizzle
Подход schema-first в Drizzle ORM делает TypeScript источником истины, согласуя структуру базы данных с типами приложения и предотвращая ошибки в рантайме.
Почему zsh медленно запускается (и как это исправить)
Профилирование запуска zsh, выявление медленных плагинов и проблем ленивой загрузки nvm, применение исправлений для сокращения задержек старта оболочки.
Использование Laravel с Vue для Full-Stack приложений
Статья показывает, как строить full-stack приложения на Laravel и Vue 3 с Inertia.js, Vite и Pinia, и когда этот стек подходит для архитектуры проекта.
Как предотвратить двойную отправку форм
Предотвращение двойной отправки форм через отслеживание состояния на клиенте, debouncing и серверные idempotency-токены для защиты от дублирующих заказов.
Можно ли использовать Notion в качестве бэкенда для сайта?
Разбор Notion API как headless CMS с учётом rate limits, истекающих URL файлов и особенностей кеширования в Next.js для оценки применимости в проекте.
Предотвращение FOUC в современных frontend-приложениях
Устранение FOUC в React и Next.js через инлайнинг критического CSS, извлечение стилей при SSR, управление font-display и порядок гидратации.
Плавные асинхронные переходы в React 19
Асинхронные переходы в React 19 убирают ручную логику состояния загрузки; startTransition и useOptimistic упрощают отправку форм и мутации данных.
Что на самом деле имеют в виду под «10x-разработчиком»
Реальный смысл 10x-разработчика выходит за рамки скорости кода: leverage, менторство, оценка AI и поддерживаемый код определяют подлинный вклад.
Express vs Hono: Что выбрать?
Сравнение Express и Hono по целевым платформам развёртывания, поддержке TypeScript и глубине экосистемы для выбора подходящего Node.js-фреймворка.
Генерация уникальных идентификаторов с помощью Web Crypto API
Метод crypto.randomUUID из Web Crypto API генерирует безопасные UUID, соответствующие стандарту RFC, в современных браузерах без зависимостей и риска коллизий.