JavaScript for Devs – Telegram
JavaScript for Devs
712 subscribers
34 photos
11 videos
1 file
43 links
По сотрудничеству пишите в личные сообщения канала.
Download Telegram
🕵️‍♂️ Supply Chain атака через NPM снова в деле

На днях произошла одна из крупнейших атак на NPM за последнее время — скомпрометирован аккаунт одного из известных авторов пакетов (да, через обычный фишинг), и в результате зловредный код оказался в десятках популярных пакетов, включая is-arrayish.

Через цепочку зависимостей под угрозой оказались сотни тысяч других пакетов — а значит, и тысячи проектов.

Что делает вредонос? Если вы используете один из заражённых пакетов в браузере (например, тот же is-arrayish), скрипт:
🟣 Подменяет fetch, XMLHttpRequest и window.ethereum.request;
🟣 Тихо перехватывает транзакции;
🟣 Заменяет адрес назначения на «похожий» адрес злоумышленника.

То есть вы решите отправить парочку ETH себе — в итоге... они придут уже не на ваш кошелёк.

Список наиболее популярных зараженных пакетов (более двух миллиардов загрузок в неделю):

backslash (0.2.1);
chalk-template (1.1.1);
supports-hyperlinks (4.1.1);
has-ansi (6.0.1);
simple-swizzle (0.2.3);
color-string (2.1.1);
error-ex (1.3.3);
color-name (2.0.1);
is-arrayish (0.3.3);
slice-ansi (7.1.1);
color-convert (3.1.1);
wrap-ansi (9.0.1);
ansi-regex (6.2.1);
supports-color (10.2.1);
strip-ansi (7.1.1);
chalk (5.6.1);
debug (4.4.2);
ansi-styles (6.2.2);
color (5.0.1).


Источник.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥3🤯2😱2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6👍3🔥1
🤔 Почему браузеры ограничивают JavaScript таймеры?

Команда JavaScript for Devs подготовила перевод статьи о том, почему браузеры намеренно замедляют выполнение setTimeout и других таймеров.

Автор объясняет, как это связано с защитой пользователей, рассказывает о своём бенчмарке разных подходов (setTimeout, MessageChannel, scheduler.postTask) и делает прогноз, какие таймеры будут использоваться в будущем.

📚 Подробности на Хабр: https://habr.com/ru/articles/945872/
👍4🔥3🤔2
🫡 Еженедельный дайджест №1

Для тех, кто был слишком занят на неделе или просто пропустил некоторые посты, публикуем дайджест!

Статьи:
Google Chrome исполнилось 17 лет: история браузера и его будущее
Кэширование DNS в NodeJS
Почему браузеры ограничивают JavaScript таймеры?

Новости:
Supply Chain атака через NPM снова в деле

Самый популярный комментарий этой недели – комментарий к статье "Google Chrome исполнилось 17 лет: история браузера и его будущее" от пользователя @Einherjar:

"Если функция полезна только Chrome, но вредит открытому вебу — мы её пересматриваем. Chrome всё больше будет становиться умным ассистентом для жизни в интернете: помогать справляться с потоком информации"
Ага, например возможность установить uBlock Origin, капец как вредит открытому вебу и особенно (!) мешает справляться с потоком информации. Этому челу бы в политики идти, лицемерия и вранья просто через слово.
Прочитав статью задонатил мозилле - вот мой подарок гуглхрому


@js_for_devs
👍52🔥2
💀 Вам больше не нужен JavaScript

Команда JavaScript for Devs подготовила перевод статьи о том, как CSS и HTML могут заменить значительную часть JavaScript.

Автор делится взглядом на веб как на искусство, показывает возможности современных фич CSS — от вложенности и @starting-style до динамических viewport-единиц, — и доказывает, что сайты могут быть быстрыми, красивыми и интерактивными даже без JS.

📚 Подробности на Хабр: https://habr.com/ru/articles/946498/
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯4👍3🔥2
🔑 Caps Lock + пароли = боль. Вот решение

Вы когда-нибудь набирали пароль, он не подходил, а потом оказывалось, что включён Caps Lock? В обычных инпутах это видно сразу, но в type="password" — сюрприз!

Проблема простая: пользователь не понимает, что пароль неверный, потому что регистр был включён. Итог — раздражение, лишние попытки, и неверный UX.

Хорошая новость — это легко отловить в браузере! Используйте KeyboardEvent.getModifierState('CapsLock') и покажите подсказку:


document.querySelector('input[type=password]')
.addEventListener('keyup', e => {
const capsLockOn = e.getModifierState('CapsLock');
if (capsLockOn) {
console.warn('Caps Lock is ON!');
}
});


А getModifierState умеет определять не только Caps Lock, но и NumLock, ScrollLock, Fn и даже Super (да, та самая Win/Command-клавиша).

#js_tips@js_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥42
😎 Как Node.js выжимает максимум из I/O в 2025 году

Команда JavaScript for Devs подготовила перевод статьи о том, как Node.js выжимает максимум из I/O в 2025 году.

В ней подробно объясняется цикл событий, порядок фаз и то, как правильно писать код, чтобы серверы оставались отзывчивыми даже под нагрузкой.

📚 Подробности на Хабр: https://habr.com/ru/articles/947524/
🔥52👍2
JavaScript всё ещё в топ-6, но теряет позиции

JavaScript держится на 6-м месте TIOBE Index с долей 3.22%, но за год просел на −0.70%. Вспомним, что в 2005 он был всего на 11-й позиции — путь наверх он прошёл впечатляющий.

🤔 Как думаете, сможет ли JS удержаться в топ-10 ещё 10 лет — или его место займёт TypeScript?

Источник.

#news@js_for_devs
🔥42👍2👏2
😵 React-монополист: как мы сами убиваем развитие фронтенда

Выбор React «по умолчанию» тормозит инновации, мешает развитию альтернативных фреймворков и превращает всю экосистему в монокультуру.

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


📚 Подробности на Хабр: https://habr.com/ru/articles/948072/
👍4🔥3👏3
🫡 Еженедельный дайджест №2

Для тех, кто был слишком занят на неделе или просто пропустил некоторые посты, публикуем дайджест!

Вам больше не нужен JavaScript
Caps Lock + пароли = боль. Вот решение
Как Node.js выжимает максимум из I/O в 2025 году
JavaScript всё ещё в топ-6, но теряет позиции
React-монополист: как мы сами убиваем развитие фронтенда

Самый популярный комментарий этой недели – комментарий к статье "Вам больше не нужен JavaScript" от пользователя @Nurked:

Хватит бухтеть. В моём детстве это было $() и люди не могли отличить JS от JQuery.


@js_for_devs
🔥53👍3
🔥 Как Shopify перевела свои крупнейшие приложения на новую архитектуру React Native

Команда JavaScript for Devs подготовила перевод кейса Shopify о миграции их крупнейших приложений на новую архитектуру React Native.

Результат впечатляет: еженедельные релизы не остановились, стабильность сохранилась, а производительность выросла.

📚 Подробности на Хабр: https://habr.com/ru/articles/949002/
🔥62👍2
🎨 Весь сайт на SVG? Да, такое тоже бывает!

Иногда интернет подкидывает настоящие артефакты — вот, например, сайт, который полностью сделан на SVG. Не «фон в SVG», не «картинки», а всё: текст, ссылки, меню — всё векторное.

Есть меню с «Home», «Stuf» и «About» в виде кликабельных элементов. Внизу есть заметки: автор честно предупреждает, что неправильное использование SVG может привести к «раздутым» страницам, и рассказывает, что для корректного отображения лучше использовать браузеры с Gecko 1.9+ (то есть Firefox 3.0 и новее).

Сайт выглядит как эксперимент из начала 2010-х. Пример того, как можно делать веб «не как все» :)
🔥7👍2😁21
🙈 CSS, который все ненавидят: sin() и cos()

Команда JavaScript for Devs подготовила перевод статьи о том, почему тригонометрические функции стали «most hated» возможностью CSS и как их можно использовать с пользой.

Мы разберёмся, что делают sin() и cos(), и посмотрим на практические примеры: от круговых раскладок до затухающих анимаций.

📚 Подробности на Хабр: https://habr.com/ru/articles/949004/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥42
🤔 Сколько трафика выдержит сайт на Next.js: нагрузочные тесты, SSR и предрендеринг

Разбираемся, сколько трафика способен выдержать сайт на Next.js.

В статье подробно рассказывается о результатах нагрузочного тестирования, сравнении VPS и выделенного сервера, различиях между предрендерингом и SSR и о том, почему для проектов с возможными всплесками трафика предрендеринг может спасти, а SSR — стать бутылочным горлышком.

📚 Подробности на Хабр: https://habr.com/ru/articles/949008/
🔥62👍1
The Expert Guide to Next.js Performance Optimization [2025].pdf
1.6 MB
Нашли отличный гайд по прокачке Next.js

Подробное руководство по оптимизации производительности: от код-сплиттинга и стриминга до работы с Web Vitals и измерением реальной скорости загрузки.

Сохраняйте, чтобы не потерять!
🔥6👍32