The best articles, links and news related to Frontend Development, and more, delivered once a week. All reference in this issue are gathered from Medium, Hacker News, Reddit , Twitter , MyBridge , and so on.

More Issues can be found in Frontend+ Weekly Repository .

News

The State of JavaScript Frameworks, 2017 by NPM: Npm guys use the number by looking at download counts for a package as a percentage of the download count for all packages in the registry at that time (“share of registry”), to mine whether a package is growing faster than the Registry (increasing in popularity) or slower than the registry (becoming less popular). This post focus on Front-End Frameworks, The React Ecosystem and Back-End Frameworks. For front-end frameworks, Preact and Vue is very fast growing, React is both huge and very fast-growing for its size. For react ecosystem, Apollo is growing extremely quickly and MobX has good growth but is yet to challenge Redux.

Nuxt.js 1.0 is out: Nuxt.js is a framework on top of Vue.js, vue-router, vuex and vue-meta. Nuxt 1.0.0 is out, up to date with the lastest versions of Vue, vue-router, vuex and vue-meta. Better stability, performances and ready for production. It also brings a few breaking changes (node >8 compatibility), new features and a lot of bug fixes.

Node v9.4.0 (Current) released: Notable changes include deprecate AsyncHooks Sensitive API and runInAsyncIdScope, remove reaches into _events internals, add rawPacket in err of clientError event, etc. You can turn to the original for more information

New Package Moniker rules: In order to reduce typosquatting of packages, the npm registry not does not allow any similar namings for your package anymore if there’s an existing package already. In effect, this is an active push and encouragement to make people use their user scope for publishing packages. For example, because react-native exists, no one can publish variations like reactnative, but can use a scope like @ceejbot/json-stream.

Tutorial

Engineering Practices

Under the hood

Introduction to modern network load balancing and proxying: In this post the author attempt to rectify the lack of information by providing a gentle introduction to modern network load balancing and proxying. This post includes what is network load balancing and proxying, Load balancer vs. proxy, different load balancer topologies，etc. More reference for microservice can be found in Awesome Reference.

How Operating Systems Work: 10 Concepts you Should Know as a Developer: In this article, the author shares 10 critical operating system concepts that you need to learn if you want to get good at developing software. These are Processes and Process Management, Threads and Concurrency, Scheduling, Memory Management, Input/Output Management, Virtualization, Distributed File Systems, Distributed Shared Memory, Cloud Computing, and so on. More reference for Operating System can be found in Awesome Reference.

Frontend in 2018: More consensus, less complexity: Frameworks like React and Angular have continued to enjoy large-scale support among the community, but new contenders like Vue have also exploded in popularity. Webpack continues to be the build tool of choice and NPM the package system of choice. WebAssembly opened up the web to a multitude of new and exciting use cases with unprecedented speeds. Technologies like GraphQL have innovated the way that APIs are both written and used in web applications.

OpenSource