JavaScript for Devs – Telegram
JavaScript for Devs
712 subscribers
34 photos
11 videos
1 file
43 links
По сотрудничеству пишите в личные сообщения канала.
Download Telegram
🔥 Обзор новых возможностей CSS в Safari 26

Safari 26 вышел, и это одно из самых содержательных обновлений WebKit за последние годы.

В релизе — 75 новых возможностей и 171 улучшение. Многие фичи уже были в Chrome, но теперь они становятся доступными и в Safari, что важно для кросс-браузерного использования.

Главные изменения в части CSS:

• Anchor positioning. Теперь Safari поддерживает привязку абсолютно позиционированных элементов к другим узлам. Это делает возможным реализацию тултипов и попапов на чистом CSS.

• Scroll-linked animations. Появились animation-timeline с функциями scroll() и view(), а также animation-range. Анимации можно привязывать к прокрутке или к появлению элемента во вьюпорте — без JS.

• progress(). Новая функция, которая вычисляет прогресс в диапазоне и умеет работать со смешанными единицами измерения (px + vw и т.п.). Упрощает сценарии, которые раньше приходилось собирать через calc() или тригонометрию.

• Самовыравнивание при absolute. В absolute-контейнерах теперь можно использовать align-self и justify-self (включая anchor-center). Это решает часть типичных задач центрирования без translate-хаков.

• contrast-color(). Функция автоматически выбирает чёрный или белый текст для заданного фона. Реализация пока ограниченная, но впервые доступна в стабильном релизе Safari.

• text-wrap: pretty. Улучшает разбиение текста на строки: уменьшает количество коротких строк и сглаживает «рваный» край. Safari идёт дальше текущей реализации Chrome.


Это только часть изменений. Полный разбор со множеством демо — в статье.

@js_for_devs
3👍3🔥3😁1
Как выбраться из гравитации фреймворков?

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

Автор убеждён: браузеры развиваются быстрее, чем экосистемы вокруг них, а зависимость от React и других инструментов тормозит инновации. Пора снова смотреть на веб как на платформу, а не как на “внутренность” фреймворка.

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


📚 Читать на Хабр: https://habr.com/ru/articles/968510/
👍63🔥3
🤑 Anthropic купили Bun – runtime среду для JavaScript и TypeScript

Этот инструмент превосходит Node.js по скорости и уже использовался в Claude Code (а еще им пользуются, например, Midjourney). Теперь, после покупки, Bun интегрируют в агента еще глубже: это означает, что нас ждет ускорение и, возможно, какие-нибудь новые фичи для отладки/тестирования.

Anthropic обещают, что Bun останется в опенсорсе под MIT-лицензией, и они продолжат в него инвестировать.

@js_for_devs
😱64👍4🔥1
🥳 Сегодня JavaScript исполняется 30 лет

В этот знаменательный день несколько интересных фактов о языке:

• JS написан за 10 дней
• Автор языка не поддерживает LGBT движений
• Изначально язык назывался Mocha
• Название языка нагло слизано у Java ради хайпа

@js_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉8🔥4😁3
⚡️ TypeScript 7 всё ближе — нативный компилятор уже почти production-ready

Команда TS показала большой прогресс Project Corsa — переписанного в нативный код компилятора и language service.

Новый tsgo тоже догнал функциональность tsc: есть --incremental, project references и --build. На реальных кодовых базах ускорение доходит до 8–10×, а параллельная архитектура делает сборки почти мгновенными.

TS 6.0 станет последним релизом на JavaScript — дальше весь стек переезжает в нативную ветку. Генерация JS и API ещё догоняются, но проверка типов уже даёт почти полное совпадение с 5.9, так что можно смело начинать пробовать.

📚 Полный разбор здесь: https://habr.com/ru/articles/973424/

@js_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥4🎉2
⚡️ Вышел WebStorm 2025.3

В новом релизе JetBrains усилили работу с TypeScript-проектами, улучшили поддержку монорепозиториев и добавили полноценную интеграцию ИИ-агентов прямо в IDE.

Коротко — самое важное:

— Новая тема интерфейса Islands по умолчанию.
— Улучшенное разрешение модулей и поддержка монорепозиториев (customConditions, exports, pnpm).
— Удалённая отладка JavaScript в WSL, Docker, SSH и других средах.
— Обновлённый AI Assistant: теперь Junie + Claude Agent прямо в IDE.
— Полная поддержка Vitest 4 с новым API репортинга.
— Виджет Prettier и автоформатирование при вставке.
— Централизованные настройки сред выполнения Node.js, Bun и Deno.

📚 Читайте и комментируйте на Хабр.

@js_for_devs
👍62🔥2
⚡️ 37signals показывают, на что способен нативный CSS

Три их продукта (Campfire, Writebook, Fizzy) построены на чистом CSS и при этом закрывают реальные сложные интерфейсы: канбан, drag-and-drop, диалоги, темы, адаптивность. Архитектура максимально простая: плоская структура файлов, кастомные свойства, OKLCH, container queries, CSS Layers, селектор :has() и color-mix(). Никакой сборки, никаких утилитарных фреймворков.

Cовременные возможности CSS уже перекрывают большинство причин, ради которых раньше использовали препроцессоры и Tailwind. Управление состоянием, тёмная тема, адаптивность, анимации — всё решается декларативно и масштабируется без инструментальной надстройки.

Полный разбор всех приёмов, и примеров кода читайте в статье на Хабре.

@js_for_devs
🔥5👍42
🧱 CSS Grid Lanes — нативные masonry-раскладки без JavaScript

Masonry в вебе годами делали через JS-библиотеки с костылями для доступности, фокуса и производительности. Grid Lanes наконец закрывают эту историю на уровне CSS.

Новый режим display: grid-lanes расширяет CSS Grid и позволяет браузеру самому раскладывать элементы по «полосам» — туда, где контент оказывается ближе к верху.

В итоге:
— никакого JavaScript
— корректный tab-order и accessibility
— адаптивность без media и container queries

При этом сохраняется вся мощь Grid: переменная ширина колонок, растягивание элементов, явное позиционирование, смена направления раскладки. Плюс появляется новый параметр item-tolerance, который позволяет контролировать, насколько агрессивно элементы «перестраиваются» между полосами — важная деталь для UX и клавиатурной навигации.

📚 Читайте и комментируйте на Хабр.

@js_for_devs
👍6🔥63🤔1
🤜 Наткнулись на сравнение Go и TypeScript

— В статике Go и Bun почти равны, Bun доходил до ~200k RPS
— С БД Go стабильнее: ниже latency, аккуратный пул, ~84k RPS
— Bun сильнее нагружает Postgres из-за агрессивных коннектов

Отдельно занятный момент: в комментарии пришёл автор фреймворка для Bun. Он отметил, что тест можно ещё улучшить: автоматический роутинг через Bun.serve.routes даёт до ~15% прироста, продакшен-сборка через bun build --compile заметно снижает память (до ~40%), а new Date(Date.now()) вообще избыточен и слегка бьёт по перфу.

То есть Bun можно выжать ещё сильнее — но в stateful-кейcах Go всё ещё выглядит надёжнее.

@js_for_devs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥21
🧩 RSC Explorer: что реально передаётся по сети в React Server Components

RSC-протокол — внутренняя и почти недокументированная часть React, из-за чего даже опытные пользователи Server Components часто смутно представляют, что именно стримится между сервером и клиентом. На фоне недавнего интереса к безопасности это стало особенно заметно.

RSC Explorer — небольшой open-source инструмент, который пошагово показывает, как React сериализует и восстанавливает React-деревья, а не HTML или строки. Видно стриминг, “дыры” в async-дереве, ссылки на client components, Server Actions и то, как обновляется серверный UI без сброса клиентского состояния.

Очень наглядный способ понять, как RSC работают под капотом.

👉 Подробный разбор с примерами — в новой статье на Хабре.
👍72🔥2
Forwarded from AI for Devs
🎄 Итоги года 4Devs 2025

На прошлой неделе Habr опубликовал итоги года — и наш проект попал в ТОП-2 среди UGC-авторов (независимых, не аффилированных с компаниями) и в ТОП-8 overall!

Учитывая, что активно публиковаться мы начали только в сентябре, результат за один квартал, на мой взгляд, более чем достойный. Проект изначально запускался как эксперимент — и теперь уже можно уверенно сказать, что эксперимент удался.

В следующем году постараемся как минимум сохранить текущие темпы, а как максимум — заметно их преумножить. Если вы следите только за одним из каналов проекта, напоминаю полный список наших ресурсов:

@ai_for_devs — флагман проекта. Неудивительно, учитывая взрывной рост прикладного ИИ именно для разработчиков
@go_for_devs — второй по популярности, но самый активный по вовлечённости
@python_for_devs — канал, с которого всё началось, и этим он прекрасен
@js_for_devs — здесь всё ещё впереди. Если вы из frontend-мира — добро пожаловать, догоним остальных 🙂

Суммарно за проектом уже следит более 6.5 тысяч человек!

Поздравляю всех с наступающим Новым годом и желаю профессионального роста и сильных результатов в 2026!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍52
⚙️ Инструменты для JavaScript больше не пишут на JavaScript — и вот почему это осознанный выбор

За последние пару лет экосистема JS радикально сменила курс: бандлеры, линтеры и компиляторы массово переезжают на Rust, Go и Zig.

Причина проста. Современные JS-проекты — это тысячи файлов, сложные графы зависимостей и тяжёлые пайплайны сборки. Инструменты, написанные на самом JavaScript, упираются в CPU и память, даже при всех оптимизациях V8.

Системные языки решают эту проблему на уровне архитектуры:
— нативная производительность;
— реальная многопоточность;
— предсказуемое потребление памяти.

Именно поэтому SWC заменяет Babel, а Microsoft переписывает компилятор TypeScript на Go ради масштабируемости.

Интересно, что сообщество сознательно приняло компромисс: инструменты стали быстрее, но сложнее для контрибьюта. Большинство JS-разработчиков больше не могут «залезть внутрь» своего линтера или компилятора так же легко, как раньше.

@js_for_devs
👍9🔥42
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 Почему свой игровой движок — это проще, чем кажется

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

Шаг за шагом разбираемся, как из простых веб-примитивов вырастает полноценная игра, а затем — универсальный движок, и почему такой подход даёт больше свободы и выразительности, чем готовые решения.

📚 Читать на Хабр: https://habr.com/ru/articles/986110/
👍6🔥32
Наконец-то могу видеть свои tailwind-классы без бесконечного скролла..
😁204😱2👍1