Web-разработка

Все что касается web-разработки: Front end, Back end, Full stack; HTML, CSS, JavaScript, фреймворки, технологии, безопасность и многое другое!

Эта информация навсегда изменит ваше отношение к коду JavaScript

Эта информация навсегда изменит ваше отношение к коду JavaScript

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

Совместное использование кода в микросервисах и микрофронтендах: в чем разница

Принцип совместного использования кода сегодня активно используется при разработке как клиентской, так и серверной части приложений. Разбираемся в преимуществах, недостатках и особенностях такого подхода.
7 советов по очистке кода React

7 советов по очистке кода React

В этой статье собраны семь практических рекомендаций, помогающих создавать чистый и поддерживаемый код React.
Используем ShakaPlayer в LightningJS

Используем ShakaPlayer в LightningJS

Хотите интегрировать ShakaPlayer в приложение Lightning для управления воспроизведением? Изучите краткое руководство по расширению стандартного медиаплеера в Lightning и использованию его с ShakaPlayer.
Обзор JavaScript на основе диалога с ChatGPT

Обзор JavaScript на основе диалога с ChatGPT

Предлагаем вам обзор JavaScript, составленный по материалам интервью с ChatGPT. ИИ-модель продемонстрировала свои уникальные возможности, предоставив развернутые естественные ответы на 12 непростых вопросов.
TypeScript: продвинутые типы и их скрытые возможности

TypeScript: продвинутые типы и их скрытые возможности

Признанный во всем мире TypeScript поражает своими возможностями. Но все ли из них вам известны? Погрузитесь в систему TS, чтобы открыть для себя новые возможности использования свойств-аксессоров, условных типов, вывода и рекурсии типов.
8 полезных команд NPM для фронтенд-инженера

8 полезных команд NPM для фронтенд-инженера

После ознакомления с этими техниками вам останется жалеть лишь об одном - о том, что не освоили их раньше. Одни из них помогут сэкономить много времени и сил, а другие просто поднимут настроение.
Советы по созданию хорошего дизайна API

Советы по созданию хорошего дизайна API

Систематизируем некоторые общие правила дизайна API в современную эпоху, которые избавят от базовых "подводных камней" при их разработке.
7 способов сократить код JavaScript

7 способов сократить код JavaScript

Сокращение JS-кода - один из базовых методов его оптимизации. Им должен овладеть каждый профессиональный программист, поскольку компактный формат лучше читается и ускоряет загрузку страниц. Предлагаем 7 наиболее эффективных и часто используемых приемов сокращения JS-кода.
Как упростить автоматизированное тестирование компонентов React

Как упростить автоматизированное тестирование компонентов React

Чтобы создать надежное ПО, нужен надежный тест. Рассказываем о тестировании приложений React: как устранить распространенные проблемы и ускорить этот процесс.
TypeScript: разница между типами any и unknown

TypeScript: разница между типами any и unknown

Чем тип any отличается от unknown? Рассмотрим нюансы их использования в описании неизвестного значения и утверждении типа.
Кэширование с помощью Redis и Node.js

Кэширование с помощью Redis и Node.js

Redis - идеальный выбор как для хранения структур данных типа "ключ-значение", так и для кэширования. Из этого простого руководства вы узнаете, как выполнить подключение бэкенда Node.js к Redis и кэшировать данные.
10 самых серьезных ошибок в UX/UI-дизайне

10 самых серьезных ошибок в UX/UI-дизайне

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

Схватка “рекурсия против циклов” на арене JavaScript

Бой из пяти раундов между рекурсией и циклами за титулы "самый лаконичный", "самый понятный" и "самый быстрый." На кого в этих категориях поставите вы?
Как создать многопользовательский чат с помощью WebSocket за 10 минут

Как создать многопользовательский чат с помощью WebSocket за 10 минут

На сегодняшний день WebSocket - лучшее решение для веб-сервисов, работающих по технологии клиент-сервер в реальном времени. Предлагаем краткое руководство по созданию многопользовательского чата с помощью WebSocket.
Как использовать React в приложениях Angular

Как использовать React в приложениях Angular

Если вы программист, будьте готовы столкнуться с самыми разнообразными кейсами в своей практике. Может случиться, что вам нужно будет воспользоваться React в приложении Angular. Сегодня расскажем, как это сделать.
Почему NestJS  -  лучший фреймворк Node.js для микросервисов

Почему NestJS  —  лучший фреймворк Node.js для микросервисов

JavaScript является одним из самых популярных языков программирования, поэтому в качестве бэкенда часто выбирают Node.js. Сегодня поговорим о том, какой из фреймворков Node.js оптимален для микросервисов.
7 правил ESLint, рекомендуемых для проектов TypeScript/React

7 правил ESLint, рекомендуемых для проектов TypeScript/React

Хотите, чтобы на выполнение и проверку кода уходило меньше времени и сил? Ознакомьтесь с 7 правилами ESLint, рекомендуемыми для проектов TypeScript/React. Они существенно улучшат код и сэкономят ваше время.
Создаем первый «Astroвной» проект

Создаем первый «Astroвной» проект

Сделаем блог с «островом интерактивности», полем поиска в реальном времени и индексатором. Подключим настаиваемую интеграцию для индексирования каждого поста и расширения поведения на этапах процесса сборки.
5 тегов HTML, о которых вы могли не знать

5 тегов HTML, о которых вы могли не знать

Предлагаем вашему вниманию 5 недооцененных HTML-тегов. Не каждый разработчик знаком с ними, хотя они очень полезны и удобны. И вы наверняка пожалеете, что не знали их раньше.
Будьте благодарны за массивы JavaScript: сравнение с языком C

Будьте благодарны за массивы JavaScript: сравнение с языком C

Изучение того, как массивы и простые методы типа .push() работают в языках более низкого уровня, может значительно углубить понимание JavaScript и вызвать признательность за его чудо-массивы.
Анализ работы Guess.js в приложении Angular

Анализ работы Guess.js в приложении Angular 

Познакомимся с библиотекой Guess.js и посмотрим, насколько качественно она выполняет предварительную загрузку страниц в приложении Angular.
7 самых популярных библиотек React

7 самых популярных библиотек React

Оптимизируйте разработку с помощью наиболее востребованных библиотек React. По количеству звезд на GitHub они опережают остальные библиотеки, а значит на них стоит обратить внимание.
Разделение кода в Next Js

Разделение кода в Next Js

Приложение слишком долго загружается? Узнайте о решении этой проблемы с помощью разделения кода в Next JS, и ваша загрузка будет проходить значительно быстрее.
Как создать Chrome-расширение для приложения с прогнозом погоды

Как создать Chrome-расширение для приложения с прогнозом погоды

Хотите создать простое веб-приложение, чтобы быстро узнавать прогноз погоды? Воспользуйтесь доступным руководством по разработке Chrome-расширения для приложения с прогнозом погоды (с полным исходным кодом).
5 популярных пакетов и фреймворков Node.js

5 популярных пакетов и фреймворков Node.js

Трудно представить современного разработчика приложений, который никогда не слышал о Node.js. Сегодня рассмотрим наиболее популярные пакеты и фреймворки Node.js, которые помогают специалистам создавать проекты.
Как ускорить сайт с помощью Varnish HTTP Cache и Docker

Как ускорить сайт с помощью Varnish HTTP Cache и Docker

Полная инструкция с наглядным описанием методики, необходимой конфигурации и настроек, а также бенчмарками.
Как создать планировщик по управлению недвижимостью с помощью Bryntum и ванильного JavaScript

Как создать планировщик по управлению недвижимостью с помощью Bryntum и ванильного JavaScript

Разработка приложения-планировщика - интересное занятие. Мало кто знает, что такой продукт можно создать и с помощью ванильного JavaScript. Сегодня посмотрим, как сконструировать планировщик по управлению недвижимостью.
Как сократить время начальной загрузки веб-приложения

Как сократить время начальной загрузки веб-приложения

Время начальной загрузки сильно влияет на первое впечатление пользователя о веб-приложении. Предлагаем руководство по оптимизации этого показателя.
Почему стоит использовать обратные вызовы и асинхронный код на NodeJS

Почему стоит использовать обратные вызовы и асинхронный код на NodeJS

Предлагаем вариант сценария, в котором повышение производительности приложения было достигнуто благодаря использованию событийного цикла в NodeJS.
Шаблон проектирования "Цепочка ответственности" в TypeScript

Шаблон проектирования “Цепочка ответственности” в TypeScript

Нужно уменьшить зависимость между клиентом и обработчиками? Хотите реализовать принцип единственной ответственности, а заодно принцип открытости/закрытости? Во всех этих случаях выручит шаблон проектирования "Цепочка ответственности".
Как отследить событие закрытия браузера и вкладки с помощью JavaScript

Как отследить событие закрытия браузера и вкладки с помощью JavaScript

Вам нужно отследить событие закрытия браузера или вкладки, чтобы предупредить пользователя о любых несохраненных изменениях на веб-странице? Предлагаем пошаговый алгоритм этой операции.
Детальное исследование 3 подводных камней React, с которыми сталкиваются разработчики

Детальное исследование 3 подводных камней React, с которыми сталкиваются разработчики

Прислушайтесь к советам опытного программиста. Они позволят понять, насколько хорош ваш код, а также помогут обойти 3 главных подводных камня программирования с React.
Как улучшить производительность Jest в средах CI с использованием TypeScript

Как улучшить производительность Jest в средах CI с использованием TypeScript

Являетесь поклонником Jest? Узнайте, как можно улучшить тестирование проектов и избежать ошибок, связанных с памятью.
Как ускорить full-stack разработку, не создавая API

Как ускорить full-stack разработку, не создавая API

Разберемся, как повысить продуктивность за счет автоматизации всех взаимодействий между клиентом и сервером. Большая история проб, ошибок и поисков правильного решения в одной маленькой статье.
Meteor вместо Next.js: создаем NFT-маркетплейс

Meteor вместо Next.js: создаем NFT-маркетплейс

Хотите создать собственную версию NFT-маркетплейса, добавив в него новые функциональные возможности? Узнайте о том, как, используя Meteor вместо Next.js в качестве фреймворка, можно разрабатывать Web3-приложения.
Как использовать JavaScript для сокращения HTML-кода

Как использовать JavaScript для сокращения HTML-кода

Как написать эффективный и легкий для отладки код? Это задача, над которой бьются многие программисты. Одним из ее решений является использование JavaScript. Посмотрите, как это можно сделать, на примере создания сайта-блога.
Lego-build: новое решение старой проблемы

Lego-build: новое решение старой проблемы

Lego-build - новый гибкий инструмент для фронтенд-разработчиков. Какую проблему он решает и чем превосходит существующие решения? Рассказывает один из его создателей.
Руководство по применению паттерна Event Bus в архитектуре React

Руководство по применению паттерна Event Bus в архитектуре React 

Подробно разберем паттерн проектирования Event Bus, попрактикуемся в создании и задействуем его в React.
Продвинутые методы программирования на JavaScript: сравнение элементов двух массивов

Продвинутые методы программирования на JavaScript: сравнение элементов двух массивов

Хотите писать более профессиональный код на JavaScript? Заметных успехов при сравнении двух массивов позволят добиться решения опытного разработчика.
Создание сайдбара с помощью HTML, CSS и JavaScript

Создание сайдбара с помощью HTML, CSS и JavaScript

Хотите разработать пользовательскую боковую панель с HTML, CSS и JavaScript? Этот простой и понятный гайд с примерами кода позволит вам создать с нуля боковую панель и настроить ее по своему усмотрению.
12 хуков React, которые должен знать каждый разработчик

12 хуков React, которые должен знать каждый разработчик

Используйте эти хуки React, чтобы сэкономить время и повысить свою продуктивность. Некоторые из них реально меняют правила игры.
8 советов по разработке на JavaScript, которые освободят вас от переработок

8 советов по разработке на JavaScript, которые освободят вас от переработок

Возьмите на заметку несколько полезных рекомендаций по разработке на JavaScript. Следуя им, вы будете прогрессировать, не перерабатывая при этом.
Создание готового к производству приложения React с помощью Next.js и Dokku

Создание готового к производству приложения React с помощью Next.js и Dokku

Хотите создать и запустить живое приложение React с минимальным бюджетом и возможностью масштабировать его в будущем? Воспользуйтесь руководством опытного разработчика ПО, успешно реализовавшего эту задачу.
Сравниваем REST, GraphQL и gRPC

Сравниваем REST, GraphQL и gRPC

Как лучше организовать обмен сообщениями между сервером и клиентом в приложении? Проведем детальное сравнение 3 наиболее популярных технологий разработки API.
Как использовать ESLint, чтобы повысить качество кода JavaScript и TypeScript

Как использовать ESLint, чтобы повысить качество кода JavaScript и TypeScript

Улучшите качество кода JS/TS с помощью ESLint. Благодаря этому инструменту, код будет выполнен в едином стиле и без ошибок. Его будет легче просматривать и поддерживать, что благоприятно скажется не только на судьбе вашего проекта, но и на вашей карьере.
Как использовать типы пересечения в TypeScript: советы от профессионала

Как использовать типы пересечения в TypeScript: советы от профессионала

Предлагаем подробное руководство по использованию типов пересечения в TypeScript. Освоение этих типов позволит реализовать некоторые пользовательские виды утилит. Например, при реализации утилиты PartialByKeys можно сделать опциональными значения ключей, указанные в типе объекта.
Двоичный интерфейс приложения - родственник API с нижнего уровня

Двоичный интерфейс приложения — родственник API с нижнего уровня

Краткое ознакомление с ABI для тех, кто хочет более глубоко разобраться в принципах работы программного обеспечения. Здесь мы рассмотрим, что это за интерфейс, как он устроен, и в каких случаях играет важную роль.
Как написать тест-раннер в 80 строк кода на JavaScript/TypeScript

Как написать тест-раннер в 80 строк кода на JavaScript/TypeScript

Сделаем простой тест-раннер на nodejs с включением всех основных требований и почти без зависимостей. Разберем также самую интересную часть реализации - API на JavaScript из SWC.
Файл package-lock.json: полное руководство

Файл package-lock.json: полное руководство

Файл package.json - ключевой элемент баз кода для многих приложений, основанных на экосистеме Node.js. Это своего рода манифест проекта. Предлагаем подробный гайд по использованию этого файла и решению связанных с ним проблем.
7 способов создать приложение React

7 способов создать приложение React

Представляем лучшие методы, фреймворки и инструменты для создания приложений React. Некоторые из них предназначены для небольших сайтов и оптимизированы под быстрый запуск, другие - для платформ глобального масштаба, а третьи подойдут для решения любых задач.
Как повысить производительность бэкенд-приложений

Как повысить производительность бэкенд-приложений

Предлагаем 10 рекомендаций по повышению производительности бэкенд-приложений с помощью таких техник, как кэширование, объединение запросов, многопоточность, сжатие и прочих.
Как с помощью Sentry реализовать захват исключений фронтенда

Как с помощью Sentry реализовать захват исключений фронтенда

Как вовремя осуществить захват исключений? Как определить точное местоположение исключений и ошибок? Как своевременно получить уведомление после обнаружения аномалии? Все эти проблемы поможет решить Sentry - продвинутый инструмент отслеживания ошибок с открытым исходным кодом.
Создание базовых 3D-сцен с помощью Three.js

Создание базовых 3D-сцен с помощью Three.js

Продуманная 3D-графика радует глаз и вдохновляет на новые креативные разработки. Сегодня мы попробуем создать 3D-сцену, используя библиотеку Three.js.
11 новых возможностей JavaScript в ES13

11 новых возможностей JavaScript в ES13

Представляем новейшие возможности JavaScript в ES13. Используйте их, чтобы повысить свою производительность и писать более чистый код с высокой степенью лаконичности и ясности.
Как выбрать подходящую версию Node.js?

Как выбрать подходящую версию Node.js?

Node.js - популярный инструмент для разработки различных проектов. Поговорим о различиях между версиями LTS и Current в Node.js и о том, как выбрать подходящий вариант.
От джуниора до мидла: 7 советов для фронтенд-разработчиков

От джуниора до мидла: 7 советов для фронтенд-разработчиков

Обычно путь от новичка к разработчику среднего уровня занимает несколько месяцев. Можно ли его сократить? Что нужно делать в этот "переходный период"? Чему уделить особое внимание, а на чем не стоит зацикливаться? Воспользуйтесь рекомендациями опытного разработчика.
Анимация границ с помощью свойств CSS

Анимация границ с помощью свойств CSS

Движущиеся красочные элементы всегда привлекают внимание пользователей сайтов. Научимся создавать интересные анимированные границы с помощью CSS.
Как профессионально использовать сопоставимые типы TypeScript

Как профессионально использовать сопоставимые типы TypeScript

Хотите освоить сопоставимые типы TypeScript и понять, как работают встроенные в TypeScript типы утилит? Этот краткий обзор, подкрепленный анимационными вставками, поможет разобраться во всем этом.
Как защитить текст от комбинации Ctrl+F в браузере

Как защитить текст от комбинации Ctrl+F в браузере

До сих пор не существует простого способа скрыть содержимое веб-страницы от функции find-in-page. Тем не менее поиски обходных путей все еще ведутся.
Wasp  -  DSL-язык для современных веб-приложений

Wasp  —  DSL-язык для современных веб-приложений

Получив специальный доступ к альфа-версии незнакомого языка, любопытный программист сразу же начнет его тестировать. Вот что рассказывает один из разработчиков, опробовавших функционал нового языка Wasp.
Реализация слайдера изображений и текста на React.js с вариантами оптимизации

Реализация слайдера изображений и текста на React.js с вариантами оптимизации

Предлагаем возможность проверить свои знания и потренироваться на скорость в реализации слайдера изображений на React.js с разными вариантами оптимизации. Отсчет пошел!
Как преобразовать шестнадцатеричное число в десятичное в JavaScript

Как преобразовать шестнадцатеричное число в десятичное в JavaScript

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

Секреты разработки высокопроизводительных приложений и микросервисов

Архитектура на основе микросервисов все чаще используется при создании веб-приложений. Рассмотрим ее преимущества и рекомендации по реализации.
Возможности и перспективы WebAssembly

Возможности и перспективы WebAssembly

WebAssembly - прорывная разработка нашего времени - обладает огромным потенциалом. Однако это в основном академический проект. Не пора ли вывести WebAssembly в свет?
React в плагине Sketch: проблема загрузки исходных данных

React в плагине Sketch: проблема загрузки исходных данных

Вы наверняка сталкивались с проблемой загрузки исходных данных, когда UI React рендерится без данных Sketch при первом открытии окна плагина. Вот как можно решить эту проблему.
Как создать простой API с помощью Express и MongoDB

Как создать простой API с помощью Express и MongoDB

Создадим API с помощью Express, а для хранения данных будем использовать MongoDB. Чтобы следовать руководству, рекомендуется иметь базовые знания о JavaScript, MongoDB и Node.JS.
Как работает интернет: основы архитектуры веб-сетей

Как работает интернет: основы архитектуры веб-сетей

Каждому успешному разработчику современного ПО, во многом связанного с веб-сетями, необходимо иметь четкое представление о структуре сети интернет и взаимосвязях между ее компонентами. Помочь в этом и призван этот краткий обзор.
Адаптивный фавикон для современных веб-приложений на React

Адаптивный фавикон для современных веб-приложений на React

Адаптивные и динамические фавиконы позволяют React-проекту выделиться из общей массы и повысить качество пользовательского опыта. Рассказываем о том, как создавать SVG-фавиконы, а также о преимуществах их использования.
AlterNats - эффективный PubSub-клиент среды .NET. Как реализовать оптимизированное программирование сокетов в .NET 6

AlterNats — эффективный PubSub-клиент среды .NET. Как реализовать оптимизированное программирование сокетов в .NET 6

Как эффективно программировать сокеты? Рассказываем об основных принципах использования промежуточного ПО NATS.
Rust как часть микросервисной архитектуры

Rust как часть микросервисной архитектуры

Как включить Rust в приложение и использовать преимущества дифференцированной масштабируемости? Реализуем и развертываем в докере 3 микросервиса. Внутри - весь код и ссылка на репозиторий.
Как легко управлять зависимостями в монорепозитории JS

Как легко управлять зависимостями в монорепозитории JS

Уделим внимание одной из самых наболевших проблем монорепозитория - управлению зависимостями. Посмотрим, как с помощью инструментов с открытым исходным кодом - рабочие среды Pnpm/Yarn и Bit - можно элегантно решить эту задачу и значительно упростить работу с зависимостями.
Как развернуть веб-приложение Streamlit в сети: три простых способа

Как развернуть веб-приложение Streamlit в сети: три простых способа

Рассмотрим несколько вариантов развертывания веб-приложений Streamlit в облаке, которые позволяют легко, быстро, а также бесплатно делиться проектами с другими пользователями.
Как улучшить код на TypeScript: 5 рекомендаций

Как улучшить код на TypeScript: 5 рекомендаций

Чем опасен тип any и почему константные перечисления лучше обычных? Применим на Typescript новейший функционал JavaScript, освоим расширенные вспомогательные типы для преобразования почти всех основных типов.
Как уменьшить размер компонента React: 3 профессиональных приема

Как уменьшить размер компонента React: 3 профессиональных приема

Одними из основополагающих элементов в React являются компоненты. Поэтому для разработчика очень важна оптимизация их размера. Рассмотрим, как это можно сделать.
5 библиотек ведения логов для Node.js

5 библиотек ведения логов для Node.js

Обсуждаем, почему так важно вести логи, и разбираем популярные библиотеки, обеспечивающие эту возможность для приложений Node.js: Winston, Pino, Bunyan, Log Level и npmlog.
Переключатель темного режима в веб-приложении

Переключатель темного режима в веб-приложении

Краткая инструкция по добавлению в приложение функции подстройки под цветовую схему системы, а также переключателя для изменения этой схемы внутри самого приложения.
Экспериментируем с пользовательскими функциями JavaScript на Trino

Экспериментируем с пользовательскими функциями JavaScript на Trino

Как было бы здорово адаптировать Javascript к данным, а не приспосабливать данные к JavaScript. Что если создать простой коннектор Trino для выполнения произвольного Javascript на всей области данных? Действительно ли это хорошая идея? Выясним это вместе!
Как сократить ошибки в базе кода React

Как сократить ошибки в базе кода React

На примере практического опыта разработки разберем тему паттернов и антипаттернов в React, что позволит сократить количество допускаемых ошибок.
Как написать переключатель темы на базе файлов cookie с помощью CSS и ванильного JavaScript

Как написать переключатель темы на базе файлов cookie с помощью CSS и ванильного JavaScript

Показываем, как с легкостью создать механизм переключения на темную тему всего за пятьдесят две строчки кода.
Создание многократно используемых компонентов React оптимальным способом

Создание многократно используемых компонентов React оптимальным способом

Предлагаем практическое руководство по компонентно-ориентированной разработке. Следуя ему, вы получите многоразовые компоненты React.js, которые можно отдельно импортировать, обновлять и использовать для создания любого проекта.
Для подготовки к собеседованию: 10 задач по промисам JavaScript

Для подготовки к собеседованию: 10 задач по промисам JavaScript

Вам предстоит собеседование по JavaScript? Скорее всего, вас спросят о том, как использовать промисы. Эти задачи с пояснениями и иллюстрациями помогут к этому подготовиться.
Меняем Async/Await на Promises.allSettled() для ускорения API-вызовов в Node.JS

Меняем Async/Await на Promises.allSettled() для ускорения API-вызовов в Node.JS

Узнаем, откуда берется замедление при одновременном изменении более 50 записей и как в 10 раз ускорить операцию массового редактирования записей. Используем promise, чтобы не ждать возвращения каждого запроса на изменение, прежде чем делать следующий, и сэкономить много времени.
Расширение Chrome для поиска акций на eToro с помощью скринера акций FINVIZ

Расширение Chrome для поиска акций на eToro с помощью скринера акций FINVIZ

Больше не нужно переключать вкладки, чтобы узнать, есть ли конкретная акция на eToro. Представляем вашему вниманию расширение, которое сделает эту работу за вас!
Как обеспечить работу современного кода Javascript во всех браузерах

Как обеспечить работу современного кода JavaScript во всех браузерах

После введения ES6 в старых браузерах и JS-движках возникают проблемы с новыми функциями и синтаксическими конструкциями. Предлагаем простейшие способы разрешения этих проблем.
Настройка проекта TypeScript с помощью ESLint, Prettier и VS Code

Настройка проекта TypeScript с помощью ESLint, Prettier и VS Code

Собираетесь работать с проектом Typescript? Не забудьте настроить для него подходящую среду!
Web Speech API в JavaScript: от текста к речи

Web Speech API в JavaScript: от текста к речи

Практическое руководство по работе с Web Speech API в JavaScript. Рассказываем, как создать веб-страницу, реализующую преобразование текста в речь.
7 вопросов по фронтенд-разработке

7 вопросов по фронтенд-разработке

Хотите проверить, насколько вы продвинуты в области разработки пользовательского интерфейса? Попробуйте ответить на эти 7 вопросов (но не торопитесь заглядывать в подсказки).
4 недооцененных API браузера

4 недооцененных API браузера

Познакомимся с 4 полезными API браузера, которые лучше всегда держать под рукой : Battery API, IndexedDB API, Clipboard API и Page Visibility API.
Движки JavaScript. Часть 2: генерация кода и базовые оптимизации

Движки JavaScript. Часть 2: генерация кода и базовые оптимизации

В этой части продолжим разговор о том, как работают движки JavaScript. Поговорим о компиляторах, этапах создания кода и основных оптимизациях.
Как настроить Next.js на TypeScript, чтобы получить оценку в 100% от Google Lighthouse и Vercel Analytics

Как настроить Next.js на TypeScript, чтобы получить оценку в 100% от Google Lighthouse и...

Создаем прогрессивное веб-приложение с помощью Next.js и пытаемся достичь 100-процентной оценки от Google Lighthouse и Vercel Analytics. Проходим весь путь оптимизации проекта Next.js, который будет написан на TypeScript.
JavaScript 101: метод массива Reduce

JavaScript 101: метод массива Reduce

Представим метод reduce во всей красе: назначение, синтаксис, сценарии использования и преимущества, выделяющие его среди других методов массивов, таких как map и filter.
Движки JavaScript. Часть 1: парсинг

Движки JavaScript. Часть 1: парсинг

Что такое интерпретация и компиляция? Какие инструменты для этого используются? Как происходит парсинг на движках JavaScript? Обо всем этом поговорим в сегодняшнем материале.
Nexus  -  новый визуализатор дерева компонентов для Next.js

Nexus  —  новый визуализатор дерева компонентов для Next.js

Познакомимся с мощным фреймворком для разработки полного цикла от лица его создателей. Выясним его основные характеристики, принцип работы с кодовой базой и многое другое, а также узнаем, какой функционал планируется реализовать в будущем.
Библиотека Ethers.js: новичкам на заметку

Библиотека Ethers.js: новичкам на заметку

Познакомимся с библиотекой ethers.js и узнаем, как именно она обеспечивает взаимодействие с виртуальной машиной Ethereum в Remix.
Поверхностное и глубокое копирование в JavaScript

Поверхностное и глубокое копирование в JavaScript

Копирование переменных в JavaScript таит в себе немало подводных камней, особенно для начинающих программистов. Разбираемся, как использовать поверхностное и глубокое копирование, чтобы избежать досадных ошибок.
Основы разработки приложений: уровень клиента

Основы разработки приложений: уровень клиента

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

6 проверенных методов повышения безопасности Node.js

Беспокоитесь о том, как защитить приложения от рисков вредоносных атак? Предлагаем ознакомиться с шестью надежными способами повышения безопасности Node.js.
15 часто используемых методов массивов JavaScript

15 часто используемых методов массивов JavaScript

Массивы используются практически в каждом приложении, однако методы некоторых из них довольно запутаны. Эти 15 методов массивов стоит освоить, поскольку они часто применяются на практике.
Как создать приложение Todo на React

Как создать приложение Todo на React

Обучение лучше всего происходит на практике. Это руководство поможет познакомиться с ReactJS в процессе создания базового приложения Todo с полем для ввода элемента Todo и кнопкой для его удаления.
Принципы SOLID в React: так ли все с ними гладко?

Принципы SOLID в React: так ли все с ними гладко?

Принципы SOLID принято описывать только в положительном свете. Поэтому многие нюансы часто упускаются из виду. Сегодня поговорим о том, применимы ли вообще принципы SOLID в React-приложении и какими ключевыми особенностями обладает каждый из них.
Настраиваем автоматизированную модерацию с помощью OpenAI

Настраиваем автоматизированную модерацию с помощью OpenAI

Бьетесь над задачей максимизации пользовательского опыта? Воспользуйтесь инструментами, основанными на искусственном интеллекте.
Tensorflow

Автоматизация Doom с глубоким Q-обучением: реализация в Tensorflow

Введение Методы онлайнового обучения машин (ОО) — это семейство динамических алгоритмов обучения с подкреплением, которое стоит за кулисами многих достижений во всей области ИИ за последние десять...
Структуры данных: подход «разделяй и властвуй»

Структуры данных: подход «разделяй и властвуй»

При подходе «разделяй и властвуй» задача делится на мелкие подзадачи, каждая из которых решается независимо. При их делении на еще более мелкие подзадачи в конце концов настает момент, когда дальнейшее деление невозможно.