Écosystème web en 2021 :
welcome to the jungle
Vincent Ogloblinsky - @vogloblinsky
Orange Innovation - ARoD Team 🤘
Vincent Ogloblinsky
Compodoc maintainer




Google Developer Expert on Web Technologies
Software architect
Agenda
1.
Language(s)...
2.
Framework(s)...
3.
Outils
4.
APIs
Disclaimer
Oui c'est toujours le dawaa !
Mais c'est pareil dans d'autres domaines 😉


Languages
HTML 5.3
Web Content Accessibility Guidelines (WCAG) 2.2
autocapitalize attribute
defaultPlaybackRate attribute
decoding attribute for images
CSS
JavaScript

JavaScript
ES MODULES everywhere : script tags & web workers !
ES2021 :
- Promise.any : // request, first win
- String.prototype.replaceAll : enfin !
- Logical Assignment Operators : a ??= b ===> a = a ?? (a = b)
- Numeric Separators : 1__000__000
- Intl.DisplayNames :
var currencyNames = new Intl.DisplayNames(['en'], {type: 'currency'});
console.log(currencyNames.of('USD')); // "US Dollar"
JavaScript
ES2022 :
- Class public and private fields - getter/setters
- Static class fields and private static methods
- Top-level await
const translationKeys = await import(`/i18n/${navigator.language}`);
Frameworks
Frameworks

Frameworks
Approche classique
Orchestrateurs de composants
Runtime du framework sur le poste client
Lockin fort...
Over-engineering de librairies...
Frameworks
Angular
Stable : v12, v13 en cours
Strict type by default
Proposal pour des modules optionnels
Frameworks
Vue.js
Version : 3.2
Composition API (meilleure séparation du code)
L'écosystème migre vers la v3
Frameworks
Approche légère : Svelte
A mi-chemin entre framework et compilateur :
analyse poussée au build pour maximiser le code au runtime dans le navigateur
Outils
Outils

Outils
Lighthouse - Core Web Vitals (LCP - Largest Contentful Paint, FID - First Input Delay, CLS - Cumulative Layout Shift)
webpack / rollup / parcel
vite / snowpack
CLI de vos frameworks favoris
Outils
Outils
Node.js 16
- Apple M1 support
- npm v7
Outils

APIs
APIs
APIs
😀 - iOS 14.3 adds support for MediaRecorder API
😀 - iOS 15 adds support for Web Share API
😀 - iOS 15 adds support for WebGL 2.0
😐 - Apple declined to implement 16 Web APIs in Safari due to privacy concerns
The Stackless Way

Merci pour votre attention !
Des questions ?
Slides : bit.ly/3otoogi

Crédit photos - Unsplash.com
Écosystème web en 2021 : welcome to the jungle
By Vincent Ogloblinsky
Écosystème web en 2021 : welcome to the jungle
- 1,509