Web Tools #424 - JS Utilities, Git/CLI Tools, Vue.js

Web Tools Weekly
WEB VERSION
Tools for Web Developers

Issue #424 • September 2, 2021

Advertisement
Free Guide: The Evolution of JavaScript Tooling
Frameworks and libraries have been created to ease the burden of writing complex UI code. Learn how to deliver applications faster, better, and on budget in our free guide.

Download Your Free Guide!
Sencha

Once in a while you may want to take a look at what's in the pipeline when it comes to new JavaScript features (specifically in the ECMAScript spec).

The official GitHub account for Ecma International (the standards body that oversees advances in the language) has a proposals repository that includes tables showing some features that are at various stages of approval.

Ecma International

You might like to check out the stage 2 and stage 3 proposals that have not yet been rejected or completed (i.e. are still in progress, but far along). Here are some interesting ones in those tables:

  • JSON Modules - Builds on another proposal called Import Assertions to add the ability to import a JSON module in a common way across JavaScript environments.
  • Error Cause - Adds a cause property in an options parameter in the Error() constructor. This aims to simplify some complex debugging involving deep internal methods.
  • Array find from last - Adds .findLast() and .findLastIndex() methods on arrays and typed arrays. These will help to find an element of an array from last to first with a condition function.
  • New Set methods - For example, Set.intersection(), Set.union(), Set.isSubsetOf(), Set.isSupersetOf(), etc.
  • Records & Tuples - Introduces two new deeply immutable data structures to JavaScript. One is object-like ( #{ x: 1, y: 2 } ) and the other is array-like ( #[1, 2, 3, 4] ).
  • The Pipeline Operator - This operator (commonly found in other programming languages) looks like: |>  and will help to streamline chained function calls and provides a practical alternative to extending built-in prototypes.

There are lots of others listed in the repo and you'll also find links to other proposals that are at stage 0 or stage 1, and therefore are not too far along yet.

Now on to this week's tools!
 

 

JavaScript Utilities

Free Guide: The Evolution of JavaScript Tooling.
Frameworks and libraries have been created to ease the burden of writing complex UI code. Learn how to deliver applications faster, better, and on budget in our free guide. Download your free guide!  sponsored 

isomorphic-timers-promises
Timers/promises for client and server.

ts-gyb
A multi-purpose code generation tool based on TypeScript interfaces to generate production ready and well documented code from TypeScript code.

HyperFormula
An open-source calculation engine written in TypeScript that allows you to perform Excel-like calculations in your business applications and works with Vue, React, and Angular.

AutoMapper TypeScript
An object-object mapping solution by convention in TypeScript.

html-to-image
Utility to generate an image from a DOM node using HTML5 Canvas and SVG.

inLine
A free library to create a simple and small WYSIWYG text editor designed to fit into any layout, for web and mobile apps.

inLine

JavaScript Cookie
A simple, lightweight JavaScript API for handling browser cookies.

FZF for JavaScript
Do fuzzy matching using the FZF algorithm in JavaScript.

color
JavaScript library for immutable color conversion and manipulation with support for CSS color strings.

Mapus
A tool to explore and annotate collaboratively on a map. You can draw, add markers, lines, areas, find places to go, observe other users, and much more.

fzstd
High performance decompression in a pure JavaScript, 8kb package, using the Zstandard data compression algorithm.
 

Git, GitHub, and Command Line Tools

Elevate Fall Summit Free Tickets
Grab your free tickets for Elevate, the biggest conference for engineering and product leaders, with speakers like Reddit’s CTO or Slack’s VP Engineering. Use promo code WTW21 to get a 100% discount on the 3-day pass.   sponsored 

barchart
A small shell program to make bar charts in your terminal.

Noteli
A CLI based notes app built using TypeScript, MongoDB, and Auth0.

Mosh
Remote terminal application that allows roaming, supports intermittent connectivity, and provides intelligent local echo and line editing of user keystrokes.

GitHub Rater
Enter a GitHub user name and this tool will give you a score (similar to "PageSpeed Insights"). I got a 92/100 even though I'm not all that active on GitHub (though I do have a few popular repos).

Zellij
A Linux or Mac terminal workspace that has the base functionality of a terminal multiplexer (e.g. like tmux) but includes built-in features to extend it and create a personalized environment.
 
Zellij

dotly
A simple, fast, dotfiles framework for improved productivity.

Fig
Adds VS Code-style autocomplete to your Mac terminal. As you type, pops up subcommands, options, and contextually relevant arguments in your existing terminal.

Cliffy
A command line framework for Deno for creating interactive command line tools.

On the Release Radar:

Vue Tools

Elevate Fall Summit Free Tickets
Grab your free tickets for Elevate, the biggest conference for engineering and product leaders, with speakers like Reddit’s CTO or Slack’s VP Engineering. Use promo code WTW21 to get a 100% discount on the 3-day pass.   sponsored 

vitesse-lite
A lightweight version of Vitesse, the opinionated Vite starter template.

nuxt/image
Plug-and-play image optimization for Nuxt.js apps. Resize and transform your images in your code using a built-in optimizer or your favorite CDN.

rovueing-tabindex
Add "roving" tabindex values to your Vue components. See the linked video for an explanation of what "roving" means in this context.

petite-vue
An alternative distribution of Vue optimized for progressive enhancement.

vue-grep
A command-line tool that lets you search your Vue codebase using CSS selector syntax (like querySelectorAll or jQuery), for navigating large code bases.

v-lazy-image
A Vue component to lazy load an image automatically when it enters the viewport using the Intersection Observer API.

vuex-persistedstate
Persist and rehydrate your Vuex state between page reloads.

Figma-Low-Code
An Open source project that allows you to use Figma designs directly in Vue applications.
 
Figma-Low-Code

vue3-sfc-loader
Single File Component loader for Vue. Load .vue files directly from your HTML with no Node.js environment and no build step.

vue-frag
Use Vue 3's Fragment feature in Vue 2 to return multiple root elements.

Splitpanes
A reliable, simple and touch-ready panes splitter and resizer for Vue apps.

vue-email-autocomplete
A configurable and lightweight Vue wrapper component that enables out-of- the-box email autocomplete/suggestions on input elements.

Commercial Apps and Classifieds

These are commercial (non-free) apps, paid classifieds, and affiliate links. You can submit a link for consideration or you can buy a classified link (will be marked "ad").

Vadootv - Video hosting and marketing made simple.

JS E-Books Bundle - 3 JS/DOM e-books in EPUB, PDF, MOBI formats $9. ad 

Rainforest - A complete QA platform for software releases.

React for Beginners - Course w/ 29 HD videos (~5 hours) to learn React. ad 

Hippobase - Self-host open source databases in one click.

BackgroundRemover.app - API to remove backgrounds from images.
 

A Tweet for Thought

Jason Miller with an interesting thread on what older devices/browsers we should or shouldn't support.

A Tweet for Thought
 

Send Me Your Tools!

Made something? Send links via Direct Message on Twitter @WebToolsWeekly (details here). No tutorials or articles, please. If you have any suggestions for improvement or corrections, feel free to reply to this email.
 

Before I Go...

If you're a Vue developer and want even more Vue tools, check out VueToolbox. The only problem is that the project seems to be abandoned. Nonetheless, there's still quite a few links there.

Thanks to everyone for subscribing and reading!

Keep tooling,
Louis
@WebToolsWeekly

Support this newsletter:
PayPal.me  Patreon / GitHub Sponsors  E-Books / Buy Me a Coffee

Older messages

Web Tools #423 - URL Structure, Media Tools, JSON, React

Thursday, August 26, 2021

Web Tools Weekly WEB VERSION Issue #423 • August 26, 2021 Advertisement Free PDF Generation API Use pdflayer to automate PDF generation on your website. This free API renders HTML to PDF quickly and

Web Tools #422 - CSS Modules, JS Libraries, Build Tools, React Native

Thursday, August 19, 2021

Web Tools Weekly WEB VERSION Issue #422 • August 19, 2021 Advertisement Web Scraping API Extract the data you need with scrapestack's powerful web scraping API. Get Your Free API Key! Web Scraping

Web Tools #421 - VS Code, Testing Tools, React

Friday, August 13, 2021

Web Tools Weekly WEB VERSION Issue #421 • August 12, 2021 The following intro is a paid product review for Clerk, an authentication and user management service for Next.js, React, and JavaScript apps.

Web Tools #420 - CSS Tools, Front-end Frameworks, Uncats

Thursday, August 5, 2021

Web Tools Weekly WEB VERSION Issue #420 • August 5, 2021 Advertisement Stock Market Data API The marketstack API offers free stock data in JSON for various ticker symbols. Access real-time and

Web Tools #419 - Icons/SVG, Build Tools, JS Utilities

Thursday, July 29, 2021

Web Tools Weekly WEB VERSION Issue #419 • July 29, 2021 Advertisement Store. Optimize. Deliver Images with ImageKit.io What's the best image format for a website? What about the size? How do I

You Might Also Like

Berliner Goes Tabloid 🤬

Thursday, April 18, 2024

The movie that perfectly explains what that NPR editor did. Here's a version for your browser. Hunting for the end of the long tail • April 17, 2024 Berliner Goes Tabloid Considering the tale of

Tuesday Triage #196

Wednesday, April 17, 2024

Your weekly crème de la crème of the Internet is here! The 196th edition featuring Naismith's rule, cow magnet, and Little Sparta. ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

Atlas humanoid robot goes electric 

Wednesday, April 17, 2024

Meta goes back to the drawing board and Tesla does some advertising View this email online in your browser By Christine Hall Wednesday, April 17, 2024 Good afternoon, and welcome to your Hump Day

📞 1990s Technology We Still Use Today — How to Fix Google Maps When It's Not Working

Wednesday, April 17, 2024

Also: Why You Should Buy Last Year's Flagship TV, and More! How-To Geek Logo April 17, 2024 📩 Get expert reviews, the hottest deals, how-to's, breaking news, and more delivered directly to your

Today only: Join Incubator to get these bonuses

Wednesday, April 17, 2024

I'll work with you personally in a small group ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

JSK Daily for Apr 17, 2024

Wednesday, April 17, 2024

JSK Daily for Apr 17, 2024 View this email in your browser A community curated daily e-mail of JavaScript news React useState Vs. Context API: When to Use Them React has improved its state management

Daily Coding Problem: Problem #1415 [Easy]

Wednesday, April 17, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Stripe. Write a function to flatten a nested dictionary. Namespace the keys with a

⚙️ Workplace AI

Wednesday, April 17, 2024

Plus: Amazon Music just copy pasted Spotify ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

Charted | The World's Biggest Nuclear Energy Producers ⚡

Wednesday, April 17, 2024

China has grown its nuclear capacity over the last decade, now ranking second on the list of top nuclear energy producers. View Online | Subscribe Presented by: FEATURED STORY The World's Biggest

You’re invited: 2024 Security report insights webinar

Wednesday, April 17, 2024

Join us April 25th. ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏