---
title: "Ionic 4 beta, the Web Beacon API, and some golden oldies"
publication: "JavaScript Weekly"
issue: 396
published_at: "2018-07-27"
canonical_url: "https://javascriptweekly.com/issues/396"
---

This week's JavaScript news       

#396 — July 27, 2018 

[Read on the Web](https://javascriptweekly.com/issues/396)   

JavaScript Weekly   

If you've not ventured to the end of an issue of JavaScript Weekly recently, you'll be missing some of the bonus links or 'golden oldies' we've been running — this issue has a set of 4 older posts we've been seeing getting some fresh love on social media recently, so check those out. 

Also, if you want to submit articles or libraries for us to consider [use this submissions form](https://cooperpress.typeform.com/to/QbNInP) or just hit reply :-) Thanks!
 _— Peter Cooper, editor_    

[Logging Activity with the Web Beacon API](https://www.smashingmagazine.com/2018/07/logging-activity-web-beacon-api/) — The Beacon API is a Web API ([supported](https://caniuse.com/#feat=beacon) by all major browsers) that provides an efficient way for data to be asynchronously sent from a page back to a server for logging purposes. 

Drew McLellan   

[Ionic 4 Beta Released: Build Native Apps with Web Tech](https://blog.ionicframework.com/announcing-the-ionic-4-beta/) — The beta release of Ionic 4, a framework for building native apps and PWAs with Web technology, has _just_ landed. 4.0 marks the first version to completely embrace modern Web APIs such as Custom Elements, CSS Variables and Shadow DOM, plus it’s framework-agnostic at its core. 

Ionic   [![\](https://copm.s3.amazonaws.com/631b4a4a.png)](https://www.fullstory.com/features/dev-tools?utm_source=javascript-weekly&utm_medium=email&utm_content=dev-tools&utm_campaign=dev-tools&utm_acquisition=paid) 

[Developer Tools for Every Customer Session – New in FullStory](https://www.fullstory.com/features/dev-tools?utm_source=javascript-weekly&utm_medium=email&utm_content=dev-tools&utm_campaign=dev-tools&utm_acquisition=paid) — Your browser developer tools are now available for site sessions other than your own. Easily understand performance issues thanks to page speed metrics, network analysis, downloadable HAR files, and comprehensive stack traces on all your visitors’ sessions. 

Fullstory sponsor   

[JavaScript Algorithms and Data Structures](https://github.com/trekhleb/javascript-algorithms#readme) — JavaScript examples of many common algorithms (e.g. bit manipulation, Pascal’s triangle, Hamming distance) and data structures (e.g. linked lists, tries, graphs) with explanations. _(We linked this a couple of months ago but it has been substantially improved since then.)_ 

Oleksii Trekhleb   

[ndb: An Improved Debugging Experience for Node](https://github.com/GoogleChromeLabs/ndb) — Run your Node code with `ndb` and get extra, powerful Node debugging features right in Chrome’s DevTools including editing files and setting breakpoints before modules are loaded. 

Google Chrome Labs   

[Build a State Management System with Vanilla JavaScript](https://css-tricks.com/build-a-state-management-system-with-vanilla-javascript/) — Redux, MobX and Vuex can make managing cross-component state trivial, but what would it take to write one for yourself? 

Andy Bell   

[GitHub Finishes Removing jQuery From Its Web Frontend](https://twitter.com/mislav/status/1022058279000842240) — And they’ve replaced it with.. no specific framework, but judicious use of `querySelectorAll`, custom elements, polyfills, etc. 

Mislav Marohnić on Twitter  

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/knjejp2wscfg37sp6yan.jpg)](https://github.com/piecioshka/simple-data-table)  

[SimpleDataTable: A Simple Data Table Control with No Dependencies](https://github.com/piecioshka/simple-data-table) — [Examples.](https://piecioshka.github.io/simple-data-table/demo/) Significantly lighter than the TUI Grid we linked last week. 

Piotr Kowalski  

💻 Jobs  

[Lead Engineer (Boston)](https://www.upstatement.com/jobs/#lead-engineer) — Work with smart devs and designers to solve meaningful problems for great clients. React, Vue, Gatsby, WordPress, Craft, and more. 

Upstatement   

[Find A JavaScript Job Through Vettery](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-javascriptweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-75455) — Vettery specializes in developer roles and is completely free for job seekers. 

Vettery  

📘 Tutorials and Opinions  

[Redux vs. the React Context API](https://daveceddia.com/context-api-vs-redux/) — How the new context API in React 16.3 works compared to Redux and why you’d choose one over the other. More like this in [today’s React Status newsletter.](https://react.statuscode.com/issues/98) 

Dave Ceddia   

[Adding Particle Effects to DOM Elements with Canvas](https://css-tricks.com/adding-particle-effects-to-dom-elements-with-canvas/) — A neat tutorial showing how to create a striking HTML-to-particle effect. 

Zach Saucier   

[A Crash Course on Serverless APIs with Express and MongoDB](https://hackernoon.com/a-crash-course-on-serverless-apis-with-express-and-mongodb-77774f7730fe) — A really detailed look at running Express (the Node.js webapp library) in a serverless context. 

Adnan Rahić   

[Want to Know More About Ubuntu 18:04? DigitalOcean Can Help](https://www.digitalocean.com/community/tags/ubuntu-18-04?type=tutorials?utm_source=paid_newsletter+javascript+weekly&utm_medium=display&utm_campaign=2018_Brand&utm_content=7-27-18+javascript+weekly+cooperpress) — DigitalOcean offers tutorials, projects and answers to your questions about Ubuntu 18:04. 

DigitalOcean sponsor   

[Hello Vue: A Quick Tutorial on Getting Started with Vue](https://www.telerik.com/blogs/hello-vue-a-quick-tutorial-on-getting-started-with-vue) — A quick tutorial on getting started with Vue that includes the use of a component from the Kendo UI library of Vue UI components. 

John Willoughby   

[Building 'Renderless' Vue Components](https://css-tricks.com/building-renderless-vue-components/) 

Samuel Oloruntoba   

[Crafting a Better User Experience During API Requests](https://uxdesign.cc/crafting-beautiful-ux-with-api-requests-56e7dcc2f58e) 

Ryan Baker   

[Why the New V8 is So Darn Fast](https://nodesource.com/blog/why-the-new-v8-is-so-damn-fast) 

Thorsten Lorenz   

[Free Video Course: How to Upgrade Cordova Applications to Native](https://nativescripting.com/course/upgrading-cordova-applications-to-nativescript/?utm_source=javascript-weekly&utm_medium=newsletter&utm_campaign=nativescript-cordova) 

NativeScript sponsor   

[A Comprehensive Guide to Working with Dates in JavaScript](https://flaviocopes.com/javascript-dates/) 

Flavio Copes   

[Flow Control in Modern JS: From Callbacks to Promises to Async/Await](https://www.sitepoint.com/flow-control-callbacks-promises-async-await/) — One for beginners/learners. 

Craig Buckler  

🔧 Code and Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/xorwmtp72fi2fpexfx8f.jpg)](https://github.com/epicmaxco/vuestic-admin)  

[Vuestic Admin: A Vue.js Admin Dashboard](https://github.com/epicmaxco/vuestic-admin) — Built on Bootstrap 4. [Live demo.](https://vuestic.epicmax.co/#/admin/dashboard) 

Epicmax   

[StealJS 2.0: The 'Futuristic' Dependency Loader and Builder](https://www.bitovi.com/blog/steal-2.0) 

Matthew Phillips   

[JSInspect: Detect Copy-Pasted and Structurally Similar Code](https://github.com/danielstjules/jsinspect) — A tool for finding those duplicated code smells in your codebase. Supports ES6, JSX and Flow. 

Daniel St. Jules   

[Application Stability Monitoring with Bugsnag](https://www.bugsnag.com/?utm_source=cooperpress&utm_medium=cpc&utm_content=trial-signup-link&utm_campaign=stability&utm_term=javascript-weekly-20180727) — Make data-driven decisions on whether you should be building features, or fixing bugs to stabilize your app. 

Bugsnag sponsor   

[jsQR: A Pure QR Code Reading Library](https://github.com/cozmo/jsQR) — [Live demo.](https://cozmo.github.io/jsQR/) It’s incredibly fast. 

Cosmo Wolfe   

[Angular 6.1 Released](https://blog.angular.io/angular-v6-1-now-available-typescript-2-9-scroll-positioning-and-more-9f1c03007bb6) — A minor release that’s a drop-in replacement for Angular 6.0. TypeScript 2.8 and 2.9 support has been added. 

Stephen Fluin (Google)   

[excel4node: An Excel Spreadsheet (XLSX) Generation Library](https://github.com/natergj/excel4node) — Conforms to the ECMA-376 OOXML specification 2nd edition and the examples in the documentation are quite thorough. 

Nathan (Nater) Jorde   

[Unswitch: An Event Handler for Nintendo Switch Controllers on the Web](https://github.com/vaneenige/unswitch) — Based on the Gamepad API. 

Colin van Eenige     

☀️ Some Summery JavaScript Golden Oldies  

[JavaScript Scope and Closures: A Useful Primer/Explainer](https://css-tricks.com/javascript-scope-closures/) — A true golden oldie if you want to nail down your knowledge of scope and closures. 

Zell Liew   

[Debugging Tips and Tricks for Front-End Developers](https://css-tricks.com/debugging-tips-tricks/) — A fantastic round-up of concepts, tools, and things to consider. 

Sarah Drasner   

[Modern JavaScript for Ancient Web Developers](https://trackchanges.postlight.com/modern-javascript-for-ancient-web-developers-58e7cae050f9#.tyug957cb) — _“Doing is learning. Doing it badly? It’s still learning. Learning modern JavaScript these days can feel like a futile exercise in WTF.”_ 

Gina Trapani   

[Babel Time Travel: See Babel Transformations Step by Step](https://babel-time-travel.boopathi.in/) — Click “Compile” on the right then skim along the bottom. 

Boopathi Rajaa          

Curated by [Cooperpress](https://cooperpress.com/) and [Peter Cooper](https://twitter.com/peterc) 

'JavaScript' is a trademark of Oracle Corporation in the US
We are not endorsed by or affiliated with Oracle. 

[Change your email address](https://javascriptweekly.com/edit_subscription/*|UID|*) or[Stop getting this newsletter](https://javascriptweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
