Angular Fanatic
1.33K subscribers
44 photos
2 videos
3 files
223 links
Ангуляр в каждый проект!
__________
Канал на паузе
Download Telegram
Я тут недавно решил пройтись по собеседованиям на позицию фронтенд разработчика, и на одном из них мне задали тестовое задание. Задание довольно интересное, и решил я ее конечно же на Angular. Хочу поделиться с вами этим решением, и объявляю challenge по решению различных фронтовых задач.
По форме ниже вы можете прислать мне задачу, и я постараюсь публиковать решения по интересным задачам. (Все будет реализовано на Angular)

P.s. пожалуйста не нарушайте nda и прочее при публикации

https://docs.google.com/forms/d/e/1FAIpQLSdsRZ8k__peiAoyfzUBnhEY7EsGzQMWxm0xGIyq9Ic7EXfQwQ/viewform
Давайте соберем отзывы по использованию NestJS, и напишем свои пожелания, что хотелось бы увидеть, что не устраивает ;)
Спасибо)
(p.s можно на русском)

https://docs.google.com/forms/d/e/1FAIpQLSeu9-EWYL3FlYizZz3GPNc5Zo2gn7YXyNk1EtfLlwKU4nO-5w/viewform
Ждете пока stackblitz включат поддержку Angular Ivy?
Не надо ждать, Alexey Zuev сделал эту поддержку в ng-run:
https://ivy.ng-run.com
Так же можете посмотреть todo list в нем же:
https://ivy.ng-run.com/edit/GWEOnhuhLkPfbHVdBRib?open=app%2Fapp.component.ts
Ivy с нами, пора пилить свои декораторы;)
Elias Sander представил свою версию декораторов life cycle.

@se-ng/ivy-life-cycle-decorators

Кстати, Elias Sander со времён AngularJs отвечает на различные вопросы в Angular форуме. И недавно получил GDE.

https://www.npmjs.com/package/@se-ng/ivy-life-cycle-decorators
Крутой UI от VMware,
Clarity UI обновилась до 2.
https://clarity.design/news/2.0.0

У ребят очень много идеи, и на это уже нарисованы дизайны. Надеюсь, после усиления команды, они все таки их реализуют.
Ангуляр в каждый проект!
Если вы еще не видели консольное приложение на Angular, то обязательно взгляните на этот проект от NikPoltoratsky:

https://github.com/Tibing/platform-terminal
а вот тут слайды с конфы.
Когда то давно, (https://t.me/ngFanatic/3) писал что буду публиковать тут еще немного про deno.
Я думаю время настало.

1. В deno теперь зависимости идут таким образом:
core - все что внутри deno
std - набор стандартных пакетов,
x - все остальное, если вы напишите крутой и нужный пакет, то вскоре он попадет в std.
2. Есть вот такой вот условный compat-table
https://deno.dev/wpt/ , но это Web-Platform-Tests for Deno.
3. Думаю пора добавить в compat-table Deno, так как Deno совсем не Nodejs, и там нет его болячек.
4. Есть вот такой online playground: https://deno-play.app/
5. В ближайших релизах хотят плотно поработать над WebAssembly.
6. X пакетов сейчас 55+
7. Общение в основном в gitter, а в телеге тут: https://t.me/denoland
8. Установщик теперь стал более стабильным.
9. Проект все еще эксперементальный, и это не убица Nodejs.
10. Остальное можете узнать с выступлений Раяна.

А еще сделал веб фреймворк для deno, c кучей примеров для ваших экспериментов =)
Alosaur 🦖
https://github.com/irustm/alosaur
Как то мне приходилось убеждать своих руководителей перейти на Angular.
И вот с тех пор собираю мнения разных людей в пользу Angular.
Опубликовал это в один gist.
Если есть что дополнить, приглашаю в комменты ;)

https://gist.github.com/irustm/375a9db35be6273368ac16be9e844cfa
This media is not supported in your browser
VIEW IN TELEGRAM
В прошлом году анонсировали публичный API для Figma, и показали демку генерации компонентов в React.
Круто, подумал я, и переделал это под Angular.
В итоге генерируются глупые компоненты, и один модуль.
Важно! Чтобы все получилось, в Figma переменные в тексте нужно обозначить $ в начале, а компоненты - #.
Ну и чтобы появилась реактивность подключаем FigmaModule, вставляем нужный компонент, и прокидываем значения внутрь. 🥳

https://github.com/figma/figma-api-demo/pull/16
Ребята из valor-software, (которые делают ngx-bootstrap, ng2-dragula и еще много крутых штук), перевели, ngx-bootstrap на Angular Ivy,
что вас ожидает и с чем можете столкнутся можете узнать в статье:

https://valor-software.com/articles/ngx-bootstrap-angular-renderer.html
ngFanatic еженедельник
31–07–2019

Релизы:
angular: 8.1.3, 8.2.0-rc.0, 9.0.0-next.0
angular-cli: v8.2.0, v8.3.0-next.0
angular material: 8.1.2 bologna-bayou

Статьи:
Конфигурация Angular приложения compile vs runtime (Juri Strumpflohner) простой пример реализации, а хороший вариант решения есть в этой статье.

Прототип приложения с Angular (Edwin Lee) статья про то как в Google быстро создали рабочий прототип на Angular для внутреннего CRM.

Typescript 3.6 Beta (Daniel Rosenwasser) Stricter Generators, More Accurate Array Spread, Improved UX Around Promises, DOM Updates

Переиспользование реактивных форм (Cory Rylan) выдержка из книги Angular Form Essentials про использование ControlValueAccessor

Предстоящие мероприятия:

6 августа 2019 г.
Angular Minsk №2

10 августа 2019 г.
Rostov Angular meetup
Алексей Охрименко
* Такие разные и в то же время одинаковые: Платформы в Angular
Сэм Булатов
* NestJS — бэкенд для фронтендаров
Андрей Греков
* Декларативный Angular
Владимир Гайдуков
* NativeScript + Angular = Love


22 августа 2019 г.
Special 🗽AngularNYC meetup in Moscow
Juan Herrera (Vienna),
Maxim «PWAdvocate» Salnikov (Oslo),
Kirill Cherkashin (NYC)

22 августа 2019 г.
Angular Belarus 🇧🇾 Meetup #1
В Ionic Studio наконец то добавили установку кастомных нативных плагинов и в целом улучшили возможность апргрейда приложения. Теперь инструмент действительно можно расматривать для использования в разработке, а не как очередной инструмент для прототипирования и перетаскивания компонентов.
ngFanatic еженедельник
07–08–2019

Релизы:
angular: 8.2.0
angular-cli: 8.2.0, v8.3.0-next.0
angular material: 8.1.2 bologna-bayou

Статьи:
Understanding Content Projection in Angular (Carlos Caballero) статья для тех, кто все еще не разобрался с ng-content, ng-template, ngTemplateOutlet и в целом со структурными директивами.

Angular and Cypress UI Testing with Applitools (Bilal Haidar) Applitools - это инструмент для автоматического тестирования скриншотами. В статье подробно расписано как делать e2e тесты с помощью cypress и Applitools SDK

Angular and the REST, Nest.js and JWT (Bilal Haidar) Самый простой способ добавления авторизации в Nestjs с последующей интеграцией в Angular приложение.

Marble testing with RxJS testing utils (Kevin Kreuzer) Если вы хорошо изучили https://rxmarbles.com , то вам обязательно понравится тестировать ваш RxJS код с помощью простого синтаксиса. - x-x-x - -x-x-x-| и т.д.

Create your own image classifier with Angular and Tensorflow.js (Eliran Eliassy) Простое подключение в Angular приложение tensorflow.js и использование модели mobilenet для классификации изображения.
Хочу порекемендовать 2 авторских канала (если вы почему то еще на них не подписаны):

@juliarderity ведут канал Серёжа Рубанов и Роман Дворнов, пишут про спецификации, пропозалы, TC39, WebAssembly.

@obenjiro_notes новый канал Алексея Охрименко, обещает расказывать про Frontend, Backend, Fullstack, QA, DevOps, Administration, BigData, Machine Learning, Agile и о том что накипело
ngFanatic еженедельник

21-08-2019

Релизы:

angular:
8.2.2, 9.0.0-next.2 (2019–08–12)
angular-cli: 8.2.2, v8.3.0-rc.0
angular material: 8.1.3

Статьи:

Architecture with Angular Ivy — Part 2: Higher order and dynamic Components
Manfred Steyer — Долгожданная динамика в Ivy, пока без публичного API, но команда Angular обещает сделать их публичными. Так же бонусом в конце статьи, для тех кто себе может позволить(наплевать на производительность и размер бандла), продемонстрирован способ компиляции компонентов (в Ivy) в рантайме.

Introducing Transloco: Angular Internationalization Done Right
Netanel Basal.
Вот не успел Oliver Combe (тот кто пилил i18n core и ngx-translate) уйти в свободное плавание после гугла, так Basal запилил свой вариант для переводов, и обещает его сделать лучше чем ngx-translate. И даже написал мигратор ngx-translate to transloco (правда обычным regexp, не то что мой, через суровый ngAST =)). Мое мнение: можно юзать, но через год все равно придете к i18n core.

The Ultimate Guide to Implementing Feature Flags in Angular Applications
Netanel Basal.
Feature Flags — довольно известная техника при разработке, когда зачастую функционал скрывают за ними. В статье Basal приводит варианты для использования этой техники, во всех Angular сущностях.

The Best Way To Lazy Load Angular Elements
Tomas Trajan.
Ну что ж, конвертируем в WebComponents, и юзаем как угодно и где угодно. Казалось бы везде об этом уже написано, а что если нам потребуется загрузить веб компонент в наш Angular компонент? как раз в статье Tomas приводит интересное решение:
простую директиву:
<some-element *axLazyElement=”https://my.elements/some-element.js”></some-element>

Sharing Components Between Angular Applications
Jonathan Saring.
А вы знали о таком решении, как bit для создания, версионирования и шаринга ваших ui компонентов между продуктами ? Решение имеет cli для популярных фреймворков, в статье разобрано, как это использовать с Angular.

Tracking errors in Angular with Sentry
Nils Mehlhorn.
Ну просто подключите Sentry к вашему продукту, и появится весь stacktrace говорится в статье.

Implementing undo-redo with NgRx or Redux
Nils Mehlhorn.
Пример реализации паттернов memento и command для создания undo и redo функционала для вашего приложения. Стоит почитать, если не делали этого никогда, хотя в статье и не разобраны коллизии при работе с несколькими источниками данных

Managing Key-Value Constants in TypeScript
lacolaco / Suguru Inatomi.
Мы часто работаем со множествами, и хорошо если они у нас типизированы. В статье показано как начиная с typescript v3.4, а это означает еще и то что с Angular 8, можем превращать массив в tuple, простым движением, [array] as const потом же с него в тип type MyType = typeof myTuple[number]; а в конце просто key-value Record<MyType,string>

What Is a Higher-Order Observable?
Deborah Kurata. И на последок про RxJS, HOO
А вот и Oliver Combe обьявился со своим новым "профессиональным" решением для i18n, порой кажется что теперь у каждого разработчика своя open source либа для i18n.
И вроде будет сразу для ivy.
Для раннего доступа можете подписаться и отправить данные в форму: https://www.locl.app/

Судя по вопросу "Какой функционал вы хотели бы получить за 50$" Либа будет условно платной.