В выпуске: прощай Firebug и привет Firefox Quantum, JavaScript экосистема глазами Дэна Абрамова, переходим на CSS гриды вместе со Slack, а также изучаем скандал на ReactiveConf 2017.
CSS
Rebuilding slack.com — как Slack переписали на CSS гриды
Grid areas and the element that occupies them aren’t necessarily the same size — изучаем гриды
The CSS attr() function got nothin’ on custom properties — как правильно хранить данные в разметке
Smooth corners with CSS Houdini — canvas в CSS
JavaScript
The Cost Of JavaScript — Эдди Османи о производительности Front-End приложений
The melting pot of JavaScript — Дэн Абрамов о состоянии экосистемы и вашей роли в ней
ES proposal: import.meta — module metadata — метаданные для ES-модулей
Creating a Star to Heart Animation with SVG and Vanilla JavaScript
How to use SVG as a Placeholder, and Other Image Loading Techniques — SVG-плейсхолдеры для предзагрузки изображений
Apollo Client 2.0: Beyond GraphQL APIs
All You Need To Know About CSS-in-JS — переходим на CSS in JS
Progressive Web Apps
6 myths of Progressive Web Apps
Learn To Build Progressive Web Applications (PWA)
What is Progressive web App (and Why Should You Care)?
React и React Native
Everything You Should Know About React: The Basics You Need to Start Building — с чего стоит начать?
Netflix functions without client-side React, and it’s a good thing — лендинг Netflix ускорился на 50% без React
React 16:
- Getting started with React 16
- Using a React 16 Portal to do something cool
- React Call Return — What and Why
Create React Kotlin App — CRA добралась до Kotlin
Creating Progressive Web Application in 6 simple steps with React.JS
Performance-tuning a React application.
3+ years of Ember, 6 months of React — Ember vs React
Next.js — React Server Side Rendering Done Right
Rendering a function with React — используем паттерн rendering function
How Redux Can Make You a Better Developer
Navigating Navigation in React Native
React Pattern: Centralized PropTypes
Vue.js
Upcoming TypeScript Changes in Vue 2.5
5 Vuex Plugins For Your Next VueJS Project
The State of Vue.js Report Is Out. Here Are the Most Important Facts and Figures.
Angular
A new Angular Service Worker — creating automatic progressive web apps:
Using Angular Components with Third-Party Libraries
How to Reduce Action Boilerplate
Do you really know what unidirectional data flow means in Angular
3 Tips for Angular Runtime Performance from the Real World
These 5 articles will make you an Angular Change Detection expert
Node.js
How JavaScript works: Deep dive into WebSockets and HTTP/2 with SSE + how to pick the right path — как работают веб-сокеты и HTTP/2 с server-sent event
Turning VS Code Into A Killer MongoDB Admin Tool
Стоим микросервис кинотеатр на Node.js:
ReasonML
Ten interesting features from various modern languages
Building the Super Tiny Compiler with Reason
Библиотеки
Critical — утилита от Эдди Османи для автоматической генерации и подключения критических стилей страницы
js2flowchart.js — генерация блок-схем из кода в SVG
Stylable — CSS для компонентов
Frappé Charts — строим графики без зависимостей
Сube UI — мобильные компоненты для Vue.js
React-Virgin — мобильные компоненты для React Native
Helm — генерация письма
XmySQL — генерируем API для MySQL-баз данных
Послушать
Пятиминутка React:
- Ночной фронтенд #7 — REST vs GraphQL
- Выпуск № 9 — эйчары, Cerebral и вопросы деплоя
- Ночной фронтенд #8 — Из огня да в полымя
- Ночной фронтенд #9 — Может быть не React?
- Ночной фронтенд #10 — Тесты, отладка и сложный мёрдж в XCode
- #24 — Вадим Резвый об основании Moscow Coding School, дружбе с президентами, рэпе и индуизме
- #25 — Роман Дворнов о том, как создавать Open Source и не перегореть
- #26 — Владислав Козуля про идеальное собеседование и как избавиться от образа шутника в твиттере
- #27 — Денис Радин обо всей правде жизни разработчика за границей
- #22 Бодипозитив для самозванца
- #23 Всё что вы должны знать о функциональщине
- #24 Революционный фреймворк, который мы заслужили
- #25 Печальное состояние экосистемы JavaScript
- #26 Во всём виноват Джейк Арчибальд
Конференции
Демо
Что нового
Node.js 8.9.0 LTS и Node.js 9.0.0
Остальное
Building Browser Extensions At Scale — как разрабатывается расширение Grammarly
How we adapted the Booking.com mobile site for the iPhone X notch.
Really Good UX — коллекция примеров хорошего UX
I Watched All of the Chrome Dev Summit 2017 Videos So You Don’t Have To — обзор докладов Chrome Dev Summit 2017
My web app died from performance bankruptcy — Никита Прокопов про развитие веба
The whole web at maximum FPS: How WebRender gets rid of jank
Entering the Quantum Era—How Firefox got fast again and where it’s going to get faster — о внутренностях Firefox Quantum
Saying Goodbye to Firebug — прощай Firebug
Why I cancelled my ReactiveConf talk — про скандал Пегги Рейзис на ReactiveConf 2017
Grammarly ищет талантливых Front-End инженеров для усовершенствования нашего продукта, создания минималистичных элегантных пользовательских интерфейсов и решения сложных технических задач. Нашим продуктом пользуются миллионы пользователей каждый день. У нас замечательная команда, вместе с которой мы используем самые передовые технологии. Подробнее здесь. Присоединяйтесь.
С вами был Григорий Шехет, @AGambit95. За помощь в оформлении дайджеста благодарю своих коллег.
← Предыдущий выпуск: Frontend дайджест #26.