---
title: "Flash to live on forever at the Internet Archive"
publication: "JavaScript Weekly"
issue: 516
published_at: "2020-11-27"
canonical_url: "https://javascriptweekly.com/issues/516"
---

Plus a TypeScript to Lua transpiler, console.log fun, and a love letter to Electron.       

#516 — November 27, 2020 

[Unsubscribe](https://javascriptweekly.com/leave/*|UID|*)|[Read on the Web](https://javascriptweekly.com/issues/516)   

JavaScript Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/uw4wnneqstkas5par3ue.jpg)](http://blog.archive.org/2020/11/19/flash-animations-live-forever-at-the-internet-archive/)  

[Flash Animations Live Forever at the Internet Archive](http://blog.archive.org/2020/11/19/flash-animations-live-forever-at-the-internet-archive/) — I know that many readers built Flash powered sites and used JavaScript’s _ActionScript_ cousin before coming to JavaScript. If so, this may be a walk down memory lane. The Internet archive are now archiving and emulating Flash animations (using [Ruffle](https://ruffle.rs/), a Rust powered Flash emulator) in the browser thanks to WebAssembly. 

Jason Scott   

🎁 [Some Black Friday Things We Found for JavaScript Developers](https://superhighway.dev/black-friday-developer-things-2020) — Rather than clutter up the newsletter with the various offers going on, we’ve collected together all the ones we’ve found (or from people we know) and put them on one page 😄 Enjoy! 

Superhighway   [![\](https://copm.s3.amazonaws.com/5ee98f86.png)](https://www.telerik.com/videos/kendo-react-ui/how-to-build-a-react-form-without-the-hassle-kendoreact-library-demo?utm_medium=cpm&utm_source=jsweekly&utm_campaign=kendo-ui-react-trial-forms-howto-video&utm_content=primary) 

▶[How to Build a React Form Without the Hassle](https://www.telerik.com/videos/kendo-react-ui/how-to-build-a-react-form-without-the-hassle-kendoreact-library-demo?utm_medium=cpm&utm_source=jsweekly&utm_campaign=kendo-ui-react-trial-forms-howto-video&utm_content=primary) — Building React forms from scratch can be messy. How do you deal with form validation or styling, for example? An efficient and easier way is to use the React form library in KendoReact, a professional UI component library. [Learn more in the video](https://www.telerik.com/videos/kendo-react-ui/how-to-build-a-react-form-without-the-hassle-kendoreact-library-demo?utm_medium=cpm&utm_source=jsweekly&utm_campaign=kendo-ui-react-trial-forms-howto-video&utm_content=primary). 

Progress KendoReact sponsor   

[TypeScript Performance Tips](https://github.com/microsoft/TypeScript/wiki/Performance) — This wiki page has been around a while but blew up on social media this week. Its original author stresses the points covered are _guidance_ rather than indisputable fact, and many of the tips improve other forms of performance than just execution speed. 

Microsoft   

[TypeScriptToLua: Write Lua with TypeScript](https://typescripttolua.github.io/) — Lua is embedded in all sorts of places (games, Redis, NGINX..) so being able to write JavaScript and have it converted could open up some extra opportunities. 

TypeScriptToLua Contributors    

- [Electron](https://www.electronjs.org/) is often criticized for its weight, but the creator of an SVG animation tool has [written a love letter to it](https://getloaf.io/blog/why-i-chose-electronjs/) because of how it makes his side business possible.
- TypeScript 4.1 [came out](https://devblogs.microsoft.com/typescript/announcing-typescript-4-1/) last week, and Tomek Sułkowski is particularly excited for [what it means for his Tailwind CSS productivity](https://twitter.com/sulco/status/1332337570563448834);-)
- Henri Helvetica [celebrates the 25th anniversary of the IMG tag](https://twitter.com/HenriHelvetica/status/1331278550016659462) with links to a collection of talks on modern Web image formats and tooling.     

⚡️ Quick Releases 

- [webpack 5.8.0](https://github.com/webpack/webpack/releases/tag/v5.8.0)
- [Iosevka 4.0](https://github.com/be5invis/Iosevka/releases/tag/v4.0.0) — Popular developer font itself defined in code.
- [SystemJS 6.8.0](https://github.com/systemjs/systemjs/releases/tag/6.8.0) — Dynamic ES module loader.
- [vue-loader 16.0.0](https://github.com/vuejs/vue-loader/releases/tag/v16.0.0) — Webpack loader for Vue.js components.
- [underscore 1.12.0](https://github.com/jashkenas/underscore) — Hugely popular 'utility belt.'
- [Size Limit 4.9](https://github.com/ai/size-limit) — Performance budget tool for JS.
- [Node 15.3.0](https://nodejs.org/en/blog/release/v15.3.0/)   

📚 Tutorials, Opinions and Stories 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/iftafv7q2mhl8ztamsb5.jpg)](https://www.joshwcomeau.com/react/boop/)  

[_Boop!_ A Whimsical Twist on Hover Transitions](https://www.joshwcomeau.com/react/boop/) — We love a bit of _whimsy_ and this is a _fantastic_ tutorial (aimed at intermediate React developers) for creating UI elements with a pleasant, animated feel. 

Josh W Comeau   

[Optimizing Your Pages for the Back/Forward Cache](https://web.dev/bfcache/) — Firefox and Safari cache the state of entire pages (rather than just the underlying assets) so if you go back or forward, pages can be restored instantly. Chrome is gradually adopting similar features and there are some things you should take into account. 

Philip Walton (Google)   

[Use `console.log()` Like a Pro](https://denic.hashnode.dev/use-consolelog-like-a-pro) — I can already hear people arguing pros don’t use `console.log`, but the polls usually say otherwise ;-) Nonetheless, some nicely demonstrated tips here. 

Marko Denic   

[Stream Announced the Public v2.0 Availability of Their React Native SDK](https://getstream.io/blog/stream-react-native-v2-sdk-release/?utm_campaign=2020_11_27_javascriptweekly&utm_medium=promoted_newsletter&utm_source=javascriptweeklypromoted) — The React Native SDK is now rewritten in TypeScript to ensure type safety for easier-to-read code and debugging. 

Stream sponsor   

[What is Static Site Generation? How Next.js Uses SSG for Dynamic Web Apps](https://www.freecodecamp.org/news/static-site-generation-with-nextjs/) — A good walkthrough on the differences between SSR and static generation and the basics of building a statically rendered site using Next.js. 

Colby Fayock   

[How I Built and Deployed a Fun Serverless Machine Learning App](https://t.co/qt5tSnzBI7?amp=1) — A thorough examination, including code examples, of how a developer built a complete and fun image filter app with React, JavaScript, and got it running on Netlify and S3. 

Ahmed Besbes   

[Adding Video to Your App with Vime.js](https://blog.logrocket.com/adding-video-with-vime-js/) — Vime.js is a modern framework-agnostic media player that can support services like YouTube and Vimeo. 

Lawrence Oputa   

▶[Automating the YouTube Upload Process Using Node](https://www.youtube.com/watch?v=gncPwSEzq1s) — OK, most of us probably don't need to do this, but I appreciated how the creator walked through designing the feature. Definitely a tight screencast at only 10 minutes. 

QuanticDev   

[OpenTelemetry 101 Technical Guide](https://go.lightstep.com/register-opentelemetry-101-guide-co.html?utm_campaign=js&utm_source=cooper&utm_medium=Email) 

Lightstep sponsor   

▶[React, jQuery, Vue: What's Your Favorite Flavor of Vanilla JS?](https://stackoverflow.blog/2020/11/24/podcast-289-react-jquery-vue-whats-your-favorite-flavor-of-vanilla-js/) 

The Stack Overflow Podcast podcast   

[How to Authenticate Django REST Framework API Calls from a Vue.js Client App](https://briancaffey.github.io/2020/11/27/how-to-authenticate-django-rest-framework-from-vue-app-with-session-authentication-httponly-cookies/)     

🛠 Code & Tools   

supported by [![Okta\](https://res.cloudinary.com/cpress/image/upload/v1602154330/de7dtktheistsfpqdem4.png)](https://developer.okta.com/?utm_campaign=newsletter_cooperpress_all_multiple_inc_dev_sponsored-section_null&utm_source=cooperpress&utm_medium=cpc)    

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/b4ruupxyqepuvzayl9pa.jpg)](https://github.com/javve/list.js)  

[List.js 2.3.0: Add Search, Sort, Filters, and More to Tables and Lists](https://github.com/javve/list.js) — A long standing library with no dependencies that lets you give a bit more dynamism to HTML elements (though lists and tables are the obvious candidates) by adding search, sort, and filter features. [Example.](https://listjs.com/examples/existing-list-add/) 

Jonny Strömberg   

[Limited-Time Sale: 25% off Wallaby.js (First Time in 6 Years) and 50% off Quokka.js](http://wallabyjs.com/store/personal/?utm_source=cooperpress&utm_campaign=javascriptweekly&utm_content=javascript) — Breakpoints and `console.log` is the past, real-time feedback without leaving your editor is the future. 

Wallaby.js sponsor   

[uvu: A Fast and Lightweight Test Runner](https://github.com/lukeed/uvu) — Aimed at both Node and the browser, `uvu` is for anyone who likes things _light_. The output is nice too and as of this week’s [0.5.0 release](https://github.com/lukeed/uvu/releases/tag/v0.5.0), it has native ES module support too. 

Luke Edwards   

[reading-time: Medium-Like Reading Time Estimation](https://github.com/ngryman/reading-time) — Feed it some text and it’ll give you some basic estimates (e.g. ‘7 min read’). 

Nicolas Gryman   

[vue-dock-menu: A Dockable Vue.js Menu Bar](https://github.com/prabhuignoto/vue-dock-menu) — Certainly an _interesting_ UI concept here. It’s a menu bar, until you drag it to be a sidebar! 

Prabhu Murthy   

[Zettlr: A Modern Markdown Editor](https://github.com/Zettlr/Zettlr) — A rather attractive editor. Bear in mind it’s GPL licensed if you want to integrate it anywhere, but you may find it useful just as a personal editor. 

Zettlr   

[web-ext: Command Line Tool to Help Build, Run, and Test Web Extensions](https://github.com/mozilla/web-ext) 
Mozilla   

[Reactochart: Good Looking Chart Components from Spotify](https://github.com/spotify/reactochart)   

[RxJS Ninja Template Library: A Starter Project for Building TypeScript Libaries with the NX Monorepo Approach](https://github.com/rxjs-ninja/nx-library-starter)   

💻 Jobs  

[Engineering Manager (San Francisco)](https://boards.greenhouse.io/triplebyte/jobs/4014637003/?ref=cooperpress_java) — Familiar with current web application frameworks? Got a solid understanding of agile methodologies? Join us and help lead a team, as we build the future of software engineer hiring. 

Triplebyte   

[JavaScript Developer at X-Team (Remote)](https://x-team.com/remote-javascript-developer-jobs/?utm_source=cooperpress&utm_medium=email-ad&utm_campaign=js) — Join the most energizing community for developers and work on projects for Riot Games, FOX, Sony, Coinbase, and more. 

X-Team   

[Find Your Next Job Through Vettery](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-javascriptweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-77584) — Create a profile on Vettery to connect with hiring managers at startups and Fortune 500 companies. It's free for job-seekers. 

Vettery         

Published by [Cooperpress](https://cooperpress.com/) and edited by [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
