✨ Миграция на Angular Signals
Сигналы в Angular обсуждают повсюду, однако многие откладывают их внедрение в свои проекты.
Статья развеивает сомнения и предлагает пошаговый план, как безболезненно и постепенно перевести проект на новый реактивный примитив, не ломая все и сразу.
👉 https://www.angularspace.com/migrating-to-angular-signals/
Сигналы в Angular обсуждают повсюду, однако многие откладывают их внедрение в свои проекты.
Статья развеивает сомнения и предлагает пошаговый план, как безболезненно и постепенно перевести проект на новый реактивный примитив, не ломая все и сразу.
👉 https://www.angularspace.com/migrating-to-angular-signals/
❤5👍4🔥2
✨ Расследуем самое длинное issue в Jest
Казалось бы, обычная задача по обновлению версии Node.js с 16.10 до 18 обернулась рандомно падающими тестами в CI/CD. Расследование показало, что причина — утечка памяти, а проблема оказалась настолько глубокой, что ее решение затянулось на два года и потребовало участия команд Jest, Node.js и V8.
Читай статью, чтобы узнать все технические детали этого расследования и как в итоге удалось закрыть самое длинное issue в истории Jest.
👉 https://habr.com/ru/companies/ozontech/articles/933884/
Казалось бы, обычная задача по обновлению версии Node.js с 16.10 до 18 обернулась рандомно падающими тестами в CI/CD. Расследование показало, что причина — утечка памяти, а проблема оказалась настолько глубокой, что ее решение затянулось на два года и потребовало участия команд Jest, Node.js и V8.
Читай статью, чтобы узнать все технические детали этого расследования и как в итоге удалось закрыть самое длинное issue в истории Jest.
👉 https://habr.com/ru/companies/ozontech/articles/933884/
🔥4👍2😁2
🚨 NX взломан
Популярная билд-система NX была скомпрометирована. Вредоносный post-install скрипт, попавший в несколько версий пакета, похищает учетные данные, API-ключи, переменные окружения и криптовалютные кошельки с машин разработчиков.
Зловред использует AI-инструменты, такие как Claude Code и Gemini CLI, для поиска чувствительных данных в файловой системе. Найденные секреты упаковываются и отправляются в публичный GitHub-репозиторий s1ngularity-repository, созданный от имени жертвы.
В статье подробная инструкция, как проверить свою систему, полный список уязвимых версий и шаги по устранению последствий.
👉 https://semgrep.dev/blog/2025/security-alert-nx-compromised-to-steal-wallets-and-credentials/
Популярная билд-система NX была скомпрометирована. Вредоносный post-install скрипт, попавший в несколько версий пакета, похищает учетные данные, API-ключи, переменные окружения и криптовалютные кошельки с машин разработчиков.
Зловред использует AI-инструменты, такие как Claude Code и Gemini CLI, для поиска чувствительных данных в файловой системе. Найденные секреты упаковываются и отправляются в публичный GitHub-репозиторий s1ngularity-repository, созданный от имени жертвы.
В статье подробная инструкция, как проверить свою систему, полный список уязвимых версий и шаги по устранению последствий.
👉 https://semgrep.dev/blog/2025/security-alert-nx-compromised-to-steal-wallets-and-credentials/
🙈27😁12❤3👍1🔥1
✨ Angular и AI: ускоряем процесс разработки
С внедрением MCP-сервера, команда Angular задала интересный тренд, меняющий подход к использованию фреймворка.
В статье автор поделился своим опытом: он поднял MCP-сервер, связал его с GitHub Copilot и прогнал несколько промптов. Спойлер: результат действительно впечатляет. Интеграция с Angular CLI дает AI-агенту гораздо больше контекста, и код на выходе получается качественнее. Попробуйте сами.
👉 https://habr.com/ru/articles/942376/
С внедрением MCP-сервера, команда Angular задала интересный тренд, меняющий подход к использованию фреймворка.
В статье автор поделился своим опытом: он поднял MCP-сервер, связал его с GitHub Copilot и прогнал несколько промптов. Спойлер: результат действительно впечатляет. Интеграция с Angular CLI дает AI-агенту гораздо больше контекста, и код на выходе получается качественнее. Попробуйте сами.
👉 https://habr.com/ru/articles/942376/
🔥11👍4👏2
✨ Стратегия обнаружения изменений в ANGULAR 17+
Стратегия обнаружения изменений OnPush — это ключевой инструмент для оптимизации производительности в Angular. В отличие от стратегии по умолчанию, которая проверяет все дерево компонентов при любом событии, OnPush позволяет избежать лишних циклов change detection.
В статье подробно рассматривается, когда именно OnPush запускает проверку.
P.S. А еще в комментариях можно послушать подкаст, сгенерированный по мотивам этой статьи.
👉 https://habr.com/ru/companies/ascon/articles/941766/
Стратегия обнаружения изменений OnPush — это ключевой инструмент для оптимизации производительности в Angular. В отличие от стратегии по умолчанию, которая проверяет все дерево компонентов при любом событии, OnPush позволяет избежать лишних циклов change detection.
В статье подробно рассматривается, когда именно OnPush запускает проверку.
P.S. А еще в комментариях можно послушать подкаст, сгенерированный по мотивам этой статьи.
👉 https://habr.com/ru/companies/ascon/articles/941766/
👍6🔥2👎1👏1
✨ Angular Summer Update 2025
Йенс Кюлерс и Марк Тексон опубликовали в официальном блоге Angular статью, посвященную улучшениям в версиях 20.1 и 20.2. Ранее мы уже давали краткий обзор этих нововведений, а теперь разработчики поделились всеми подробностями.
Одно из значительных нововведений — это стабильность Zoneless API. Обновление также вводит новые примитивы анимации, позволяющие использовать нативные CSS-анимации и устаревает пакет
P.S. В комментариях можно послушать подкаст.
👉 https://blog.angular.dev/angular-summer-update-2025-1987592a0b42
Йенс Кюлерс и Марк Тексон опубликовали в официальном блоге Angular статью, посвященную улучшениям в версиях 20.1 и 20.2. Ранее мы уже давали краткий обзор этих нововведений, а теперь разработчики поделились всеми подробностями.
Одно из значительных нововведений — это стабильность Zoneless API. Обновление также вводит новые примитивы анимации, позволяющие использовать нативные CSS-анимации и устаревает пакет
@angular/animations
. Кроме того, Angular расширил свои предложения по искусственному интеллекту (ИИ), представив новый сервер MCP для кодогенерации LLM и поддержку создания приложений Angular в Gemini Canvas и Google AI Studio. Улучшения инструментов разработчика включают визуализацию маршрутизатора и графа сигналов в Angular DevTools, а также упрощенное тестирование компонентов.P.S. В комментариях можно послушать подкаст.
👉 https://blog.angular.dev/angular-summer-update-2025-1987592a0b42
❤4👍2🔥2
✨ Джун, мидл, сениор на примере велосипедистов
В чем разница между джуном, мидлом и сеньором? Автор статьи объясняет грейды разработки на простом и понятном примере, обучения езде на велосипеде.
Вот как выглядит это деление по его мнению:
Junior — это как ребенок со страховочными колесами. Ему нужен ментор, который настроит изолированное окружение, даст простую задачу и будет следить, чтобы джун не поехал под грузовик, уронив прод.
Middle — уже уверенно едет сам, без дополнительных колес. Он может самостоятельно решать задачи в рамках существующего проекта, но из-за самоуверенности может предлагать переписать все с нуля на модных технологиях, не всегда вникая в цели бизнеса.
Senior — не просто доедет куда угодно, но и сам соберет себе велосипед. Он самостоятельно закроет сложную задачу, напишет проект с нуля и успешно его зарелизит.
Хочешь узнать, на каком этапе ты и не пора ли снимать дополнительные колеса? Подкаст в комментариях.
👉 https://habr.com/ru/articles/846538/
В чем разница между джуном, мидлом и сеньором? Автор статьи объясняет грейды разработки на простом и понятном примере, обучения езде на велосипеде.
Вот как выглядит это деление по его мнению:
Junior — это как ребенок со страховочными колесами. Ему нужен ментор, который настроит изолированное окружение, даст простую задачу и будет следить, чтобы джун не поехал под грузовик, уронив прод.
Middle — уже уверенно едет сам, без дополнительных колес. Он может самостоятельно решать задачи в рамках существующего проекта, но из-за самоуверенности может предлагать переписать все с нуля на модных технологиях, не всегда вникая в цели бизнеса.
Senior — не просто доедет куда угодно, но и сам соберет себе велосипед. Он самостоятельно закроет сложную задачу, напишет проект с нуля и успешно его зарелизит.
Хочешь узнать, на каком этапе ты и не пора ли снимать дополнительные колеса? Подкаст в комментариях.
👉 https://habr.com/ru/articles/846538/
😁13🥴8❤3💩2🤮1🤡1👀1
✨ Angular получил свой shadcn/ui
Если вы работали в React с библиотекой shadcn/ui, то эта новость вас заинтересует.
Zard UI — это новая библиотека компонентов, которая объединяет мощь TailwindCSS и последние возможности Angular.
👉https://zardui.com/
Если вы работали в React с библиотекой shadcn/ui, то эта новость вас заинтересует.
Zard UI — это новая библиотека компонентов, которая объединяет мощь TailwindCSS и последние возможности Angular.
👉https://zardui.com/
👍12✍6👎3💩3🔥2
✨ Не доверяй и проверяй, или как я валидировал ссылку в JavaScript
Думаете, что new URL(url) — надежный способ проверить ссылку в JavaScript? Как бы не так. Этот встроенный инструмент может пропустить URL, который ваш бэкенд справедливо сочтет некорректным.
Глазырин Сергей рассказал о пяти методах валидации ссылок, включая HTML-валидацию, сторонние библиотеки, запросы с использованием fetch или axios, регулярные выражения и, наконец, new URL(). Статья анализирует ограничения и преимущества каждого подхода.
👉 https://habr.com/ru/companies/tbank/articles/944084/
Думаете, что new URL(url) — надежный способ проверить ссылку в JavaScript? Как бы не так. Этот встроенный инструмент может пропустить URL, который ваш бэкенд справедливо сочтет некорректным.
Глазырин Сергей рассказал о пяти методах валидации ссылок, включая HTML-валидацию, сторонние библиотеки, запросы с использованием fetch или axios, регулярные выражения и, наконец, new URL(). Статья анализирует ограничения и преимущества каждого подхода.
👉 https://habr.com/ru/companies/tbank/articles/944084/
🔥4👍1👏1
Если обновляли пакеты сегодня — проверьтесь
https://www.aikido.dev/blog/npm-debug-and-chalk-packages-compromised
https://www.aikido.dev/blog/npm-debug-and-chalk-packages-compromised
www.aikido.dev
npm debug and chalk packages compromised
The popular packages debug and chalk on npm have been compromised with malicious code
😢13😭2🐳1
✨ Signals Form
Команда Angular активно интегрирует сигналы в существующие API, и формы не остались в стороне.
Angular 21.0.0-next.2 представил Signal Forms. Главная идея — использовать сигналы как единственный источник правды для состояния формы. С этим дополнением общее количество возможных форм в Angular становится равным трем.
Пока они находятся на экспериментальной стадии и могут измениться в будущих релизах.
👉 https://dev.to/this-is-angular/signals-form-introduction-11d1
Команда Angular активно интегрирует сигналы в существующие API, и формы не остались в стороне.
Angular 21.0.0-next.2 представил Signal Forms. Главная идея — использовать сигналы как единственный источник правды для состояния формы. С этим дополнением общее количество возможных форм в Angular становится равным трем.
Пока они находятся на экспериментальной стадии и могут измениться в будущих релизах.
👉 https://dev.to/this-is-angular/signals-form-introduction-11d1
🔥28👍5❤2
✨ Библиотека компонентов на Angular
Задумывались о создании собственного UI Kit на Angular, но это казалось слишком сложным? На самом деле, это вполне разумный инженерный выбор. Как минимум разработка библиотеки решает проблемы с отсутствующими компонентами и сложностями кастомизации.
В статье полный гайд по созданию своей библиотеки с нуля.
👉 https://habr.com/ru/articles/914156/
Задумывались о создании собственного UI Kit на Angular, но это казалось слишком сложным? На самом деле, это вполне разумный инженерный выбор. Как минимум разработка библиотеки решает проблемы с отсутствующими компонентами и сложностями кастомизации.
В статье полный гайд по созданию своей библиотеки с нуля.
👉 https://habr.com/ru/articles/914156/
👍10🔥5