Web Tools Weekly
Tools for Web Developers

Issue #515  (Numeric Separators, JS Libs, JSON/DB, Uncats)06/01/23


Advertisement

Warp: The AI-Powered Terminal for Mac 🤖
Warp is a Rust-based terminal with AI fully integrated so you always know which command to run next. With Warp AI, you can use natural language to look up commands directly from your terminal. For example, you can look up how to install a specific npm package or how to craft cURL commands to test your API.

Warp

Ask Warp AI how to troubleshoot a React state management issue or guide you step-by-step through setting up a Node.js server. Run suggested commands with the click of a button, no copy/paste required.

Try Warp AI today

Here's a JavaScript fact you may not have seen before: Numeric separators. Check out the following code and the logs:

console.log(6_2_4); // 624
console.log(7_2+3_4) // 106

Notice that despite the underscore characters that appear between the digits, the log treats the values as though they were plain numbers (i.e. 624 and 72+34).

Underscore characters are permitted as numeric separators to aid in readability of large numbers. Commas aren't permitted as numeric separators, so these are a valid replacement. They would come in handy in examples like the following that would be much harder to read at a glance without any separators:

console.log(1_000_000_000_000); // 1000000000000
console.log(23_060.14); // 23060.14

Try the examples on CodePen here. Notice how less readable the numbers are when they're evaluated and shown in the log. But the statements themselves, at a glance, are much more readable. You can quickly see that the first number is one trillion and the other one is more than 23,000 (assuming of course that the person examining the code knows what the underscores are for, which I suppose might be a bit of a roadblock at first).

Some gotchas to keep in mind though when using this separator:

  • Two underscores in a row are not permitted (e.g. 2__2 is invalid)
  • You can't put the underscore at the end of a number (e.g. 12_ is invalid)
  • You can't use the underscore after a leading zero (e.g. 0_2 is invalid)

I honestly can't say I've ever seen anyone use this in practice, but I can definitely see its usefulness in a codebase that requires use of large numbers like this.

Now on to this week's tools!
 

JavaScript Libraries and Frameworks

Strawberry
A tiny frontend framework, not designed as a React or Vue alternative, that gives you reactivity and composability, with zero-dependencies, no build step, and less than 3KB gzipped.

LangChain.js
A JavaScript library for building applications with LLMs through composability with support for Node.js, Cloudflare Workers, Vercel/Next.js, Supabase, Deno, and the browser.

Vessel.js
A WebGL/Three.js JavaScript library for conceptual ship design (i.e. boats), with an object-oriented paradigm. Not sure how useful this is, but the examples are neat to try out.

Warp: The AI-Powered Terminal for Mac 🤖
Warp is a Rust-based terminal with AI fully integrated so you always know which command to run next. With Warp AI, you can use natural language to look up commands directly from your terminal. Look up how to install npm packages, craft cURL commands, troubleshoot React state management, set up a Node.js server, and more.   SPONSORED 

BeyondJS
A meta-framework, compatible with all JS environments, that provides a dev server for development and a CDN in production, to consume modules from any execution environment directly.

Reken
A library that lets you use HTML attributes to create reactive pages with no virtual DOM overhead and no build tools.

CASE
A full-stack TypeScript framework to quickly and easily build data-intensive business-facing apps like dashboards, admin panels, or ERPs.

CASE

Modern.js
A web engineering system, including a progressive React framework, an npm package solution, and a documentation site solution.

Dak
A Lisp-like language that transpiles to JavaScript. You can write server-side apps and scripts or browser-based apps using a Vite/Rollup plugin.

Fastjs
Still in early stages but a high availability, high performance JavaScript library that's actually written by a 14-year old. Kudos to the author!

On the Release Radar:

JSON Tools, Databases, etc.

CG/SQL
Code generator that compiles/converts an SQL stored procedure like language into C for SQLite.

Blaze SQL
An AI-based SQL query generator that learns about your database then gives you SQL code for whatever data you want to get.

Securely Share 2FA Tokens With Others, No Phone Needed
A browser-based 2FA authenticator for you and your team. Easy import from Google Authenticator, user management, read-only access, backups, and more. 2FA your team will love!    SPONSORED 

dbdev
A database package manager for PostgreSQL trusted language extensions.

dbdev

KV.JS
A fast, in-memory data store written in pure JavaScript, heavily inspired by Redis and Memcached and capable of handling multiple data types, including strings, lists, sets, sorted sets, hashes, and geospatial indexes.

Keyv
Simple key-value storage with support for multiple backends, designed to be a simple and consistent way to work with key-value stores.

Surrealist
A simple-to-use browser- and desktop-based query playground and database explorer for SurrealDB.

graphql-http
A simple, pluggable, zero-dependency, GraphQL over HTTP spec compliant server, client, and audit suite.

jendeley
JSON-based document organizing software that works locally and can be run anywhere you run Node.js.

SQL Schema Visualizer
A relational database schema visualizer built with React and ReactFlow.

dbSpy
An open-source tool to facilitate relational database development. Visualize, modify, and build your various SQL databases, all in one place.
 

The Uncategorizables

EasySpider
A visual, no-code web crawler/spider, initiated via the command line. Select the content you want to crawl on the web page and operate according to the prompt box to complete the design and execution of the crawler.

Securely Share 2FA Tokens With Others, No Phone Needed
A browser-based 2FA authenticator for you and your team. Easy import from Google Authenticator, user management, read-only access, backups, and more. 2FA your team will love!   SPONSORED 

DevPod
A client-only tool to create reproducible developer environments based on a devcontainer.json on any backend, with each developer environment running in a container specified through the devcontainer.json file.

DamnGood.Tools
A set of free tools that includes a privacy policy generator, font detector, URL summarizer, an improved ChatGPT alternative, responsive design tester, and more.

WordPress Playground
An experimental in-browser implementation of WordPress, with no setup required, useful for creating quick website clones to test out new features, plugins, etc.

estimate.agency
An AI-based tool that allows you to get a rough estimate, along with implementation details, of how much you'll need to invest to build a particular type of app or website.

estimate.agency

Platformatic
A platform built with Fastify and Node.js that accelerates the development of modern backends and simplifies the complexity of operating them.

OpenNext
A Next.js serverless adapter that takes the Next.js build output and converts it into a package that can be deployed to any functions-as-a-service platform.

Klotho
An advanced infrastructure design tool that understands how to define, connect, and scale your infrastructure-as-code.

WebContainers
A browser-based runtime from StackBlitz that lets you build instant, interactive coding experiences, from interactive tutorials to full-blown IDEs.

Excalith Start Page
A terminal-inspired, clean, feature-rich and customizable browser start page. The search feature is pretty neat when you try out the demo.
 

Commercial Apps and Classifieds

These are commercial apps, affiliate links, PPC ads, and paid classifieds. Submit yours!
60sec.site – Create a website landing page in 60 seconds with no code and AI.
Meco – Enjoy newsletters in a space built for mindful reading and give your inbox space to breathe.    AD
AIHelperBot – Generate, explain or optimize SQL queries using AI. No SQL knowledge required.
Easybase – Create and manage your app's database and Node.js API to accelerate time-to-market.
Bytes – An informative and entertaining JavaScript newsletter for web developers.  AD
Onboardbase – A local-first secrets manager with automated compliance across dev machines.
SQLPad – A curated list of 200+ SQL coding questions and solutions all in your browser.

A Tweet for Thought

Do developers enjoy writing TypeScript? Diego Haz doesn't think so.
 
A Tweet for Thought
 

Send Me Your Tools!

Made something? Reply to this email or 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...

Not sure if this will take off but Favoree is Rotten Tomatoes for YouTube channels. You can read and submit user reviews of different YouTube channels. Oddly, I looked up some popular channels and they all had poor reviews. Seems like it will take some time before this one is more representative of the quality of content on different channels.

Thanks to all for subscribing and reading!

Keep tooling,
Louis
webtoolsweekly.com
@LouisLazaris