Category : javascript

javascript
i18n и l10n: Почему разработчикам стоит об этом знать — и как может помочь ИИ

Интернационализация (i18n) и локализация (l10n) часто кажутся проблемами “на потом” — пока внезапно не становятся срочными.Как разработчики, мы все делали что-то вроде:<button>Order now</button> Или в шаблоне:<p>Welcome back, {{ user.name }}!</p>Всё работает — пока команда не говорит: «Мы выходим на рынок Узбекистана, Казахстана и Ближнего Востока в следующем квартале.»И тут внезапно каждая хардкодная строка превращается в технический долг. Разработчики в панике вытаскив…

  • четверг, 7 августа 2025 г. в 00:00:06
javascript
React Custom Hook: useGeolocation

В этой серии статей мы отправимся в путешествие по миру пользовательских хуков React, открывая для себя их огромный потенциал для улучшения ваших проектов разработки. Сегодня мы сосредоточимся на хуке «useGeolocation», одном из многих тщательно разработанных хуков, доступных в коллекции пользовательских хуков React.Github: https://github.com/sergeyleschev/react-custom-hooks import { useState, useEffect } from "react" export default function useGeolocation(options) { const [loadin…

  • четверг, 7 августа 2025 г. в 00:00:05
javascript
FSD Forge: Как я создал небольшую CLI для Feature-Sliced Design и почему это было нужно

Привет, Хабр! Меня зовут Виктор, я являюсь Web разработчиком в MOEX. Программирую на TypeScript/Java и это моя первая статья, в которой я хочу поделиться историей создания fsd-forge — CLI-инструмента для упрощения работы с архитектурой Feature-Sliced Design (FSD) в проектах на React и TypeScript. В этой статье я расскажу, почему решил создать этот инструмент, как он устроен, какие проблемы решает, и какие уроки я вынес из процесса разработки.Что такое Feature-Sliced Design и зачем нужен CLI?Fea…

  • четверг, 7 августа 2025 г. в 00:00:04
javascript
Electron + microfrontends

Недавно на проекте столкнулся с необычной задачей - сделать из готового React веб-приложения десктопную версию на Electron. Что же тут необычного? А то, что наше веб-приложение построено на микрофронтенд архитектуре и располагается в трёх отдельных репозиториях. А общение между микрофронтендами происходит в runtime через HTTP. И тут начинаются сложности, так как для создания дистрибутива, Electron'у нужен доступ к исходникам всего приложения. Хотя Electron легко подружить с Webpack, как это…

  • среда, 6 августа 2025 г. в 00:00:08
javascript
Хватит мучить кандидатов: руководство как улучшить фронтенд-собеседования

Каждый фронтенд-разработчик хоть раз сталкивался с неадекватными вопросами на собеседованиях: алгоритмы на доске, задачи из учебников, размытые требования. В итоге компании месяцами ищут сотрудников, а кандидаты тратят время впустую. Давайте разберём, как проводить собеседования, чтобы действительно найти нужного специалиста.Шаг 1. Требования-абстракции: выберите ключевые навыкиНекорректный вариант: «Требуется Senior JS-разработчик с 5+ годами опыта». Почему это не подходит: Неясно, какие навык…

  • среда, 6 августа 2025 г. в 00:00:07
javascript
Книга: «Разработка фронтенд-приложений»

Наверняка вы неоднократно сталкивались с ситуацией, когда начинали разработку фронтенд‑приложения на React и вроде всё было очевидно, но через некоторое время чувствовали, что уже запутались, где какой компонент. И в такой ситуации приходится вновь и вновь смотреть код, чтобы вспомнить, где в иерархии находится определенный компонент. Или, например, начинаете создавать компонент и задумываетесь на время: — «А с чего начать и какой должна быть реализация?», а реализовав компонент понимаете, что …

  • среда, 6 августа 2025 г. в 00:00:05
javascript
Чем заменить Lodash. Реальные примеры

Всем, привет. Меня зовут Виталий Киреев и я руковожу исследованиями и разработкой в IT-компании. Компания существует уже много лет и в разработке накопилось довольно много Legacy-кода. Мы регулярно проводим аудит на предмет использования устаревших библиотек и меняем их, если в этом есть необходимость. В этой статье я расскажу о практических кейсах, с которыми мы столкнулись при замене широко известной библиотеки Lodash для Javascript. Зачем менять Lodash?Сразу оговорюсь, что на Хабре есть оче…

  • среда, 6 августа 2025 г. в 00:00:05
javascript
Паттерны современного Node.js (2025)

Node.js претерпел впечатляющее преобразование с момента своего появления. Если вы пишете на Node.js уже несколько лет, то, вероятно, сами наблюдали эту эволюцию - от эпохи колбэков и повсеместного использования CommonJS до современного, чистого и стандартизированного подхода к разработке.Изменения затронули не только внешний вид - это фундаментальный сдвиг в самом подходе к серверной разработке на JavaScript. Современный Node.js опирается на веб-стандарты, снижает зависимость от внешних библиот…

  • вторник, 5 августа 2025 г. в 00:00:06
javascript
Пока, dual packaging: в каком формате публиковать npm-библиотеки

Уже 10 лет в JS-экосистеме воюют два формата модулей: CommonJS и ES Modules. Чтобы и получить плюшки ESM, и не распугать пользователей, npm-пакеты часто используют dual packaging: собирают код в оба формата. Это решает одну проблему, но создает несколько новых:Мы собираем наш код 2 раза (а хотелось бы вообще не собирать).Настроить двойную сборку не супер сложно, но все таки сложнее, чем вообще не настраивать.Мы публикуем в 2 раза больше кода (и потом жалуемся на жирые node_modules)dual package …

  • вторник, 5 августа 2025 г. в 00:00:05