SlideShare a Scribd company logo
1 of 28
JS digest
Mid-Summer 2017
by Vasyl Khrystiuk & Vitalii Kulyk
Software Developers at ElifTech
www.eliftech.com
Agenda
New libs:
▪ Data-Pixels
▪ Moon
▪ vx
▪ SmartPhoto
▪ Embedo
▪ Microtip
▪ Prettier
▪ Tinytime
▪ Moon.js
▪ Birdview.js
▪ Timeline.js
New releases:
▪ React v15.6.0
Browser news:
▪ Chrome 59 update
▪ Chrome 60 Beta
▪ Safari Technology Preview 32
▪ WebKit Support for WebAssembly
▪ Firefox 54
Misc:
▪ Building the Web of Things
▪ Node.js Will Overtake Java Within a Year:
Analysis
www.eliftech.com
Chrome 59 update
New:
● Headless Chrome
● Notifications on macOS
● Image capture API
DevTools changes:
● CSS and JS code coverage. Find unused CSS and JS with the new Coverage tab.
● Full-page screenshots. Take a screenshot of the entire page, from the top of the viewport to
the bottom.
● Block requests. Manually disable individual requests in the Network panel.
● Step over async await. Step through async functions predictably.
● Unified Command Menu. Execute commands and open files from the newly-unified
Command Menu.
Read more about these here and here
www.eliftech.com
CSS and JS code coverage in Chrome DevTools
How it looks likeRead more about it here
www.eliftech.com
Up until now, trying to step
through code like the snippet
below was a headache. You'd be in
the middle of test(), stepping over
a line, and then you'd get
interrupted by the setInterval()
code. Now, when you step through
async code like test(), DevTools
steps from the first to last line with
consistency.
Step over async await in Chrome DevTools
function wait(ms) {
return new Promise(r => setTimeout(r, ms)).then(() => "Yay");
}
// do some work in background.
setInterval(() => 42, 200);
async function test() {
debugger;
const hello = "world";
const response = await fetch('index.html');
const tmp = await wait(1000);
console.log(tmp);
return hello;
}
async function runTest() {
let result = await test();
console.log(result);
}
Read more about it here
www.eliftech.com
Chrome 60 Beta
New:
▪ Paint Timing API
▪ CSS font-display
▪ Credential Management API improvements
▪ Payment Request API on desktop versions, sites can now collect payments
▪ Object rest & spread properties are now supported
▪ The new Web Budget API for Push Notification
▪ Paint performance improvements
▪ VP9 codec support
Read more about it here
www.eliftech.com
Safari Technology Preview 32
New:
▪ WebRTC and Media Capture. Safari now supports peer-to-peer video conferencing
through webRTC.
▪ WebAssembly. WebAssembly is a low-level binary format for executable code on the
web. It is a standards-based supplement to JavaScript. It is secure, portable, and
designed to be fast and efficient.
▪ Auto-Play Improvements. Safari prevents auto-play of media with sound on most
websites.
Read more about it here
www.eliftech.com
What is WebAssembly
WebAssembly or wasm is a new portable, size- and load-time-efficient low-level bytecode
format for in-browser client-side scripting for compilation to the web that is more efficient
than JavaScript, from which it evolved. Its initial aim is to support compilation from C and
C++.
Read more about it here
www.eliftech.com
Firefox 54 released
Here might be a long list of bugfixes.
TL;DR:
The browser is better now.
Read more about it here
www.eliftech.com
Building the Web of Things
Mozilla is working to create a Web of Things framework of software and services that can
bridge the communication gap between connected devices. By providing these devices
with web URLs and a standardized data model and API, we are moving towards a more
decentralized Internet of Things that is safe, open and interoperable.
Read more about it here
www.eliftech.com
Practice: Object rest and spread properties
ES2015 array rest and spread elements:
Read more about it here
www.eliftech.com
Practice: Object rest and spread properties
ES.next: object rest and spread properties:
Read more about it here
www.eliftech.com
Practice: Object rest and spread properties
Spread properties offer a more elegant alternative to Object.assign() in many situations:
Read more about it here
www.eliftech.com
Analysis: Node.js Will Overtake Java Within a Year
Programming language
popularity according to
the TIOBE index*.
* TIOBE programming
community index is a measure of
popularity of programming
languages, created and
maintained by the TIOBE
Company based in Eindhoven
Read more about it here
www.eliftech.com
Analysis: Node.js Will Overtake Java Within a Year
HackerNews has a “who is hiring” section and a tracking system for jobs. In the picture below
you can see a comparison of Node js (blue) and Java (black) from August 2011 to June 2017.
Read more about it here
www.eliftech.com
React v15.6.0
Improvements:
React:
▪ Better input
▪ Less Noisy Deprecation Warnings
React DOM:
▪ Add support for CSS variables in style attribute.
▪ Add support for CSS Grid style properties.
React Addons fixes:
▪ Fix AMD support for addons depending on react.
▪ Fix isMounted() to return true in componentWillUnmount.
▪ Fix react-addons-update to not depend on native Object.assign.
▪ Remove broken Google Closure Compiler annotation from create-react-class.
▪ Remove unnecessary dependency from react-linked-input.
▪ Point react-addons-(css-)transition-group to the new package.
Read more about it here
www.eliftech.com
Cool libs
www.eliftech.com
Data-Pixels
Create Pixel Art Programmatically
Read about it here
www.eliftech.com
vx is collection of reusable low-level visualization components. vx combines the power of d3 to
generate your visualization with the benefits of react for updating the DOM.
VX
Read about it here
www.eliftech.com
SmartPhoto
The most easy to use responsive image viewer especially for mobile devices
Read about it here
www.eliftech.com
Embedo
A simple, lightweight and standalone social media content embed plugin for web
Read about it here
www.eliftech.com
Moon.js
A minimal, blazing fast user interface library
Read about it here
www.eliftech.com
Microtip
Modern, minimal css tooltip library
Read about it here
www.eliftech.com
Prettier
Prettier takes your code and reprints it from scratch by taking the line length into account.
For example, take the following code:
foo(arg1, arg2, arg3, arg4);
It fits in a single line so it's going to stay as is. However, we've all run into this situation:
foo(reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(),
isThereSeriouslyAnotherOne());
Suddenly our previous format for calling function breaks down because this is too long. Prettier is
going to do the painstaking work of reprinting it like that for you:
foo(
reallyLongArg(),
omgSoManyParameters(),
IShouldRefactorThis(),
isThereSeriouslyAnotherOne()
);
Read about it here, watch video here
www.eliftech.com
Timeline.js
Read about it here
www.eliftech.com
tinytime
tinytime exports a single function that returns a template object. This object has a single
method, render, which takes a Date and returns a string with the rendered data.
const template = tinytime('The time is {h}:{mm}:{ss}{a}.');
template.render(new Date()); // The time is 11:10:20PM.
Birdview.js
Read about it here
Read about it here
www.eliftech.com
Sources:
https://facebook.github.io/react/blog/2017/06/13/react-v15.6.0.html
http://webassembly.org/
https://www.sitepoint.com/results-ultimate-css-survey-2017/
www.eliftech.com
Thank you for attention!
Stay tuned for next edition of JS digest
Find us at eliftech.com
Have a question? Contact us:
info@eliftech.com

More Related Content

What's hot

SnapyX
SnapyXSnapyX
SnapyXekino
 
Confoo - Javascript Server Side : How to start
Confoo - Javascript Server Side : How to startConfoo - Javascript Server Side : How to start
Confoo - Javascript Server Side : How to startQuentin Adam
 
.Net platform .Net core fundamentals
.Net platform .Net core  fundamentals.Net platform .Net core  fundamentals
.Net platform .Net core fundamentalsHosein Mansouri
 
[Workshop] "Vuetify in practice", Alexander Stepanov
[Workshop] "Vuetify in practice", Alexander Stepanov[Workshop] "Vuetify in practice", Alexander Stepanov
[Workshop] "Vuetify in practice", Alexander StepanovFwdays
 
Node.js - Introduction and role in Frontend Development
Node.js - Introduction and role in Frontend DevelopmentNode.js - Introduction and role in Frontend Development
Node.js - Introduction and role in Frontend DevelopmentJulián David Duque
 
The Saga of JavaScript and TypeScript: Part 1
The Saga of JavaScript and TypeScript: Part 1The Saga of JavaScript and TypeScript: Part 1
The Saga of JavaScript and TypeScript: Part 1Haci Murat Yaman
 
Node.js In The Enterprise - A Primer
Node.js In The Enterprise - A PrimerNode.js In The Enterprise - A Primer
Node.js In The Enterprise - A PrimerNaveen S.R
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.jsEdy Segura
 
Build a lego app with CocoaPods
Build a lego app with CocoaPodsBuild a lego app with CocoaPods
Build a lego app with CocoaPodsCocoaHeads France
 
MEAN Stack - Google Developers Live 10/03/2013
MEAN Stack - Google Developers Live 10/03/2013MEAN Stack - Google Developers Live 10/03/2013
MEAN Stack - Google Developers Live 10/03/2013Valeri Karpov
 
Developing a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&CordovaDeveloping a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&CordovaDamir Beylkhanov
 
React Typescript for beginners: Translator app with Microsoft cognitive services
React Typescript for beginners: Translator app with Microsoft cognitive servicesReact Typescript for beginners: Translator app with Microsoft cognitive services
React Typescript for beginners: Translator app with Microsoft cognitive servicesFabio Biondi
 
Easy Decoupled Sitebuilding with GraphQL and Next.js
Easy Decoupled Sitebuilding with GraphQL and Next.jsEasy Decoupled Sitebuilding with GraphQL and Next.js
Easy Decoupled Sitebuilding with GraphQL and Next.jsJani Tarvainen
 

What's hot (20)

The shift to the edge
The shift to the edgeThe shift to the edge
The shift to the edge
 
SnapyX
SnapyXSnapyX
SnapyX
 
Nodejs
NodejsNodejs
Nodejs
 
Confoo - Javascript Server Side : How to start
Confoo - Javascript Server Side : How to startConfoo - Javascript Server Side : How to start
Confoo - Javascript Server Side : How to start
 
.Net platform .Net core fundamentals
.Net platform .Net core  fundamentals.Net platform .Net core  fundamentals
.Net platform .Net core fundamentals
 
[Workshop] "Vuetify in practice", Alexander Stepanov
[Workshop] "Vuetify in practice", Alexander Stepanov[Workshop] "Vuetify in practice", Alexander Stepanov
[Workshop] "Vuetify in practice", Alexander Stepanov
 
Node.js - Introduction and role in Frontend Development
Node.js - Introduction and role in Frontend DevelopmentNode.js - Introduction and role in Frontend Development
Node.js - Introduction and role in Frontend Development
 
The Saga of JavaScript and TypeScript: Part 1
The Saga of JavaScript and TypeScript: Part 1The Saga of JavaScript and TypeScript: Part 1
The Saga of JavaScript and TypeScript: Part 1
 
Firebase and AngularJS
Firebase and AngularJSFirebase and AngularJS
Firebase and AngularJS
 
Node.js In The Enterprise - A Primer
Node.js In The Enterprise - A PrimerNode.js In The Enterprise - A Primer
Node.js In The Enterprise - A Primer
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
 
Build a lego app with CocoaPods
Build a lego app with CocoaPodsBuild a lego app with CocoaPods
Build a lego app with CocoaPods
 
MEAN Stack - Google Developers Live 10/03/2013
MEAN Stack - Google Developers Live 10/03/2013MEAN Stack - Google Developers Live 10/03/2013
MEAN Stack - Google Developers Live 10/03/2013
 
Developing a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&CordovaDeveloping a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&Cordova
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
 
Net core
Net coreNet core
Net core
 
Node.js with Express
Node.js with ExpressNode.js with Express
Node.js with Express
 
React Typescript for beginners: Translator app with Microsoft cognitive services
React Typescript for beginners: Translator app with Microsoft cognitive servicesReact Typescript for beginners: Translator app with Microsoft cognitive services
React Typescript for beginners: Translator app with Microsoft cognitive services
 
.NET Core on Mac
.NET Core on Mac.NET Core on Mac
.NET Core on Mac
 
Easy Decoupled Sitebuilding with GraphQL and Next.js
Easy Decoupled Sitebuilding with GraphQL and Next.jsEasy Decoupled Sitebuilding with GraphQL and Next.js
Easy Decoupled Sitebuilding with GraphQL and Next.js
 

Similar to JS digest. Mid-Summer 2017

JS digest. November 2017
JS digest. November 2017JS digest. November 2017
JS digest. November 2017ElifTech
 
Web development concepts using microsoft technologies
Web development concepts using microsoft technologiesWeb development concepts using microsoft technologies
Web development concepts using microsoft technologiesHosam Kamel
 
Crosswalk and the Intel XDK
Crosswalk and the Intel XDKCrosswalk and the Intel XDK
Crosswalk and the Intel XDKIntel® Software
 
Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)湯米吳 Tommy Wu
 
Front-end. Global domination
Front-end. Global dominationFront-end. Global domination
Front-end. Global dominationStfalcon Meetups
 
Js foo - Sept 8 upload
Js foo - Sept 8 uploadJs foo - Sept 8 upload
Js foo - Sept 8 uploadDebnath Sinha
 
Develop & Deploy Node.js app on Windows Azure
Develop & Deploy Node.js app on Windows AzureDevelop & Deploy Node.js app on Windows Azure
Develop & Deploy Node.js app on Windows AzureAndri Yadi
 
Node.js meetup at Palo Alto Networks Tel Aviv
Node.js meetup at Palo Alto Networks Tel AvivNode.js meetup at Palo Alto Networks Tel Aviv
Node.js meetup at Palo Alto Networks Tel AvivRon Perlmuter
 
Guide to Vite JS – Modern Fron-End Development Tool
Guide to Vite JS – Modern Fron-End Development ToolGuide to Vite JS – Modern Fron-End Development Tool
Guide to Vite JS – Modern Fron-End Development ToolAlbiorix Technology
 
(In)Security Implication in the JS Universe
(In)Security Implication in the JS Universe(In)Security Implication in the JS Universe
(In)Security Implication in the JS UniverseStefano Di Paola
 
WinJS at NYC Code Camp 2012
WinJS at NYC Code Camp 2012WinJS at NYC Code Camp 2012
WinJS at NYC Code Camp 2012Dmitri Artamonov
 
The Happy Path: Migration Strategies for Node.js
The Happy Path: Migration Strategies for Node.jsThe Happy Path: Migration Strategies for Node.js
The Happy Path: Migration Strategies for Node.jsNicholas Jansma
 
SLUGUK BUILD Round-up
SLUGUK BUILD Round-upSLUGUK BUILD Round-up
SLUGUK BUILD Round-upDerek Lakin
 
내꺼내꺼
내꺼내꺼내꺼내꺼
내꺼내꺼misty915
 
StrongLoop Overview
StrongLoop OverviewStrongLoop Overview
StrongLoop OverviewShubhra Kar
 

Similar to JS digest. Mid-Summer 2017 (20)

JS digest. November 2017
JS digest. November 2017JS digest. November 2017
JS digest. November 2017
 
Web development concepts using microsoft technologies
Web development concepts using microsoft technologiesWeb development concepts using microsoft technologies
Web development concepts using microsoft technologies
 
Crosswalk and the Intel XDK
Crosswalk and the Intel XDKCrosswalk and the Intel XDK
Crosswalk and the Intel XDK
 
Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)
 
Front-end. Global domination
Front-end. Global dominationFront-end. Global domination
Front-end. Global domination
 
Frontend. Global domination.
Frontend. Global domination.Frontend. Global domination.
Frontend. Global domination.
 
Js foo - Sept 8 upload
Js foo - Sept 8 uploadJs foo - Sept 8 upload
Js foo - Sept 8 upload
 
Node js
Node jsNode js
Node js
 
Develop & Deploy Node.js app on Windows Azure
Develop & Deploy Node.js app on Windows AzureDevelop & Deploy Node.js app on Windows Azure
Develop & Deploy Node.js app on Windows Azure
 
Intel AppUp Day Bologna
Intel AppUp Day BolognaIntel AppUp Day Bologna
Intel AppUp Day Bologna
 
Node.js meetup at Palo Alto Networks Tel Aviv
Node.js meetup at Palo Alto Networks Tel AvivNode.js meetup at Palo Alto Networks Tel Aviv
Node.js meetup at Palo Alto Networks Tel Aviv
 
Guide to Vite JS – Modern Fron-End Development Tool
Guide to Vite JS – Modern Fron-End Development ToolGuide to Vite JS – Modern Fron-End Development Tool
Guide to Vite JS – Modern Fron-End Development Tool
 
ASP.NET
ASP.NETASP.NET
ASP.NET
 
Web summit.pptx
Web summit.pptxWeb summit.pptx
Web summit.pptx
 
(In)Security Implication in the JS Universe
(In)Security Implication in the JS Universe(In)Security Implication in the JS Universe
(In)Security Implication in the JS Universe
 
WinJS at NYC Code Camp 2012
WinJS at NYC Code Camp 2012WinJS at NYC Code Camp 2012
WinJS at NYC Code Camp 2012
 
The Happy Path: Migration Strategies for Node.js
The Happy Path: Migration Strategies for Node.jsThe Happy Path: Migration Strategies for Node.js
The Happy Path: Migration Strategies for Node.js
 
SLUGUK BUILD Round-up
SLUGUK BUILD Round-upSLUGUK BUILD Round-up
SLUGUK BUILD Round-up
 
내꺼내꺼
내꺼내꺼내꺼내꺼
내꺼내꺼
 
StrongLoop Overview
StrongLoop OverviewStrongLoop Overview
StrongLoop Overview
 

More from ElifTech

Go Concurrency Patterns
Go Concurrency PatternsGo Concurrency Patterns
Go Concurrency PatternsElifTech
 
Go Concurrency Basics
Go Concurrency Basics Go Concurrency Basics
Go Concurrency Basics ElifTech
 
Domain Logic Patterns
Domain Logic PatternsDomain Logic Patterns
Domain Logic PatternsElifTech
 
Dive into .Net Core framework
Dive into .Net Core framework Dive into .Net Core framework
Dive into .Net Core framework ElifTech
 
VR digest. August 2018
VR digest. August 2018VR digest. August 2018
VR digest. August 2018ElifTech
 
JS digest. July 2018
JS digest.  July 2018JS digest.  July 2018
JS digest. July 2018ElifTech
 
VR digest. July 2018
VR digest. July 2018VR digest. July 2018
VR digest. July 2018ElifTech
 
IoT digest. July 2018
IoT digest. July 2018IoT digest. July 2018
IoT digest. July 2018ElifTech
 
VR digest. June 2018
VR digest. June 2018VR digest. June 2018
VR digest. June 2018ElifTech
 
IoT digest. June 2018
IoT digest. June 2018IoT digest. June 2018
IoT digest. June 2018ElifTech
 
IoT digest. May 2018
IoT digest. May 2018IoT digest. May 2018
IoT digest. May 2018ElifTech
 
Object Detection with Tensorflow
Object Detection with TensorflowObject Detection with Tensorflow
Object Detection with TensorflowElifTech
 
VR digest. May 2018
VR digest. May 2018VR digest. May 2018
VR digest. May 2018ElifTech
 
Polymer: brief introduction
Polymer: brief introduction Polymer: brief introduction
Polymer: brief introduction ElifTech
 
JS digest. April 2018
JS digest. April 2018JS digest. April 2018
JS digest. April 2018ElifTech
 
VR digest. April, 2018
VR digest. April, 2018 VR digest. April, 2018
VR digest. April, 2018 ElifTech
 
IoT digest. April 2018
IoT digest. April 2018IoT digest. April 2018
IoT digest. April 2018ElifTech
 
IoT digest. March 2018
IoT digest. March 2018IoT digest. March 2018
IoT digest. March 2018ElifTech
 
VR digest. March, 2018
VR digest. March, 2018VR digest. March, 2018
VR digest. March, 2018ElifTech
 
VR digest. February, 2018
VR digest. February, 2018VR digest. February, 2018
VR digest. February, 2018ElifTech
 

More from ElifTech (20)

Go Concurrency Patterns
Go Concurrency PatternsGo Concurrency Patterns
Go Concurrency Patterns
 
Go Concurrency Basics
Go Concurrency Basics Go Concurrency Basics
Go Concurrency Basics
 
Domain Logic Patterns
Domain Logic PatternsDomain Logic Patterns
Domain Logic Patterns
 
Dive into .Net Core framework
Dive into .Net Core framework Dive into .Net Core framework
Dive into .Net Core framework
 
VR digest. August 2018
VR digest. August 2018VR digest. August 2018
VR digest. August 2018
 
JS digest. July 2018
JS digest.  July 2018JS digest.  July 2018
JS digest. July 2018
 
VR digest. July 2018
VR digest. July 2018VR digest. July 2018
VR digest. July 2018
 
IoT digest. July 2018
IoT digest. July 2018IoT digest. July 2018
IoT digest. July 2018
 
VR digest. June 2018
VR digest. June 2018VR digest. June 2018
VR digest. June 2018
 
IoT digest. June 2018
IoT digest. June 2018IoT digest. June 2018
IoT digest. June 2018
 
IoT digest. May 2018
IoT digest. May 2018IoT digest. May 2018
IoT digest. May 2018
 
Object Detection with Tensorflow
Object Detection with TensorflowObject Detection with Tensorflow
Object Detection with Tensorflow
 
VR digest. May 2018
VR digest. May 2018VR digest. May 2018
VR digest. May 2018
 
Polymer: brief introduction
Polymer: brief introduction Polymer: brief introduction
Polymer: brief introduction
 
JS digest. April 2018
JS digest. April 2018JS digest. April 2018
JS digest. April 2018
 
VR digest. April, 2018
VR digest. April, 2018 VR digest. April, 2018
VR digest. April, 2018
 
IoT digest. April 2018
IoT digest. April 2018IoT digest. April 2018
IoT digest. April 2018
 
IoT digest. March 2018
IoT digest. March 2018IoT digest. March 2018
IoT digest. March 2018
 
VR digest. March, 2018
VR digest. March, 2018VR digest. March, 2018
VR digest. March, 2018
 
VR digest. February, 2018
VR digest. February, 2018VR digest. February, 2018
VR digest. February, 2018
 

Recently uploaded

Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...masabamasaba
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...
WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...
WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...WSO2
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 

Recently uploaded (20)

Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...
WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...
WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AI
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 

JS digest. Mid-Summer 2017

  • 1. JS digest Mid-Summer 2017 by Vasyl Khrystiuk & Vitalii Kulyk Software Developers at ElifTech
  • 2. www.eliftech.com Agenda New libs: ▪ Data-Pixels ▪ Moon ▪ vx ▪ SmartPhoto ▪ Embedo ▪ Microtip ▪ Prettier ▪ Tinytime ▪ Moon.js ▪ Birdview.js ▪ Timeline.js New releases: ▪ React v15.6.0 Browser news: ▪ Chrome 59 update ▪ Chrome 60 Beta ▪ Safari Technology Preview 32 ▪ WebKit Support for WebAssembly ▪ Firefox 54 Misc: ▪ Building the Web of Things ▪ Node.js Will Overtake Java Within a Year: Analysis
  • 3. www.eliftech.com Chrome 59 update New: ● Headless Chrome ● Notifications on macOS ● Image capture API DevTools changes: ● CSS and JS code coverage. Find unused CSS and JS with the new Coverage tab. ● Full-page screenshots. Take a screenshot of the entire page, from the top of the viewport to the bottom. ● Block requests. Manually disable individual requests in the Network panel. ● Step over async await. Step through async functions predictably. ● Unified Command Menu. Execute commands and open files from the newly-unified Command Menu. Read more about these here and here
  • 4. www.eliftech.com CSS and JS code coverage in Chrome DevTools How it looks likeRead more about it here
  • 5. www.eliftech.com Up until now, trying to step through code like the snippet below was a headache. You'd be in the middle of test(), stepping over a line, and then you'd get interrupted by the setInterval() code. Now, when you step through async code like test(), DevTools steps from the first to last line with consistency. Step over async await in Chrome DevTools function wait(ms) { return new Promise(r => setTimeout(r, ms)).then(() => "Yay"); } // do some work in background. setInterval(() => 42, 200); async function test() { debugger; const hello = "world"; const response = await fetch('index.html'); const tmp = await wait(1000); console.log(tmp); return hello; } async function runTest() { let result = await test(); console.log(result); } Read more about it here
  • 6. www.eliftech.com Chrome 60 Beta New: ▪ Paint Timing API ▪ CSS font-display ▪ Credential Management API improvements ▪ Payment Request API on desktop versions, sites can now collect payments ▪ Object rest & spread properties are now supported ▪ The new Web Budget API for Push Notification ▪ Paint performance improvements ▪ VP9 codec support Read more about it here
  • 7. www.eliftech.com Safari Technology Preview 32 New: ▪ WebRTC and Media Capture. Safari now supports peer-to-peer video conferencing through webRTC. ▪ WebAssembly. WebAssembly is a low-level binary format for executable code on the web. It is a standards-based supplement to JavaScript. It is secure, portable, and designed to be fast and efficient. ▪ Auto-Play Improvements. Safari prevents auto-play of media with sound on most websites. Read more about it here
  • 8. www.eliftech.com What is WebAssembly WebAssembly or wasm is a new portable, size- and load-time-efficient low-level bytecode format for in-browser client-side scripting for compilation to the web that is more efficient than JavaScript, from which it evolved. Its initial aim is to support compilation from C and C++. Read more about it here
  • 9. www.eliftech.com Firefox 54 released Here might be a long list of bugfixes. TL;DR: The browser is better now. Read more about it here
  • 10. www.eliftech.com Building the Web of Things Mozilla is working to create a Web of Things framework of software and services that can bridge the communication gap between connected devices. By providing these devices with web URLs and a standardized data model and API, we are moving towards a more decentralized Internet of Things that is safe, open and interoperable. Read more about it here
  • 11. www.eliftech.com Practice: Object rest and spread properties ES2015 array rest and spread elements: Read more about it here
  • 12. www.eliftech.com Practice: Object rest and spread properties ES.next: object rest and spread properties: Read more about it here
  • 13. www.eliftech.com Practice: Object rest and spread properties Spread properties offer a more elegant alternative to Object.assign() in many situations: Read more about it here
  • 14. www.eliftech.com Analysis: Node.js Will Overtake Java Within a Year Programming language popularity according to the TIOBE index*. * TIOBE programming community index is a measure of popularity of programming languages, created and maintained by the TIOBE Company based in Eindhoven Read more about it here
  • 15. www.eliftech.com Analysis: Node.js Will Overtake Java Within a Year HackerNews has a “who is hiring” section and a tracking system for jobs. In the picture below you can see a comparison of Node js (blue) and Java (black) from August 2011 to June 2017. Read more about it here
  • 16. www.eliftech.com React v15.6.0 Improvements: React: ▪ Better input ▪ Less Noisy Deprecation Warnings React DOM: ▪ Add support for CSS variables in style attribute. ▪ Add support for CSS Grid style properties. React Addons fixes: ▪ Fix AMD support for addons depending on react. ▪ Fix isMounted() to return true in componentWillUnmount. ▪ Fix react-addons-update to not depend on native Object.assign. ▪ Remove broken Google Closure Compiler annotation from create-react-class. ▪ Remove unnecessary dependency from react-linked-input. ▪ Point react-addons-(css-)transition-group to the new package. Read more about it here
  • 18. www.eliftech.com Data-Pixels Create Pixel Art Programmatically Read about it here
  • 19. www.eliftech.com vx is collection of reusable low-level visualization components. vx combines the power of d3 to generate your visualization with the benefits of react for updating the DOM. VX Read about it here
  • 20. www.eliftech.com SmartPhoto The most easy to use responsive image viewer especially for mobile devices Read about it here
  • 21. www.eliftech.com Embedo A simple, lightweight and standalone social media content embed plugin for web Read about it here
  • 22. www.eliftech.com Moon.js A minimal, blazing fast user interface library Read about it here
  • 23. www.eliftech.com Microtip Modern, minimal css tooltip library Read about it here
  • 24. www.eliftech.com Prettier Prettier takes your code and reprints it from scratch by taking the line length into account. For example, take the following code: foo(arg1, arg2, arg3, arg4); It fits in a single line so it's going to stay as is. However, we've all run into this situation: foo(reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne()); Suddenly our previous format for calling function breaks down because this is too long. Prettier is going to do the painstaking work of reprinting it like that for you: foo( reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne() ); Read about it here, watch video here
  • 26. www.eliftech.com tinytime tinytime exports a single function that returns a template object. This object has a single method, render, which takes a Date and returns a string with the rendered data. const template = tinytime('The time is {h}:{mm}:{ss}{a}.'); template.render(new Date()); // The time is 11:10:20PM. Birdview.js Read about it here Read about it here
  • 28. www.eliftech.com Thank you for attention! Stay tuned for next edition of JS digest Find us at eliftech.com Have a question? Contact us: info@eliftech.com