Fork me on GitHub

2017-09-05 JS: Headless Browser 대응, Browserify 재개

Translator: U-Yeong Ju Edit on GitHub See Revisions

JSer.info #347 - Firefox Headless 모드에 관한 문서가 공개됐습니다.

Firefox의 Headless 모드는 Linux 환경에서는 Firefox 55 부터 Mac/Windows 환경에서는 56(현재의 Nightly 버전)부터 동작합니다.

Chrome도 Mac/Linux는 Chrome 59 부터 Windows는 Chrome 60부터 Headless 모드를 사용할 수 있습니다.

과거 2017-05-03 JS: Headless Chrome/Firefox와 PhantomJS/SlimerJS, ES modules - JSer.info에서 정리한 Headless 대응 상황은 다음과 같습니다.

Firefox는 selenium-webdriver를 사용한 예가 소개돼 있습니다.
Chrome은 Chrome 팀이 공개한 Puppeteer을 시작으로 Chromeless, Chrominator, Chromy, Navalia, Lambdium, GhostJS, AutoGCD 등 다양한 라이브러리가 공개돼 있습니다.

NickJS 처럼 PhantomJS에서 Headless Chrome으로 환경을 옮기는 도구도 나오고 있습니다.


Browserify가 substack/node-browserify에서 browserify/browserify의 organization로 옮겨짐과 동시에 다음과 같은 Issue를 생성하여 협력을 구하고 있습니다.

JSer레포트 #1 Bundler의 미래, 테스트 프레임워크의 현황 - JSer.info(일본어)에서 전해드린 것과 같이 Browserify의 개발은 정체돼 있었습니다.
현재 Browserify는 CommonJS를 기반으로한 Bundler 이기 때문에 향후 .mjs(일본어) 등을 지원해야할 상황에 대비할 필요성을 근거로 현재의 에코시스템을 정리 하고 있습니다.

이 Issue를 시작으로 browserify/admin: administrative procedures for the browserify org와 같은 커뮤니티용 문서를 공개하고 지금까지 각기 저장소에 있던 *fy 패키지를 https://github.com/browserify에 한데 모으고 있습니다.

Browserify에 의견이 있는 사람은 이 Issue 게시판에 이슈를 생성하면 좋을 것 같네요.


헤드라인


Announcing TypeScript 2.5 | TypeScript

blogs.msdn.microsoft.com/typescript/2017/08/31/announcing-typescript-2-5/

TypeScript ReleaseNote

TypeScript 2.5가 릴리즈됐습니다.
Optinal-catch-binding과 --preserveSymlinks를 지원하고 에디터 연동 및 중복/alias 패키지의 취급 방식이 개선됐습니다.


Ember.js - Ember 2.15 and 2.16 Beta Released

emberjs.com/blog/2017/09/01/ember-2-15-released.html

JavaScript library ReleaseNote

Ember 2.15가 릴리즈됐습니다.
Ember.Router의 슈퍼-셋인 router service를 공개가 공개됐습니다.


Concurrent JavaScript: It can work! | WebKit

webkit.org/blog/7846/concurrent-javascript-it-can-work/

JavaScript webkit

SharedArrayBuffer가 추가되며 이를 이용해 JavaScript에서 Thread를 지원할 경우에 어떤 형태가 될지 생각해볼 수 있는 글입니다.
현재의 JavaScript VM은 싱글 스레드 이용하고 있으며 멀티 스테드의 경우의 VM 성능 등에 관해 이야기합니다.


🏁 Release: Iteration 10 – 10th developer preview · Issue #177 · ckeditor/ckeditor5-design

github.com/ckeditor/ckeditor5-design/issues/177

JavaScript editor library ReleaseNote

CKEditor 5 v0.10.0이 릴리즈됐습니다.
MSEdge 지원, 툴-팁 메뉴 및 클립보드 기능 등이 개선됐습니다.


아티클


What's New In DevTools (Chrome 62)  |  Web  |  Google Developers

developers.google.com/web/updates/2017/08/devtools-release-notes

Chrome article

Chrome 62의 개발자 도구의 변경 사항이 소개돼 있습니다.
Top-level await을 콘솔에서 이용 가능하며 특정 노드를 스크린샷으로 찍을 수 기능과 CSS Grid의 하일라이트를 지원하고 콘솔 필터가 개선됐습니다.
또 HAR을 import할 수 있도록 개선 됐고 캐쉬 데이터를 열어볼 수 있도록 변경됐습니다.


Form Validation with Web Audio | CSS-Tricks

css-tricks.com/form-validation-web-audio/

web audio accessibility article

Web Audio API와 폼 벨리데이션의 조합에 대해 이야기합니다.


Measuring performance gains — AngularJS to React (with Redux or Mobx)

medium.com/@guptagaruda/measuring-performance-gains-angularjs-to-react-with-redux-or-mobx-fb221517455

React Angular

세 가지 벤치 마킹 앱을 이용해 Angular 1.x와 React/Redux/Mobx를 비교한 글입니다. 현재도 많은 엔터프라이즈 애플리케이션이 Angular 1.x로 동작하고 있으며 만약 React로 이전할 때 어떤 장점이 있는지 살펴보는 것을 목적으로 하고 있습니다.


Decaffeinating a Large CoffeeScript Codebase Without Losing Sleep · DataFox Tech Blog

eng.datafox.com/javascript/2017/07/18/decaffeinating-large-coffeescript-codebase/

CoffeeScript JavaScript

bulk-decaffeinate를 사용해 CoffeeScript에서 JavaScript로 이전하는 방법과 순서에 대해 작성돼 있습니다.


React + RxJSで始める状態管理 - VOYAGE GROUP techlog

techlog.voyagegroup.com/entry/2017/08/31/102915(일본어)

JavaScript TypeScript almin 設計

Write 레이어와 Read 레이어를 분리하여 얻을 수 있는 장점과 단점에 대해 작성돼 있습니다. 책임을 분리하여 복잡성을 낮추고 의존을 국소화하는 방안에 대해 이야기합니다.


사이트, 서비스, 문서


Headless mode - Mozilla | MDN

developer.mozilla.org/en-US/docs/Mozilla/Firefox/Headless_mode

firefox document

Firefox의 headless mode에 대한 소개 글입니다.


Rendering on Google Search  |  Search  |  Google Developers

developers.google.com/search/docs/guides/rendering

Chrome google SEO browser

Google Search Bot의 렌더링 서브 시스템에서 이용하고 있는 Chrome의 버전이나 지원하지 않는(Disable돼 있는) 기능에 관해 작성돼 있습니다.
현시점(2017년 9월 4일) 에서는 Chrome 4을 기반으로 하고 있습니다.


Kea vs setState, Redux, Mobx, Dva, JumpState, Apollo, etc.

medium.com/@mariusandra/kea-vs-setstate-redux-mobx-dva-jumpstate-apollo-etc-4aa26ea11d02

JavaScript React redux

React 용 상태 관리 라이브러리 Kea를 소개한 글입니다.


help wanted · Issue #5 · browserify/discuss

github.com/browserify/discuss/issues/5

browserify issue

browserify의 issue와 향후 로드맵(ES Module나 hmr 등)에 관해 이야기합니다.
이제 각각의 *ify 패키지를 browserify organization에 옮겨 한데 정리하여 관리합니다.


phantombuster/nickjs: Web scraping library made by the Phantombuster team. Modern, simple & works on all websites.

github.com/phantombuster/nickjs

JavaScript browser library

Headless Chrome과 PhantomJS를 지원하는 웹 스크래핑 라이브러리입니다.


소프트웨어, 도구, 라이브러리


react-tools/react-move: React Move 🌀 Beautiful, data-driven animations for React

github.com/react-tools/react-move

React animation library

React에서 데이터 주도적으로 애니메이션을 처리 할 수 있도록 지원하는 라이브러립니다.


lukechilds/keyv: Simple key-value store with support for multiple backends

github.com/lukechilds/keyv

node.js library

Redis, MySQL 등 다양한 백엔드 환경을 지원하는 단순한 KVS 라이브러리입니다.
Map 적인 API를 구현한 adpter를 사용하여 백엔드 환경을 변경할 수 있습니다.


도서


React for Real - O'Reilly Media

shop.oreilly.com/product/9781680502633.do

React book

React를 다루는 도서입니다.


New Javascript Books

newjavascriptbooks.com/

JavaScript book

JavaScript를 주제로한 신간 서적이 정리돼 있는 사이트입니다.


Pull Request to this article
JSer.info Slackに参加する