Frontend Weekly Digest (2 — 8 September 2019)
Tags: css, html, javascript, react
Published: 2019-09-08 20:11:08

### Web-development

* [Apple Just Shipped Web Components to Production and You Probably Missed It](https://dev.to/ionic/apple-just-shipped-web-components-to-production-and-you-probably-missed-it-57pf)
* [So You’re Being Sued for Accessibility Non-Compliance](https://www.telerik.com/blogs/so-youre-being-sued-for-accessibility-non-compliance)
*  **Tools**
* [Chrome 77 - What’s New in DevTools ](https://www.youtube.com/watch?v=R8KzoMoKhnM)
* [What's New In DevTools (Chrome 78)](https://developers.google.com/web/updates/2019/09/devtools)
* [Globalization Tools - The State of the Web](https://www.youtube.com/watch?v=F2N-evGOcxc&feature=youtu.be)
* [Debugging TypeScript in Firefox DevTools](https://hacks.mozilla.org/2019/09/debugging-typescript-in-firefox-devtools/)
* [Webpack Boilerplate - Minimal Webpack 4 boilerplate with Babel, Sass, ESLint, Hot Module Replacement, and development/production optimization.](https://github.com/taniarascia/webpack-boilerplate)
* [5 Tips and Tricks for Firefox DevTools - Storage Inspector](https://dev.to/lakatos88/5-tips-and-tricks-for-firefox-devtools-storage-inspector-3l0o)
*   **Performance**
* [A web performance audit checklist](https://medium.com/@david.gilbertson/a-web-performance-audit-checklist-666ba09f8cff)
* [Web Performance: Minimising DOM Reflow/Layout Thrashing](https://medium.com/better-programming/web-performance-dom-reflow-76ac7c4d2d4f)
* [Why I'm preloading a font even when I shouldn't have to](https://www.alexrp.co.uk/blog/preloading-fonts.html)
*   **Effects**
* [How to Create a Webcam Audio Visualizer with Three.js](https://tympanus.net/codrops/2019/09/06/how-to-create-a-webcam-audio-visualizer-with-three-js/)
* [A Configurator for Creating Custom WebGL Distortion Effects](https://tympanus.net/codrops/2019/09/04/a-configurator-for-creating-custom-webgl-distortion-effects/)
* [Inspirational Websites Roundup #8](https://tympanus.net/codrops/2019/09/05/inspirational-websites-roundup-8/)
* [How to Dynamically Change the Colors of Product Images using CSS Blend Mode and SVG](https://tympanus.net/codrops/2019/09/03/how-to-dynamically-change-the-colors-of-product-images-using-css-blend-mode-and-svg/)

### CSS

* [Using a PostCSS function to automate your responsive workflow](https://css-tricks.com/using-a-postcss-function-to-automate-your-responsive-workflow/)
* [Various Methods for Expanding a Box While Preserving the Border Radius](https://css-tricks.com/various-methods-for-expanding-a-box-while-preserving-the-border-radius/)
* [My favorite CSS hack](https://dev.to/gajus/my-favorite-css-hack-32g3)
* [CSS Variables for IE11: A real polyfill for Custom Properties in IE11](https://github.com/nuxodin/ie11CustomProperties)
* [What CSS Developers Do and Why You Need One](https://www.toptal.com/css/why-you-need-a-css-developer)
* [Overflow And Data Loss In CSS](https://www.smashingmagazine.com/2019/09/overflow-data-loss-css/)
* [Understanding Specificity in CSS](https://alligator.io/css/understanding-specificity-in-css/)

### JavaScript

* [How to optimize your JavaScript app by using service workers](https://www.freecodecamp.org/news/optimize-your-javascript-app-by-using-service-workers/)
* [A simple homemade JavaScript obfuscator](https://antoinevastel.com/javascript/2019/09/04/home-made-obfuscator.html)
* [How JavaScript Works](https://medium.com/better-programming/how-javascript-works-1706b9b66c4d)
* [Using the DOM like a Pro](https://itnext.io/using-the-dom-like-a-pro-163a6c552eba)
*   **Theory**
* [How to Trim Strings in JavaScript (ES2019)](https://medium.com/coding-in-simple-english/how-to-trim-strings-in-javascript-es2019-3823070c9316)
* [How To Accelerate the JavaScript Spread Operator](https://dmitripavlutin.com/javascript-spread-operator-performance-optimization/)
* [Should a website work without JavaScript?](https://css-tricks.com/should-a-website-work-without-javascript/)
* [Asynchronous JavaScript: Introduction to JavaScript Promises](https://www.twilio.com/blog/asynchronous-javascript-introduction-promises)
* [8 habits you should avoid when developing with Javascript](https://medium.com/javascript-in-plain-english/8-habits-you-should-avoid-when-developing-with-javascript-a39a5ca2fae6)
* [JavaScript Iterators and Generators: Asynchronous Iterators](https://dev.to/jfet97/javascript-iterators-and-generators-asynchronous-iterators-28b8)
* [How To Accelerate the JavaScript Spread Operator](https://dmitripavlutin.com/javascript-spread-operator-performance-optimization/)
*   **React**
* [Model-Based Testing in React with State Machines](https://css-tricks.com/model-based-testing-in-react-with-state-machines/)
* [14 советов по написанию чистого React-кода. Часть 1](https://habr.com/ru/company/ruvds/blog/465811/)
* [All talks in order from React Rally 2019.](https://www.youtube.com/playlist?list=PLUD4kD-wL_zaXhR4KU1CkUSIzh1TrvnzA#reactrally2019)
* [Document and preview ReactJS components with JSDoc](https://medium.com/@wojciechkrysiak/document-reactjs-components-with-preview-by-using-jsdoc-70d39d2cc777)
* [Adding spinners and notifications to your React app](https://blog.logrocket.com/spinners-notifications-react-app/)
* [Migrating from JavaScript to TypeScript in a Real World React Project](https://drublic.de/blog/from-js-to-typescript/)
* [React Microfrontends and Monorepos: A Perfect Match](https://blog.nrwl.io/monorepos-and-react-microfrontends-a-perfect-match-d49dca64489a)
* [Why is React doing this?](https://gist.github.com/sebmarkbage/a5ef436427437a98408672108df01919?utm_campaign=React+Newsletter&utm_medium=web&utm_source=React_Newsletter_176)
*   **Vue**
* [How to Target the DOM in Vue](https://www.telerik.com/blogs/how-to-target-the-dom-in-vue)
* [Lazy Loading Individual Vue Components and Prefetching](https://vueschool.io/articles/vuejs-tutorials/lazy-loading-individual-vue-components-and-prefetching/)
* [Dynamic SVG Markers for Google Maps in Vue.js](https://medium.com/better-programming/dynamic-svg-markers-for-google-maps-in-vue-js-7541fa1a54a)
* [How to Use Environment Variables in Vue.js](https://www.jenniferbland.com/how-to-use-environment-variables-in-vue-js/)
* [How To Use Google Maps With Vue.js Apps](https://medium.com/better-programming/how-to-use-google-maps-with-vue-js-apps-93268bee7b3f)
* [Vue PWA: A Progressive Web Application Example With Nuxt](https://snipcart.com/blog/vue-pwa)
*   **Angular**
* [Beginner’s Guide to GraphQL with Angular and Apollo](https://medium.com/swlh/beginners-guide-to-graphql-with-angular-and-apollo-2eab75fc806f)
* [Angular Dependency Injection Tips](https://codeburst.io/angular-dependency-injection-tips-ddb24b8244be)
* [How to use form builders in Angular 8 to validate reactive forms](https://blog.logrocket.com/form-builders-angular-8-validate-reactive-forms/)
* [Sharing Components with Angular and Bit](https://blog.bitsrc.io/sharing-components-with-angular-and-bit-b68896806c18)
*   **Ember**
* [Ember Concurrency](https://nullvoxpopuli.com/2019-08-27-ember-concurrency/)
* [Commit Porto '19: Thriving through the hype cycle: an Ember.js story (Ricardo Mendes)](https://www.youtube.com/watch?v=ECkbVa0iC4k)
*   **Libs & Plugins**
* [Live Avatars (like Animoji in the Browser) with face-api.js](https://blog.pragli.com/live-avatars-with-faceapi-js/)
* [hashids.js - A small JavaScript library to generate YouTube-like ids from numbers](https://github.com/niieani/hashids.js)
* [O-GL - Minimal WebGL framework ](https://github.com/oframe/ogl)
* [spacetime: the utiltity for working with timezones](http://spacetime.how/)

### Browsers

* [Firefox 69 arrives with third-party tracking cookies and cryptomining blocked by default](https://venturebeat.com/2019/09/03/mozilla-firefox-69/)
* [Firefox 69 — a tale of Resize Observer, microtasks, CSS, and DevTools](https://hacks.mozilla.org/2019/09/firefox-69-a-tale-of-resize-observer-microtasks-css-and-devtools/)
* [Firefox 69 for developers](https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/69)
* [Today’s Firefox Blocks Third-Party Tracking Cookies and Cryptomining by Default](https://blog.mozilla.org/blog/2019/09/03/todays-firefox-blocks-third-party-tracking-cookies-and-cryptomining-by-default/)