22 Aug 2025

feedJavaScript Weekly

We still love jQuery

#​749 - August 22, 2025

Read on the Web

β˜€οΈ We're back after a week off, though I'm starting to think we should have taken two weeks off as it's been quite quiet in JavaScript-land this August! Nevertheless, we still have a full issue for you today, so let's get on to it.. ;-)
__
Peter Cooper, your editor

JavaScript Weekly

Eliminating JavaScript Cold Starts on AWS Lambda - Porffor is a rapidly developing ahead-of-time JavaScript compiler with a major benefit being extremely quick process launch times (think sub-millisecond). This is certainly more a taste of the future, and something to experiment with, rather than something you want to imminently deploy into production.

Oliver Medhurst

Rspack Introduces Rslint, a Fast Linter Written in Go - A high-performance JavaScript and TypeScript linter written in Go, and the newest member of the Rspack/Rstack family of tools.

Sarah Gooding (Socket)

πŸ’‘ In related news, the Rust-powered Oxlint linter has unveiled a preview of type-aware linting support. Oxlint and Rslint (or Biome) are worth investigating if you're having performance issues with ESLint.

Front-End System Design: Build Scalable UIs - Learn browser rendering, DOM performance, state, and UI optimization with real-world exercises.

Frontend Masters sponsor

jQuery 4.0.0 Release Candidate 1 - Version 4.0 of jQuery has reached the "we think this is ready; now poke it with many sticks" stage. While jQuery is still heavily used, we know it's old-fashioned, but it was so important in the early days of JavaScript Weekly that we have a major soft spot for it!

Timmy Willison

Reflections on the React Community - Lee, formerly of Vercel and widely recognized for his influence on Next.js and React, shares candid reflections on the React community, digging into the rise of React Server Components, the tension between commercial and non-commercial priorities, the toll of burnout, and a reminder that, above all, this is still a community of people.

Lee Robinson

IN BRIEF:

RELEASES:

πŸ“– Articles and Videos

Using the Custom Highlight API - The CSS Custom Highlight API offers a way to style text ranges on a document using JavaScript to create the ranges, and CSS to style them. And, as of Firefox 140, all major browsers now support it. This could be great for in-page search or even dynamic syntax highlighting.

Chris Coyier

The Power of the Intl API: A Definitive Guide to Browser-Native Internationalization - Instead of relying on heavy third-party libraries, modern browsers provide JavaScript with the Intl API - a powerful, native way to handle internationalization.

Fuqiao Xue

The Best Way for Web Developers to Track Key User Flows - Check out User Journeys, a new approach to connecting technical performance to user engagement in your web apps.

Embrace sponsor

Designing Chrome's Built-in AI Web APIs - Domenic, a member of the Chrome team at Google, shares some insights into how the APIs around Chrome's newest AI features were designed.

Domenic Denicola

β–Ά React Mock Interview: Three Devs Take on a Challenge - Three top developers take on the same React challenge to build a form complete with validation. If you've got the time for a 50 minute video, this is fun and educational.

Shruti Kapoor

πŸ“„ How Incorrect Shopify Webhook Parsing Led to Database Deletion - A sneaky problem with an unexpected undefined value being fed to Prisma. One of Prisma's validation errors did pick it up, however. Ingressr

πŸ“„ The Problems with Modals, and How to Solve Them in Vue.js Noel De Martin

πŸ“„ How Bun Made postMessage 500x Faster Jarred Sumner

πŸ“„ The Future of JavaScript: What Awaits Us JSDev

πŸ›  Code & Tools

Uppy 5.0: A Powerful, Modular JavaScript File Uploader - Upload not just from local sources (whether files or a webcam) but also remote services like Dropbox or Google Drive. Integrates with frameworks like React, Vue, Svelte, and Angular, and supports resumable uploads too. GitHub repo.

Transloadit

πŸ˜„ Faceclick: A Lightweight Emoji Picker with Keyword Search - Includes some interesting details on how it was made more efficient.

Dave Gauer

Secure Your AI Agents So That You Can Protect Your Users - Whether you have a B2B or B2C use case, Auth0 is a full IdP that provides robust security like MFA and continuous threat monitoring.

Auth0 sponsor

Sidequest.js: A New Scalable Job Execution Option for Node.js - A scalable background job processor for Node apps that includes a Web-based dashboard, the ability to support multiple backends, and TS-first ergonomics. GitHub repo.

Merencia and Guizzo

Minecraft MCP Server: Let an LLM Take Control of Minecraft - A fun way to play around with MCP servers and LLMs. It uses Mineflayer, a JavaScript API for creating Minecraft bots, behind the scenes. The video in the README is cool, showing how Claude and this server can turn a photo of the White House into an in-world creation.

Yuniko Software

  • Waku 0.25 - The minimal React framework introduces the concept of 'slice components' - a new approach to fine-grained component rendering.

  • Retire.js 5.3 - A security scanning tool to detect the use of JavaScript libraries with known vulnerabilities in your project.

  • Ky 1.9 - Simple HTTP client based upon Fetch for browsers, Node & Deno.

  • Repomix 1.3 - Pack an entire repository into a single, LLM-friendly file.

  • πŸ—“οΈ React Date Picker 8.6 - Simple date picker component. (Demo.)

  • Flatbush 4.5 - Fast static spatial index for 2D points and rectangles.

  • plotly.js 3.1 - Standalone data visualization library.

  • Chai 6.0 - BDD / TDD assertion framework.

πŸ“° Classifieds

Meticulous automatically creates and maintains an E2E UI test suite with zero developer effort. Relied on by Dropbox, Wiz, Lattice, Bilt Rewards, etc.

πŸ€– Faster AI data = smarter agents. Redis 8.2 brings vector sets and search with sub-ms speed. Try it for free.

🎁 Some Bonus Items

22 Aug 2025 12:00am GMT

11 Aug 2025

feedOfficial jQuery Blog

jQuery 4.0.0 Release Candidate 1

It's here! Almost. jQuery 4.0.0-rc.1 is now available. It's our way of saying, "we think this is ready; now poke it with many sticks". If nothing is found that requires a second release candidate, jQuery 4.0.0 final will follow. Please try out this release and let us know if you encounter any issues. A 4.0 … Continue reading β†’

11 Aug 2025 5:35pm GMT

08 Aug 2025

feedJavaScript Weekly

How JavaScript really evolves, the inside story

#​748 - August 8, 2025

Read on the Web

β˜€οΈ We're taking next week off, so this will be the last issue until Friday, August 22. Just a little summer vacation.
__
Peter Cooper, your editor

JavaScript Weekly

Apache ECharts 6.0: The Powerful Data Visualization Library - 12 years on from its first release, ECharts takes another big step forward. Visualization types span from line, bar and pie charts to 3D graphs, calendars and Sankey diagrams. v6 brings an all-new design language, dynamic theme switching, dark mode support, even more chart types, and more. Be sure to enjoy the 100+ demos and the GitHub repo.

Apache Software Foundation

Add Excel-like Spreadsheet Functionality to Your JavaScript Apps - SpreadJS is the industry-leading JavaScript spreadsheet for adding advanced spreadsheet features to your enterprise apps. Build finance, analysis, budget, and other apps. Excel I/O, 500+ calc functions, tables, charts, and more. View demos now.

SpreadJS from MESCIUS inc sponsor

Announcing TypeScript 5.9 - One of TypeScript's gentlest steps forward, with support for import defer, --module node20, and 'expandable hovers' (below) to see expanded type information in IDEs. We also learn v6.0 will act as a 'transition point' to get prepared for the Go-powered 'native port' of TypeScript due to arrive as TypeScript 7.0.

Microsoft

πŸ’‘ The latest version of VS Code has also just landed with TypeScript 5.9 included and offering the 'expandable hovers' feature, explained in more depth here.

βš–οΈ Oracle's Latest Move in the JavaScriptβ„’ Trademark Case - Oracle's latest response to Deno's petition to cancel the JavaScript trademark includes a denial of the assertion that "there is broad industry and public consensus that the term 'JavaScript' is generic." We've been told!

United States Patent and Trademark Office

IN BRIEF:

πŸ“– Articles and Videos

β–Ά How JavaScript Really Evolves: Inside TC39 with Daniel Ehrenberg - A well-recorded 47 minute in-person conversation with one of the most productive members of the TC39 committee covering not just some of the newest features coming to JavaScript, but also the way TC39 works and how you can get involved and propose ideas and help the language move forward.

The Weekly Dev's Brew

πŸ’¬ It's very rough, but for accessibility, I've put the raw YouTube transcript in this gist, if you can't watch the video. You can also listen and subscribe in podcast form here.

How V8's JSON.stringify Got Over 2x Faster - The V8 team has turbo-charged JSON.stringify, giving apps an automatic performance boost for numerous common tasks when using V8 13.8 onwards (such as in Chrome 138). This article unpacks the low-level work behind the speedup.

Patrick Thier (V8)

Level Up Your Auth for Not Only Your Users, but Also Your AI Agents - Auth0 is a full IdP that provides robust security and control over the user experience, from sign-up flows to advanced authorization.

Auth0 sponsor

"JavaScript Isn't the Problem, Replacing the Browser Was" - The creator of RedwoodSDK, a React framework for building server-side apps on Cloudflare, suggests SPA-style development was a compromise to work around platform limitations, and now a server-first approach makes good sense.

Peter Pistorius

πŸ“„ Building Bluesky Comments for My Blog - A neat idea, and might give you some ideas of your own. Natalie B

πŸ“„ What We Learned From Creating PostCSS Andrey Sitnik (Evil Martians)

πŸ“„ Introducing Stan: A New State Management Library for TypeScript RafaΕ‚ KrupiΕ„ski

πŸ“„ A Few Things About the Anchor Element's href You Might Not Have Known Jim Nielsen

πŸ“Ί tRPC vs oRPC: A Typesafe API Battle Jack Herrington

πŸ›  Code & Tools

MathJax v4.0: A JS Display Engine for Math in Browsers - Several years in the making, MathJax reasserts its position as one of the best Web-based math rendering approaches. There is, of course, a live demo. v4.0 adds more fonts, a better default font, line-breaking support, ESM support, and much more.

Cervone, Sorge, et al.

Panda CSS 1.0: Modern, Build-Time, Type-Safe CSS-in-JS - A DX-focused CSS-in-JS approach from the creator of Chakra UI that offers build-time generated styles and type safety out of the box. It works with Remix, Vite, Next.js, Astro, and even server components.

Segun Adebayo

The Best Way for Web Developers to Track Key User Flows - Check out User Journeys, a new approach to connecting technical performance to user engagement in your web apps.

Embrace sponsor

zx v8.8: Write Better Shell Scripts with Node.js - A popular way to make shell scripting a more pleasant experience in Node with useful wrappers around child_process, argument escaping, and sensible defaults. v8.8 improves zx's piping story. (Docs.)

Google

πŸ”Š React Native Audio API - Get the power and flexibility of the Web Audio API in your React Native apps, whether on iOS, Android or the Web. It's explained in much more detail in this blog post.

Software Mansion

  • eslint-plugin-angular 5.0 - ESLint plugin for AngularJS applications, now with ESLint v9 support.

  • Ghost 6.0 - Node.js-powered indie publishing and blogging platform.

  • Joi 18.0 - Schema description language and data validator.

  • πŸ“ˆ Fuite 5.0.8 - Tool for finding memory leaks in web apps.

πŸ“° Classifieds

Meticulous automatically creates and maintains an E2E UI test suite with zero developer effort. Relied on by Dropbox, Wiz, Lattice, Bilt Rewards, etc.

Did you know we also publish Frontend Focus? It focuses more on the browser end of things: CSS, WebGL, HTML, etc.

🎁 Some Bonus Items

  • AwesomeIndex (above) provides a way to search hundreds of 'awesome'-style curated link lists at once. This idea has a lot of potential, as those lists are crammed full of useful resources.

  • r2dec-js is a JavaScript-based decompiler that converts assembly code into 'pseudo-C' for learning purposes.

  • Bali is an attempt at creating a JavaScript lexer, parser, and interpreter in the Nim language.

  • πŸ‘€ Do you miss ActionScript 3.0 and Flex? No? This week, I learned Apache is keeping the dream alive with Apache Royale.

  • πŸ€– You probably heard that OpenAI released GPT-5, but their developer-oriented intro to GPT-5 was overshadowed, I think, and it goes into some interesting depth. They dropped two open weight models too.

  • Today I learned that JSON has a logo.

We're now off for a week, so will be back on Friday, August 22 - see you then!

08 Aug 2025 12:00am GMT

01 Aug 2025

feedJavaScript Weekly

Jumbo-sized JavaScript for issue 747

✈️ #​747 - August 1, 2025

Read on the Web

JavaScript Weekly

Observable Notebooks 2.0 Technology Preview - The Observable Framework and the new Notebook Kit are just two parts of a rich ecosystem of reactive JavaScript 'notebook'-style tools for creating data visualizations (example) and dashboards, originally created by Mike Bostock. This v2 release previews a big step forward with a new notebook file format based on HTML and, for the first time, support for true vanilla JavaScript, complete with the ability to import libraries with import. Here's another neat example showing off the potential. There are a lot of parts here, so dig in.

Observable, Inc.

CodeRabbit's Free AI Code Reviews in IDE - VS Code, Cursor, Windsurf - Code Rabbit brings AI code reviews to VS Code, Cursor & Windsurf. Get line-by-line reviews, one-click fixes & codebase-aware feedback - all free in your IDE. Seamlessly integrates with git workflows. Install the extension & start reviewing!

CodeRabbit sponsor

The Many JavaScript Runtimes of the Last Decade - A fantastic, well-researched look at the myriad of JavaScript runtimes and engines both past and present, from mainstream picks like Node.js and Bun, to cloud platforms and some more obscure 'honorable mentions'. A perfect way to round out your knowledge of JavaScript's runtime story.

Whatever, Jamie

Node.js v22.18 (LTS) Gets Type Stripping by Default - We wouldn't normally feature a minor Node.js LTS release, but this one comes with a big tweak: type stripping/TypeScript support is enabled by default, making node app.ts a reality, much as with Bun or Deno.

Antoine du Hamel

πŸ’‘ Node v24.5 (Current) has also been released, with node:http(s) now supporting proxies, OpenSSL 3.5, and --experimental-wasm-modules unflagged.

IN BRIEF:

RELEASES:

πŸ“– Articles and Videos

β–Ά Zod vs. Valibot: A JS/TS Validator Battle - You know it's good when the creator of Zod comments: "incredible video. honestly blown away by how succinct and clear you made everything." (12 minutes.)

Jack Herrington

Compile Svelte 5 in Your Head - Svelte does things a little differently to most UI frameworks by compiling code to components ahead-of-time, but what is it actually doing at the code level?

Tan Li Hau

Choosing The Right SaaS Architecture: Multi-Tenant Vs. Single-Tenant - Choosing between multi-tenant and single-tenant? This guide breaks down the tradeoffs clearly.

Clerk sponsor

Logical Assignment Operators in JavaScript: Small Syntax, Big Wins - A handy post if you need to get a grip on your ||=, &&= and ??=s.

Matt Smith

Making Sense of the Performance Extensibility API - The Performance Extensibility API allows us to create custom tracks in Chrome DevTools' Performance panel - here's how to make use of it.

Harry Roberts

πŸ“Ί The Creator of Bun on Building Bun and its Node.js Compatibility Patrick Akil and Jarred Sumner

πŸ“„ The Multi-Repository TypeScript Problem - Solving cross-repo type safety. David Moores

πŸ“„ vi.mock is a Footgun: Why vi.spyOn Should Be Your Default Brendan McLoughlin

πŸ“„ How to Build 2D Game-Style Physics with Matter.js and React Native Skia Daniel Friyia (Expo Blog)

πŸ›  Code & Tools

Dependency Cruiser 17: A Way to Visualize Dependencies - If you want a look at the output, there's a whole page of graphs for popular, real world projects including Chalk, Yarn, and React.

Sander Verweij

TanStack DB: The Embedded Client Database for TanStack Query - One for team React! TanStackβ€―DB is an embedded client‑side database that uses differential dataflow to power live, relational queries, sub‑ms incremental updates, and optimistic writes. This post is a great pitch, and the first beta is available now.

Kyle Mathews and Sam Willis

Connect Performance and Reliability to User Engagement - With Embrace, see where technical issues cause dropoff, along with attribute correlations to surface affected cohorts.

Embrace sponsor

AudioTee.js: macOS System Audio Capture for Node.js - Wrapping around an (included) Swift-powered binary, this captures Mac system audio output and emits it as PCM encoded chunks at regular intervals. GitHub repo.

Nick Payne

πŸ“° Classifieds

Meticulous automatically creates and maintains an E2E UI test suite with zero developer effort. Relied on by Dropbox, Wiz, Lattice, Bilt Rewards, etc.

πŸ” Discover KeyLines - a scalable JavaScript graph visualization toolkit that turns complex data into actionable insights.

🎁 Some Bonus Items

01 Aug 2025 12:00am GMT

25 Jul 2025

feedJavaScript Weekly

Will WebAssembly ever get DOM support?

#​746 - July 25, 2025

Read on the Web

JavaScript Weekly

es-toolkit: A Modern JavaScript Utility Library - Boasts being both faster and '97% smaller' than the ubiquitous Lodash, for which it is a direct 'seamless' replacement (and now boasting 100% Lodash compatibility). The reference guide shows off all it can do, and it's widely adopted - being used by Storybook, CKEditor, and recommended by Nuxt. GitHub repo.

Viva Republica, Inc

Avoid Common Mistakes in React and Next.js - Avoid redundant useState and useEffect, deeply nested data, unscalable forms, and hidden shared state bugs. David Khourshid teaches practical patterns to refactor complex apps and scale with confidence!

Frontend Masters sponsor

When is WebAssembly Going to Get DOM Support? - Working with the DOM from JavaScript is straightforward, but WebAssembly requires glue code to do it. Is this going to change? Daniel of the TC39 committee digs into the issue here and says that modern build toolchains and WASM's evolution are making things easier all the time.

Daniel Ehrenberg

IN BRIEF:

RELEASES:

πŸ“– Articles and Videos

A JS 'Numbers Station' in 1 Kilobyte - We've recently promoted the js1024 JavaScript code golfing contest - it's now over, but Terence breaks down his interesting entry which recreates the vibe of real-life numbers stations.

Terence Eden

πŸ’‘ You can also look through all the other js1024 submissions.

Revisiting My 2010 JavaScript Library - A developer looks back at code he wrote 15 years ago, the 'clever solutions' he used, and why most of it is redundant in 2025.

Ibrahim Diallo

Build an MCP Server in Your Next.js Application with Clerk - Add a spec-compliant MCP endpoint in minutes, allowing LLMs to access user data with user consent.

Clerk sponsor

Web Serial: The Only Reason I'll Admit JavaScript Isn't All Bad - The author isn't a fan of JavaScript but likes the power the Web Serial API provides for working with external devices.

Steven Hicks

πŸ“„ 'It's Time for Modern CSS to Kill the SPA' - "Use modern server rendering. Use actual pages. Animate with CSS. Preload with intent" Jono Alderson

πŸ“„ We Migrated Our Next.js Site to Eleventy and Increased Performance by 24% - Eleventy (11ty) is a popular Node-based static site generator. Dan Webb

πŸ“„ Handling JavaScript Event Listeners with Parameters Amejimaobari Ollornwi

πŸ“„ Build Your Own Font Search Engine - Using vision language models to index and search the fonts. LΓΊΓ­ Smyth

πŸ“„ Interactive Text Destruction with Three.js, WebGPU, and Three Shader Language Lolo Armdz

πŸ“„ React Router and React Server Components: The Path Forward Ebey and Dalgleish

πŸ›  Code & Tools

Transformers.js 3.7: Machine Learning and Models for the Web - Brings the ability to run powerful pretrained models in the browser, thanks to the ONNX runtime. v3.7 adds Voxtral (speech transcription and audio understanding), LFM2 and ModernBERT support.

Hugging Face

npq: Safely Install Packages by Auditing Them Pre-Install - npq performs several extra steps compared to npm. It consults Snyk's database of vulnerabilities, looks at the package's age, download count, and docs, and tries to paint a better picture of what you're really installing.

Liran Tal

Measure Web Performance Based on Real User Impact - With Embrace, get full session timelines, Core Web Vitals and JS exceptions in context, and user journey analysis.

Embrace sponsor

Untitled UI React: A Fresh UI Component Library - A giant collection of open-source (MIT) components built around Tailwind CSS and React Aria - there's a full introduction here. It's not only open source, with a 'PRO' offering with more components, examples, and Figma integration.

Untitled UI

ts-regexp: A Statically Typed Alternative to JavaScript's RegExp - A new approach for bringing strict typing to regular expressions in TypeScript.

Danilo Furrer

πŸ“° Classifieds

Meticulous automatically creates and maintains an E2E UI test suite with zero developer effort. Relied on by Dropbox, Wiz, Lattice, Bilt Rewards, etc.

πŸ” Discover KeyLines - a scalable JavaScript graph visualization toolkit that turns complex data into actionable insights.

🎁 Some Bonus Items

25 Jul 2025 12:00am GMT

17 Jul 2024

feedOfficial jQuery Blog

Second Beta of jQuery 4.0.0

Last February, we released the first beta of jQuery 4.0.0. We're now ready to release a second, and we expect a release candidate to come soonβ„’. This release comes with a major rewrite to jQuery's testing infrastructure, which removed all deprecated or under-supported dependencies. But the main change that warranted a second beta was a … Continue reading β†’

17 Jul 2024 2:03pm GMT

17 Apr 2024

feedOfficial jQuery Blog

Upgrading jQuery: Working Towards a Healthy Web

jQuery's influence on the web will always be evident. When it was first introduced in 2006, jQuery became a fundamental tool for web developers almost immediately. It simplified JavaScript programming, making it easier to manipulate HTML documents, handle events, perform animations, and much more. Since then, it has played and continues to play a major … Continue reading β†’

17 Apr 2024 5:00pm GMT

06 Feb 2024

feedOfficial jQuery Blog

jQuery 4.0.0 BETA!

jQuery 4.0.0 has been in the works for a long time, but it is now ready for a beta release! There's a lot to cover, and the team is excited to see it released. We've got bug fixes, performance improvements, and some breaking changes. We removed support for IE<11 after all! Still, we expect disruption … Continue reading β†’

06 Feb 2024 4:43pm GMT

28 Aug 2023

feedOfficial jQuery Blog

jQuery 3.7.1 Released: Reliable Table Row Dimensions

jQuery 3.7.1 has been released! This release fixes a regression from jQuery 3.6.0 that resulted in rounded dimensions for <tr /> elements in Chrome and Safari. Also, a (mostly) internal Sizzle method, jQuery.find.tokenize that was on the jQuery object was accidentally removed when we removed Sizzle in jQuery 3.7.0. That method has been restored. As … Continue reading β†’

28 Aug 2023 1:40pm GMT

11 May 2023

feedOfficial jQuery Blog

jQuery 3.7.0 Released: Staying in Order

jQuery 3.7.0 is now available! This release has it all: bug fixes, a new method, and a performance improvement! We even dropped our longtime selector engine: Sizzle. Or, I should say, we moved it into jQuery. jQuery no longer depends on Sizzle as a separate project, but has instead dropped its code directly into jQuery … Continue reading β†’

11 May 2023 6:38pm GMT

08 Mar 2023

feedOfficial jQuery Blog

jQuery 3.6.4 Released: Selector Forgiveness

If you've been following along with recent jQuery releases, we have been working on how to address the recent addition of some new selectors in browsers, especially :has. jQuery 3.6.3 settled on the strategy of using native CSS.supports to determined whether a selector should be passed directly to querySelectorAll or instead go through jQuery's selector … Continue reading β†’

08 Mar 2023 3:52pm GMT

20 Dec 2022

feedOfficial jQuery Blog

jQuery 3.6.3 Released: A Quick Selector Fix

Last week, we released jQuery 3.6.2. There were several changes in that release, but the most important one addressed an issue with some new selectors introduced in most browsers, like :has(). We wanted to release jQuery 3.6.3 quickly because an issue was reported that revealed a problem with our original fix. More details on that … Continue reading β†’

20 Dec 2022 9:35pm GMT

13 Dec 2022

feedOfficial jQuery Blog

jQuery 3.6.2 Released!

You probably weren't expecting another release so soon, but jQuery 3.6.2 has arrived! The main impetus for this release was the introduction of some new selectors in Chrome. More on that below. As usual, the release is available on our cdn and the npm package manager. Other third party CDNs will probably have it soon … Continue reading β†’

13 Dec 2022 3:13pm GMT

26 Aug 2022

feedOfficial jQuery Blog

jQuery 3.6.1 Maintenance Release

jQuery 3.6.1 has been released! It's been a while since our previous release. We were looking at fixing some elusive edge cases related to focus and blur, but we never quite got the fix right. If there's any area of jQuery that's hard to change, it's likely related to focus somehow. We're leaving those as-is … Continue reading β†’

26 Aug 2022 5:55pm GMT