🦊 Angular Fox 🚀 — русскогорящие новости сообщества
СтатистикаКак костыль на реактивно-лисьей тяге 🔥🦊 Нравится канал? Подпишись на меня! 👉 twitter.com/thekiba_ru 💖 twitter.com/thekiba_io ✨ medium.com/@thekiba ✨ github.com/thekiba Чаты @angular_ru @angular_jobs
- Последний пост
- 14 авг.
- Последнее чтение
- 15:19
- Постов за неделю
- 3
- Всего постов
- 20
- Тип
- открытый
- Язык
- русский
- Категория
- Новости и СМИ
- В каталоге с
- 16 авг.
- 1/24сутки в ленте
- 1 243
- 1/48двое суток
- 1 424
- 1/72трое суток
- 1 536
Оценка по просмотрам недавних постов: пост набирает почти всё за первые сутки.
Посты
✨ Angular Signal Forms: пользовательские контролы без ControlValueAccessor Создание кастомных элементов управления формами в Angular долгие годы требовало написания громоздкого ControlValueAccessor. С выходом Angular 22 и стабилизацией Signal Forms этот процесс кардинально упростился. Теперь для интеграции компонента с формой достаточно использовать интерфейс FormValueControl. В статье пошагово разбирается процесс разработки современного кастомного контрола без лишнего бойлерплейта. 👉 https://angularexperts.io/blog/angular-signal-forms-custom-controls
✨ 3 хорошие привычки начинающего фронтендера Хороший фронтендер думает не только о коде, но и о том, как пользователь будет взаимодействовать с интерфейсом. Именно такие привычки помогают делать сайты удобнее и доступнее. Статья для начинающих о простых, но важных привычках верстки, которые делают интерфейс удобнее для пользователя, независимо от стека. В ней Стас Мельников показывает, что даже без глубокого дизайнерского бэкграунда можно заметно улучшить UX, если обращать внимание на детали, которые часто упускают. 👉 https://habr.com/ru/companies/ruvds/articles/1066724/
✨ Размытая граница между состояниями CSS и событиями JavaScript CSS все чаще берет на себя то, что раньше делал только JavaScript. Реагирует на состояния, которые почти неотличимы от событий. Граница между псевдоклассами и обработчиками событий становится все более размытой. В статье разбираются примеры такого пересечения, а также рассматривается экспериментальный event-trigger, будущий механизм, который может позволить запускать CSS-анимации в ответ на события. 👉 https://habr.com/ru/companies/timeweb/articles/1059272/
✨ От парсинга DOM к контрактам: понимание WebMCP Сейчас агенты гадают по DOM и скриншотам, пытаясь понять, что за кнопка перед ними: кликают, ждут, перепроверяют. Это медленно, дорого по токенам и хрупко. Любой редизайн или A/B-тест может сломать всю цепочку действий. Идея WebMCP в том, чтобы перевернуть эту логику. Страница сама объявляет свои возможности, как набор именованных инструментов с описанием и типизированной схемой, вместо того, чтобы агент реверс-инжинирил интерфейс методом проб и ошибок. И Angular v22 уже стал первым крупным фреймворком с экспериментальной поддержкой WebMCP из коробки. 👉 https://angular.love/from-dom-scraping-to-contracts-understanding-webmcp-part-1
✨ Agent Plugins Вышла спецификация Agent Plugins 1.0.0 — открытый, независимый от вендоров формат упаковки Agent Skills и MCP-серверов в переносимые плагины. Ее развивают мейнтейнеры из Amazon, Cursor, Microsoft, OpenAI, Vercel, а теперь и Google. Раньше для каждого клиента приходилось создавать свои обертки и манифесты. Теперь плагин представляет собой универсальную директорию с фиксированной структурой. Написали один раз, и его можно использовать в разных клиентах. Похоже, экосистема AI-агентов постепенно движется к общим стандартам, а не закрытым форматам. 👉 https://developers.googleblog.com/agent-plugins-package-your-skills-tools-and-more/
✨ Представляем CopilotKit для Angular CopilotKit — SDK для создания full-stack агентных приложений, генеративного UI и чат-интерфейсов. Начинался как React-библиотека, а теперь это мультиплатформенный фреймворк. Разработка ИИ-интерфейсов перестала быть эксклюзивом React. Команда Soverius AI официально взяла на себя развитие @copilotkit/angular в основном репозитории проекта. Теперь Angular-разработчикам из коробки доступны готовые UI-чаты и инструменты для ИИ-агентов. 👉 https://www.copilotkit.ai/blog/copilotkit-for-angular
✨ CSS-челленджи для 200 IQ Часто ли вы ловите себя на мысли, что уперлись в невидимую стену, пытаясь решить, казалось бы, невыполнимую задачу? В моменты, когда ИИ, Stack Overflow и спецификации бессильны, на помощь приходит настоящая инженерная смекалка и упорство. Алекс Инкин поделился именно такими случаями, когда долгий мозговой штурм привел к изящным и уникальным решениям на чистом CSS, о которых вы вряд ли прочтете в туториалах. 👉 https://dev.to/waterplea/css-challenges-for-200-iq-ghl
✨ Как обрабатывать глобальные ошибки в современном zoneless Angular В классическом Angular библиотека Zone.js незаметно перехватывала все асинхронные операции (Promise, setTimeout, addEventListener) и автоматически пересылала необработанные ошибки в центральный ErrorHandler. В новом zoneless-режиме этот механизм исчезает. Ошибки из отклоненных промисов, сторонних скриптов или колбэков браузерных API перестают попадать в центральную обработку и просто теряются в консоли. Решением стал provideBrowserGlobalErrorListeners(). Новый провайдер, который вместо патчинга API просто вешает нативные слушатели на window для событий error и unhandledrejection. Пойманные ошибки перенаправляются в стандартный ErrorHandler, восстанавливая единый пайплайн обработки ошибок. 👉 https://www.angularspace.com/how-to-handle-global-errors-in-modern-zoneless-angular/
✨ Как верстали 15 лет назад Создание любого интерфейса тогда требовало диких костылей. Базовые задачи вроде построения сетки, центрирования элементов или добавления градиентов решались через ручной расчет размеров и нарезку фоновых картинок в Photoshop. Сегодня все это решается парой строк на flex или grid и это отличный повод оценить, как далеко шагнул CSS. 👉 https://habr.com/ru/companies/ruvds/articles/1060630/
✨ Как я собрал на одном Angular коде: личный кабинет для сайта, Telegram Mini App, iOS и Android Когда стартуешь соло и требования меняются каждую неделю, писать отдельные приложения для сайта, Telegram, iOS и Android верный способ утонуть. Четыре кодовые базы, в которых каждую правку логики, формы или статуса нужно повторять четыре раза. При таком темпе поддерживать это в одиночку просто нереально. Андрей Шпилевский решил это просто. Остался на Angular и вынес всю логику и экраны в общую библиотеку для всех платформ, а мобильные приложения и Telegram Mini App обернул через Capacitor. В итоге около 95% кода общее, а платформенная специфика спрятана в адаптерах. 👉 https://habr.com/ru/articles/1064680/
✨ Что нового в Angular 22.1? Вышел новый минорный релиз Angular. Основные изменения: В linkedSignal добавлена возможность задавать кастомный сеттер для сложной логики записи. Поддержка JSONP объявлена устаревшей из-за уязвимостей. В CLI добавлена автоматическая миграция со старого декоратора @Injectable на новый @Service. Ознакомиться с полным списком изменений можно здесь. 👉 https://blog.ninja-squad.com/2026/07/29/what-is-new-angular-22.1
✨ Языковую модель на 28,9 млн параметров запустили на микроконтроллере ESP32-S3 Нейросеть работает полностью локально на плате с 16 Мбайт флеш-памяти и 512 Кбайт SRAM, а сгенерированный текст выводится на небольшой дисплей. Модель уместили на устройстве благодаря 4-битной квантизации и распределению весов между разными типами памяти, а нужные данные из таблицы эмбеддингов подгружаются из флеш-памяти по мере необходимости. Для сравнения, предыдущий похожий проект уместил на ESP32 только модель на 260 тыс. параметров. 👉 https://habr.com/ru/news/1064114/
✨ Книга аутентификации Неплохой сборник практических советов по безопасности. Главный посыл предельно простой, классические пароли давно пора закапывать. Люди ленивы, везде ставят одни и те же комбинации, а базы регулярно утекают в сеть. Вместо этого автор советует passkey, вход по биометрии или пину устройства, без единого пароля. Ключ никуда не передается и его физически не своровать, в отличие от связки логин-пароль. 👉 https://habr.com/ru/articles/1063760/
✨ MCP как интерфейс продукта Традиционные графические интерфейсы заставляют пользователя изучать сложную структуру продукта, вместо того чтобы просто отвечать на его намерения. Гораздо естественнее, когда пользователь формулирует задачу обычным языком, а агент сам понимает контекст, выбирает нужные инструменты системы, собирает данные и выдает результат. Агент не заменяет бизнес-логику, он становится слоем-переводчиком между человеком и системой. Согласны ли вы с тем, что GUI постепенно уступит место агентным интерфейсам, или все же графический интерфейс останется незаменимым для большинства задач? 👉 https://habr.com/ru/companies/selectel/articles/1061986/
✨ Как рой ИИ-агентов Cursor создал SQLite с нуля за $1339 Cursor провела эксперимент со вторым поколением роя агентов, в котором сотни агентов параллельно писали на Rust движок SQLite по документации, без исходников и интернета. В прошлых версиях агенты создавали хаос и тысячи конфликтов в коде. Проблему решили аналогами корпоративного управления. Внедрили общие дизайн-доки, арбитров для разрешения споров, многоуровневое ревью кода и написали собственную сверхбыструю систему контроля версий взамен Git. Дорогие модели только планировали архитектуру, а дешевые писали код, что снизило цену разработки. В результате получили 100% прохождение тестов, при этом кода написали в несколько раз меньше, чем в старых хаотичных версиях роя. 👉 https://habr.com/ru/articles/1061128/
✨ Создание транзакционного router resource Судя по всему, команда Angular начала работу над более тесной интеграцией resource API с роутером. В репозитории появился PR с реализацией routerResource - обертки, которая пока не выставлена в публичный API, но уже демонстрирует, как ресурс может замораживать свое состояние на время навигации, ориентируясь на снапшоты и события роутера, чтобы UI не мерцал промежуточными состояниями. 👉 https://github.com/angular/angular/pull/69490
✨ Эволюция киберугроз Эта история кардинально изменит ваше представление о реальных угрозах искусственного интеллекта. Во время внутреннего тестирования в OpenAI передовые ИИ-модели смогли обойти ограничения изолированной среды. Они самостоятельно обнаружили уязвимость нулевого дня, вышли в интернет и взломали серверы Hugging Face, чтобы сжульничать и украсть правильные ответы для своего теста. Технически атака управлялась роем автономных агентов, которые совершили тысячи отдельных действий через сеть временных песочниц. При этом командная инфраструктура была развернута на публичных сервисах и умела самостоятельно мигрировать Это в точности соответствует сценарию, который индустрия давно прогнозировала как будущую угрозу. 👉 https://openai.com/index/hugging-face-model-evaluation-security-incident/
✨ Единый валидатор для всего Разработка фулстек-приложений часто усложняется из-за рассинхронизации типов данных и правил валидации между фронтендом и бэкендом. Различные фреймворки по умолчанию используют разные библиотеки для проверки данных, приходится дублировать логику, что неизбежно ведет к лишней рутине и отсутствию единого источника истины. Для решения этой проблемы автор предлагает вынести схемы Zod в общее пространство монорепозитория, генерируя из них общие типы. В NestJS такая валидация легко внедряется через кастомные пайпы и декораторы, а на клиенте напрямую подключается к новым Signal Forms с помощью validateStandardSchema. 👉 https://angular.love/one-validator-to-rule-them-all
✨ Может ли айтишник обеспечить себе уверенную пенсию Статья разбирает миф о богатых айтишниках и честно считает, сколько реально можно накопить к пенсии. Вывод неутешительный, большинство инвестиционных инструментов работают плохо. Вклады съедает инфляция, государственная пенсия ненадежна, а фондовый рынок слишком непредсказуем и рискован. Не спасают и альтернативные пути. Собственный IT-проект, офлайн-бизнес, консалтинг или преподавание, везде высокий риск провала из-за быстро меняющихся трендов отрасли и рынка труда. Даже недвижимость, при всей своей стабильности, требует больших вложений и не гарантирует высокую доходность. А какие стратегии накоплений выбрали вы? 👉 https://habr.com/ru/articles/1059644/
✨ Знакомство с Resource Snapshots Стандартное поведение Resource API сбрасывает value во время загрузки, из-за чего приходится показывать skeleton-загрузчики вместо более удобного индикатора загрузки с сохранением старых данных. Статья рассказывает о том, как сохранять предыдущие данные при изменении входных параметров запроса, например, при новом поисковом запросе. 👉 https://angular.love/getting-to-know-angular-resource-snapshots