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

Web Tools Weekly
WEB VERSION
Tools for Web Developers

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 API

In case you missed it, the HTML/DOM spec is introducing something called CSS Module Scripts, as outlined in this pull request on the WHATWG GitHub repo.

Dan Clark of the MS Edge team explains:

"This change extends the ES Script Modules system to include CSS module scripts. These will allow web developers to load CSS into a component definition in a manner that interacts seamlessly with other module script types."

The explainer document that he links to in that PR goes over some of the reasons CSS modules are needed (like we need a reason!) in the current landscape where many devs are doing module-based CSS:

  • Problems occur when using a `style` element in document scope or in shadow root
  • Inlined CSS text as a string in JavaScript has performance issues
  • Using fetch() to insert CSS makes things overly complex
The document then gives the following example code demonstrating how a CSS module will look (it's more or less the same as ES modules):
 
import styles from "./styles.css" assert { type: "css" };

document.adoptedStyleSheets = [
  ...
document.adoptedStyleSheets, styles
];

As you can see, the one difference is the assert statement, which the doc explains:

"CSS modules will be imported using the same import statements currently used for other ES modules, with the addition of an import assertion module type check."

I'm sure you'll agree this is all great news. So far, implementation of the feature has started with Chromium behind a flag (which means all Chromium-based browsers, including Edge and Brave) and it's being discussed for Firefox and Safari as well.

It does seem a little strange, as others have pointed out, that this feature is going to be part of the HTML/DOM spec rather than the ECMAScript spec. Nonetheless, it's certainly something to keep an eye on. I wonder how many CSS-in-JS or similar tools will become obsolete when this feature is ready for production?

Now on to this week's tools!
 

 

JavaScript Libraries and Frameworks

Web Scraping API
Extract the data you need with scrapestack’s powerful web scraping API. Get Your Free API Key!   sponsored 

Pancake
A lightweight, fast, and easy-to-use HTML5 2D game framework powered by HTML Canvas.

Turf
A JavaScript library for spatial analysis that includes traditional spatial operations, helper functions for creating GeoJSON data, and data classification and statistics tools.

Baileys
A lightweight full-featured TypeScript/JavaScript WhatsApp Web API.

Tempura
A fast, customizable, and lightweight template engine with syntax similar to Handlebars.

Tempura

CalDOM
An agnostic, reactive, and minimalist (3kb) JavaScript UI library with direct access to the native DOM.

VibeJS
A small (under 14kb minified) component-based library for building user interfaces, with built-in drag-and-drop.

AdonisJS
A fully featured web framework for Node.js that includes everything you need to create a fully functional web app or an API server.

Solid
A declarative, efficient, and flexible JavaScript library for building user interfaces.

Handsfree.js
Quickly integrate face, hand, and/or pose tracking to your front-end projects in a snap.

txiki.js
A tiny JavaScript runtime built with QuickJS and libuv.

On the Release Radar:

Build Tools, Bundlers, etc.

The Reshape
Stay up to date with AI 🤖 & Data Science 📊 by reading top-notch articles. We are the first to spot hot news (data proven!). At the same time, we scour the Internet to find the most overlooked publications. Get a package of both in a concise form delivered straight to your inbox for free 📬.   sponsored 

eslint-nibble
Gives you a quick overview of your failing ESLint rules then shows you the detailed error reports for one rule at a time.

Webpack Stats Diff
GitHub action to print Webpack stat diffs in your pull requests.

Fiddly
Create beautiful and simple HTML pages from your Readme.md files.

Next.js + graphql-let plugin
Frictionless automatic GraphQL TypeScript generation setup for Next.js.

RisXSS
Eradicate all XSS flaws of your React or Vue application using a single ESLint rule.

Ship.js
Automated, asynchronous, and collaborative release management for your JavaScript apps.
 
Ship.js

Juke
A build tool for Node.js apps, inspired by a .NET build tool with a similar name.

Storybook Builder for Vite
An experimental plugin to run and build Storybooks with Vite.

Deno Deploy
A globally distributed JavaScript VM that runs JavaScript, TypeScript, and WebAssembly at the edge, worldwide.

yaup
An unopinionated esbuild CLI with a minimal API for easier maintenance.

Serverless Next.js Component
A zero configuration Next.js serverless component for AWS Lambda@Edge aiming for full feature parity.

React Native and Mobile Tools

The Reshape
Stay up to date with AI 🤖 & Data Science 📊 by reading top-notch articles. We are the first to spot hot news (data proven!). At the same time, we scour the Internet to find the most overlooked publications. Get a package of both in a concise form delivered straight to your inbox for free 📬.   sponsored 

React Native Notifications
Handle all the aspects of push notifications for your app, including remote and local notifications, interactive notifications, silent notifications, and more.

rnsvg-generator
Convert any SVG file into a programmable React Component that's compatible with react-native-svg.

Sentry SDK for React Native
Official React Native SDK for Sentry, the app monitoring and error tracking service.

Hotpot
A one-stop site for creating and downloading graphics and templates for device mockups, app screenshots, and lots more.

react-native-zoomable-view
A view component for React Native with pinch to zoom, tap to move and double tap to zoom capability. Zooms images, text, and complex nested views.

react-native-progress
Progress indicators and spinners for React Native using React Native SVG.

React Native Easing Gradient
Create smooth gradients in React Native using easing functions to avoid linear gradients with hard edges.

react-native-popable
Popover and tooltips component for React Native, built in TypeScript.
 
react-native-popable

React Native Numpad
A simple React Native number pad for quickly updating multiple number inputs.

react-native-collapsible-tab-view
A cross-platform Collapsible Tab View component for React Native.

react-native-dialog
A flexible pure JavaScript React-Native dialog that follows the native UI guidelines closely.

FlutterFlow
Build Flutter apps visually using a drag-and-drop interface that includes a decent free plan.

Commercial Apps and Classifieds

This is a new section of the newsletter that contains brief links to commercial (non-free) apps and paid classifieds. You can submit a link for consideration or you can buy a classified link (will be marked "ad").

Swetrix - Privacy-friendly, advanced, and customizable analytics platform.

BugBug.io - Automated browser testing and QA with no code.

JavaScript E-Books Bundle - 3 JavaScript E-Books for $9 USD (50% off).  ad 

Lemon - Alternative and intuitive UI for AWS.

Slip - Platform to create and sell interactive programming courses.
 

A Tweet for Thought

One of the first ever Tweets I saved for this section of the newsletter, but never used is this absolute classic Facebook screenshot that I have no idea if it's real but who cares because it's funny.

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

Code House claims to be the world's biggest storehouse of developer cheatsheets. Don't know if it's true but worth a visit.

Thanks to everyone for subscribing and reading!

Keep tooling,
Louis
@WebToolsWeekly

Want to get notified of new issues via Twitter, Telegram, or Messenger? You can sign up using a service called Reachme.

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

Older messages

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

Web Tools #415 - JS Libraries, JSON/DB, React Tools

Friday, July 23, 2021

Web Tools Weekly WEB VERSION Issue #415 • July 1, 2021 Advertisement TLDR Newsletter - Byte Sized News for Busy Techies TLDR is a free daily newsletter with links and TLDRs of the most interesting

Web Tools #418 - VS Code, Front-end Frameworks, Uncats

Thursday, July 22, 2021

Web Tools Weekly WEB VERSION Issue #418 • July 22, 2021 Advertisement IP Geolocation API Identify a visitor's location based on their IP address with ipapi.com. This reverse IP lookup supports IPv4

You Might Also Like

⚙️ Your own Personal AI Agent, for Everything

Saturday, November 23, 2024

November 23, 2024 | Read Online Subscribe | Advertise Good Morning. Welcome to this special edition of The Deep View, brought to you in collaboration with Convergence. Imagine if you had a digital

Educational Byte: Are Privacy Coins Like Monero and Zcash Legal?

Saturday, November 23, 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 23, 2024? The HackerNoon

🐍 New Python tutorials on Real Python

Saturday, November 23, 2024

Hey there, There's always something going on over at Real Python as far as Python tutorials go. Here's what you may have missed this past week: Black Friday Giveaway @ Real Python This Black

Re: Hackers may have stolen everyone's SSN!

Saturday, November 23, 2024

I wanted to make sure you saw Incogni's Black Friday deal, which is exclusively available for iPhone Life readers. Use coupon code IPHONELIFE to save 58%. Here's why we recommend Incogni for

North Korean Hackers Steal $10M with AI-Driven Scams and Malware on LinkedIn

Saturday, November 23, 2024

THN Daily Updates Newsletter cover Generative AI For Dummies ($18.00 Value) FREE for a Limited Time Generate a personal assistant with generative AI Download Now Sponsored LATEST NEWS Nov 23, 2024

📧 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