Web Tools #448 - JS Libraries, Git/CLI, React Tools

Web Tools Weekly
WEB VERSION
Tools for Web Developers

Issue #448 • February 17, 2022

Advertisement
Choosing the Best WYSIWYG Editor for Styling Tables
Tables are perfect for representing data and information in an organized way, and it’s important to choose a WYSIWYG editor that makes the creation and editing experience with these tables simple for the user.

Read for FREE!
Froala

The logical OR operator in any programming language can be abused to the point where code becomes pretty messy and harder to maintain. For example, take a look at the following:

if (myVar === 'one' || myVar === 'two' || myVar === 'three' || myVar === 'six' || myVar === 'seven') {
  // do something...
}

Especially in a short-line environment like this one, that looks pretty awful. And I can tell you I've done that thousands of times in JavaScript, PHP, even back when I used to write classic ASP.

In a case like this, I can instead take advantage of the Array.includes() method to clean this up a bit. Of course, I'm not necessarily dealing with an array of objects, here, but that's alright. I can still do this:

let myVar = 'one';
let myArray = ['one', 'two', 'three', 'four', 'five', 'six', 'seven'];

console.log(myArray.includes(myVar));

Try it on CodePen

As I've discussed in previous tips, Array.includes() will return a Boolean indicating whether the passed in item is found in the array. You can also pass in a second optional argument, an integer representing the position in the array at which to start searching.

Credit for this tip goes to Ravin, who presents the same basic idea in a Tweet image. I like this sort of tip because it goes against how I normally think when I'm coding. If I'm not actually dealing with an array, I'm not inclined to think about how I can turn a specific set of values into an array if I don't have to. I think I'd sooner consider a JavaScript object than I would an array.

Now on to this week's tools!
 

JavaScript Libraries and Frameworks

Choosing the Best WYSIWYG Editor for Styling Tables
Tables are perfect for representing data and information in an organized way, and it’s important to choose a WYSIWYG editor that makes the creation and editing experience with these tables simple for the user. Read for FREE! sponsored 

Unpoly
An unobtrusive JavaScript framework for server-side web apps. Enables fast and flexible front ends for server-rendered HTML views, has no dependencies, and plays nice with existing code.

Fonoster
An open-source alternative to Twilio, the popular web service that enables programmable communication tools for making and receiving phone calls, text messages, etc.

Minze
A small, TypeScript-based and dead-simple framework to build portable web components compatible with React, Vue, and Angular.

API Platform
A set of tools to create REST and GraphQL APIs, scaffold Jamstack web apps, and stream changes in real time.

API Platform

Dioxus
A React-like library for building fast, portable, and beautiful user interfaces with Rust. Runs on the web, desktop, mobile, and more.

GPU.js
A JavaScript acceleration library for GPGPU (General purpose computing on GPUs) in JavaScript for Web and Node that transpiles JavaScript functions into shader language and compiles them so they run on your GPU.

TinyBase
A multi-featured JavaScript library for structured state, with no dependencies, and features like tables, rows, and cells in your data stores.

Ohm
A JavaScript library for building parsers, interpreters, compilers, and parsing custom file formats.

Window.js
An open-source JavaScript runtime for desktop graphics programming that comes with APIs familiar to web and desktop developers.

FxTS
A functional library for TypeScript/JavaScript that features lazy evaluation, type inference, and simultaneous requests.

Git, GitHub, and CLI Tools

Build Internal Apps Remarkably Fast with Retool
Retool is a new approach to building internal apps: we’ve unified the ease of visual programming with the power and flexibility of real code. Drag and drop a form together, and have it POST back to your API in minutes. Deploy instantly with access controls and audit logs.  sponsored 

cleye
An intuitive command-line interface (CLI) development tool that features a minimal API surface,  powerful flag parsing, and strongly typed parameters and flags.

Lip Gloss
Style definitions with an expressive, declarative, CSS-like approach for nice terminal layouts, built with terminal UIs in mind.

Gluegun
A toolkit for building Node-based command-line interfaces in TypeScript or modern JavaScript, with support for a whole slew of features.

Bash-web-server
A web server built in pure Bash (no socat, Netcat, etc).

statuspage
A simple, zero-dependency, pure JS/HTML status page based on GitHub Pages and GitHub Actions.
 
statuspage

GitHub Stars
A Chrome extension built by a 14-year-old developer that lets you hover over any GitHub link to see the number of stars the repo has.

Gitploy
Toolkit to enable your organization to build a deployment system around GitHub's deployment API in minutes.

Know Your Gitstats
Enter a GitHub user name and get a nice clean look at the user's GitHub numbers and activity, in a dark mode UI.

Dura
A background process that watches your Git repositories and commits your uncommitted changes without impacting HEAD, the current branch, or the Git index (staged files).

Awesome Actions
A curated and categorized list of GitHub actions.

Semverbot
A CLI that automates versioning using the popular method of Semantic Versioning (SemVer).
 

React Tools

Build Internal Apps Remarkably Fast with Retool
Retool is a new approach to building internal apps: we’ve unified the ease of visual programming with the power and flexibility of real code. Drag and drop a form together, and have it POST back to your API in minutes. Deploy instantly with access controls and audit logs.  sponsored 

react-browser-navigator
A React implementation of the window.navigator interface, commonly used to get info like network connection, geolocation, etc.

Pure React Carousel
A highly impartial suite of React components to create a carousel with almost no limits on DOM structure or CSS styles.

transition-hook
An light-weight react transition animation hook that's simpler and easier to use than react-transition-group.

React-Grid-Layout
A grid layout system much like Packery or Gridster, for React, that's responsive and supports breakpoints.

react-inner-image-zoom
A React component for magnifying an image within its original container. Zoom behavior can be triggered on click or hover and the zoomed image can be moved by dragging on touch devices.

React Google Charts
A thin, typed, React wrapper for Google Charts.

Plock
A responsive masonry layout implementation for React, with a three-column default that can be easily changed.
 
Plock

Elf
A reactive immutable state management solution built on top of RxJS that uses custom RxJS operators to query the state and pure functions to update.
 
use-react-screenshot
React hook that allows you to make a component screenshot and get an image in various formats.

React Headless Hooks
A set of React hooks to build and design powerful components while retaining 100% control over markup and styles.

reactjs-calendar-heatmap
A React component to build a D3.js-based calendar heat map graph, to embed a visualization of dates/times.

react-md-editor
A simple markdown editor with preview and syntax highlighting support, implemented with React.js and TypeScript.
 

Commercial Tools and Classifieds

These are affiliate links, paid classifieds, and curated commercial apps (i.e. not free, not open source, limited free plan, etc).

Niceboard - Modern job board software to start your own job board.

HyperTheme Editor - A Chakra UI-based theme editor for dashboards, etc.

vscode.email - Newsletter featuring tips/tools for VS code, coming soon. ad 

Trunk - Tool to simplify checking, testing, and merging your code.

Advanced React - React course with 70+ HD videos across 11+ modules. ad 

MergeQueue - A code quality tool to automate merge workflows for GitHub.

codeprints.dev - Framed, personalized prints of your GitHub contributions.
 

A Tweet for Thought

Apparently, browsers often make change that break old features, many of which go unnoticed. Emily Stark, who works on Chrome, explained a little about this in a Twitter thread back in August.

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...

FakeYou lets you select a famous character or personality and it uses AI to generate a voice recording for whatever text you want the "person" to speak. And you promise to absolutely never use this for malicious purposes or memes that make fun of your least-favourite politicians.

Thanks to everyone for subscribing and reading!

Keep tooling,
Louis
@WebToolsWeekly

Support this newsletter:
PayPal.me  Patreon  /  GitHub Sponsors  E-Books  /  $5 Tip  /  $1 Tip

Older messages

Web Tools #447 - CSS Tools, Testing, Jamstack, CMS's

Thursday, February 10, 2022

Web Tools Weekly WEB VERSION Issue #447 • February 10, 2022 Advertisement The Easiest Modern Data Stack to Set Up Sign up for a 14-day free trial of Mozart Data's data stack. Get set up in under an

Web Tools #446 - Frameworks, Build Tools, Uncats

Thursday, February 3, 2022

Web Tools Weekly WEB VERSION Issue #446 • February 3, 2022 Advertisement Choosing the Best WYSIWYG Editor for Styling Tables Tables are perfect for representing data and information in an organized way

Web Tools #445 - Chaotic JS, SVG, Git/CLI, React

Thursday, January 27, 2022

Web Tools Weekly WEB VERSION Issue #445 • January 27, 2022 Advertisement Free Talk with a Data Expert Data is important to your business, but learning about the right tools and best practices is more

Web Tools #444 - CSS Tools, VS Code, React Native

Thursday, January 20, 2022

Web Tools Weekly WEB VERSION Issue #444 • January 20, 2022 The following intro is a paid product review for A Fine Start, a new tab page for Chrome, Firefox, and Edge. Nowadays many developers and

Web Tools #443 - Frameworks, Testing Tools, Uncats (misc. tools)

Thursday, January 13, 2022

Web Tools Weekly WEB VERSION Issue #443 • January 13, 2022 Advertisement How Tempo Got Their Data in Shape High-growth fitness start-up Tempo needed to better organize their data to continue growth.

You Might Also Like

📧 Building Async APIs in ASP.NET Core - The Right Way

Saturday, November 23, 2024

​ Building Async APIs in ASP .NET Core - The Right Way Read on: m​y website / Read time: 5 minutes The .NET Weekly is brought to you by: Even the smartest AI in the world won't save you from a

WebAIM November 2024 Newsletter

Friday, November 22, 2024

WebAIM November 2024 Newsletter Read this newsletter online at https://webaim.org/newsletter/2024/november Features Using Severity Ratings to Prioritize Web Accessibility Remediation When it comes to

➡️ Why Your Phone Doesn't Want You to Sideload Apps — Setting the Default Gateway in Linux

Friday, November 22, 2024

Also: Hey Apple, It's Time to Upgrade the Macs Storage, and More! How-To Geek Logo November 22, 2024 Did You Know Fantasy author JRR Tolkien is credited with inventing the main concept of orcs and

JSK Daily for Nov 22, 2024

Friday, November 22, 2024

JSK Daily for Nov 22, 2024 View this email in your browser A community curated daily e-mail of JavaScript news React E-Commerce App for Digital Products: Part 4 (Creating the Home Page) This component

Spyglass Dispatch: The Fate of Chrome • Amazon Tops Up Anthropic • Pros Quit Xitter • Brave Powers AI Search • Apple's Lazy AI River • RIP Enrique Allen

Friday, November 22, 2024

The Fate of Chrome • Amazon Tops Up Anthropic • Pros Quit Xitter • Brave Powers AI Search • Apple's Lazy AI River • RIP Enrique Allen The Spyglass Dispatch is a free newsletter sent out daily on

Charted | How the Global Distribution of Wealth Has Changed (2000-2023) 💰

Friday, November 22, 2024

This graphic illustrates the shifts in global wealth distribution between 2000 and 2023. View Online | Subscribe | Download Our App Presented by: MSCI >> Get the Free Investor Guide Now FEATURED

Daily Coding Problem: Problem #1616 [Easy]

Friday, November 22, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Alibaba. Given an even number (greater than 2), return two prime numbers whose sum will

The problem to solve

Friday, November 22, 2024

​ Use problem framing to define the problem to solve This week, Tom Parson and Krishna Raha share tools and frameworks to identify and address challenges effectively, while Voltage Control highlights

Issue #568: Random mazes, train clock, and ReKill

Friday, November 22, 2024

View this email in your browser Issue #568 - November 22nd 2024 Weekly newsletter about Web Game Development. If you have anything you want to share with our community please let me know by replying to

Whats Next for AI: Interpreting Anthropic CEOs Vision

Friday, November 22, 2024

Top Tech Content sent at Noon! How the world collects web data Read this email in your browser How are you, @newsletterest1? 🪐 What's happening in tech today, November 22, 2024? The HackerNoon