QR Code
OWT Web Services       http://owtweb.com
[Skip to Content]

Industry News

10/09/2024





















#​708 — October 10, 2024

Read on the Web





JavaScript Weekly








TC39 Advances 10+ ECMAScript Proposals — The architects behind the development of the ECMAScript / JavaScript spec got together again this week (you can see them in this tweet) and they had a packed agenda. Import attributes, Iterator helpers, Promise.try and Regexp modifiers all made it to stage 4, and more besides.


Sarah Gooding (Socket)






🦖 Announcing Deno 2 — A huge release for the “what if I reinvented Node again from scratch?” runtime. Backwards compatibility with Node is a headline feature, but there’s a lot more baked in. Best, though, is the ▶️ epic ‘Announcing Deno 2’ video. After a slightly bombastic opener, Ryan presents a fantastic ‘keynote’ style tour of everything Deno has to offer – I enjoyed watching it.


Dahl, Belder, Iwańczuk and Jiang




💡 A neat new feature is Deno's Jupyter Notebook support which Simon Willison checks out here.





A Deeper Understanding of Web Security — Steve Kinney hosts this extensive video course on the challenges of web security. You'll gain a deeper understanding of security on the web, developing your mental model on how to approach things, explore common vulnerabilities, get hands-on experience with security tools, and get to grips with best practices.


Frontend Masters sponsor






Announcing TypeScript 5.7 Beta — The newest TypeScript is on the way. As always, a true laundry list of enhancements and new features, but the path rewriting for relative paths is a particularly welcome addition, enabling easy rewrites of .ts imports into .js at compile time.


Microsoft




IN BRIEF:





RELEASES:




📒 Articles & Tutorials





Building a Local Single-Page App with htmx — If you have a reasonably simple app to build, using a large framework is probably going to be overkill. htmx to the rescue! Jake presents an easily followed practical tutorial packed with code.


Jake Lazaroff




💡 Jake also wrote an interesting case study of building a local-first app using SvelteKit and Shoelace, if you want to see something more fully-formed.





Product for Engineers: A Newsletter Helping Flex Your Product Muscle — Product for Engineers is dedicated to sharing the skills and strategies product engineers need to succeed.


PostHog sponsor






Build a Static RSS Reader To Fight Your Inner FOMO — The theme of lightweight JavaScript apps continues with a look at creating a basic RSS feed reader, that updates once a day, with Astro.


Karin Hendrikse






Node vs Bun: No Backend Performance Difference? — You can always trust a benchmark to ruffle some feathers, often over the methodology rather than the result. This is no exception, but interesting nonetheless.


Evert Heylen






▶  Building a Tic-Tac-Toe Game in TypeScript Types — One of those videos I enjoyed simply so I don’t ever feel tempted to try it myself.


Typed Rocks






Securing Node.js Express APIs with Clerk and React — Secure Express API endpoints and integrate authentication without the complexity of building it from scratch.


Clerk sponsor




📄 Building a Robust Frontend using Progressive Enhancement UK Government


📄 The Popover API: Your New Best Friend for Tooltips – Supported in all major browsers, except Safari on iOS. Sjoerd Beentjes


📄 18 Interview Questions Answered by Angular Experts Angular Space


📄 Testing CSS Print Media Styles with Cypress Gleb Bahmutov



🛠 Code & Tools








DOCX 9.0: Generate Word .docx Files from JavaScript — The code to lay out documents is verbose but there’s a lot of functionality baked in and there aren’t many other options for this task. Here’s a CodePen-based example to give you an idea. GitHub repo.


Dolan Miu






TinyJS: A Lightweight Way to Work with DOM Elements — Lighter than querySelector and friends, you ask? Not in file size, but certainly in code weight. TinyJS offers a jQuery-esque syntax for element selection, adding properties to elements, and more.


Victor Ribeiro






Breakpoints and console.log Is the Past, Time Travel Is the Future — 15x faster JavaScript debugging than with breakpoints and console.log, supports Vitest, jest, karma, jasmine, and more.


Wallaby Team sponsor






SVGuitar 2.4: Create SVG-Based Guitar Chord Charts — Dynamically generate chord charts / fingerings in the browser. You can experiment with it in this live demo.


Raphael Voellmy







Free Public APIs: A Collection of Free Public APIs for Developers — Categorized and searchable, these are tested daily by bots so if any API is taken down or moved behind a paywall, it's removed from the site.


Nick Schneeberger






TutorialKit 1.0: Create Interactive Coding Tutorials — StackBlitz’s framework for creating interactive coding tutorials, perhaps as a way to boost the adoption of your own libraries or design system. v1.0 marks TutorialKit as stable.


StackBlitz






Jeasx: The Ease of JSX with the Power of SSR — A new server side rendering framework built on top of JSX and Fastify.


Maik Jablonski






ip-address 10.0: Library for Parsing and Manipulating IP Addresses — Works with both IPv4 and IPv6 addresses.


Beau Gunderson











📰 Classifieds




Automatically creates & maintains E2E UI tests. Zero flakes. Used by Lattice, Bilt Rewards and others. Backed by YC, CTO GitHub and others.



Pythagora is an AI dev tool that builds production-ready tools (not demo apps). It writes the code and talks to you in the process.



⚙️ Create entire web apps with Reactile and let it handle your widgets and windows within a single browser tab. 1-month free trial. Try it now.












10/02/2024





















#​707 — October 3, 2024

Read on the Web





JavaScript Weekly








VoidZero: A Next-Generation Toolchain for JavaScript — Not content to have merely created Vue.js and Vite, JavaScript powerhouse Evan You has unveiled his latest adventure: a $4.6m funded company building an open-source unified development toolchain for the JavaScript ecosystem. With his track record, this is as good an attempt as it gets.


Evan You






ESLint Now Officially Supports Linting JSON and Markdown — ESLint has been taking steps to become a more general purpose linter and that effort is beginning to bear fruit with this milestone.


Nicholas C. Zakas






Run GitHub Actions Up to 2x Faster at Half the Cost — Blacksmith runs your GitHub Actions substantially faster by running them on modern gaming CPUs. Integrating Blacksmith is a one-line code change. 100+ companies like Ashby, Superblocks, and Slope use Blacksmith to help developers merge code faster.


Blacksmith sponsor






Tauri 2.0: Small, Fast Desktop Apps using Web TechnologiesTauri is a Rust-based alternative to Electron for bringing together HTML, JavaScript and CSS code to create cross-platform desktop apps. Rather than using V8, it uses the natively available webview to run your code.


Tillmann Weidinger




IN BRIEF:





RELEASES:




  • Eleventy / 11ty 3.0 – Node.js-powered static site generator.




  • Tabulator 6.3 – Popular interactive table / data grid control.




  • Jiti 2.0 – Runtime TypeScript and ESM support for Node.js.




  • pnpm 9.12 – The alternative, efficient package manager.








ViteConf is Live! — Join us today and tomorrow for ViteConf 2024!


StackBlitz sponsor



📒 Articles & Tutorials








▶  Bundling: The Past, Present and Future — A history lesson on bundlers, why they’re used, the problems they solve, the current ecosystem, and a look at the potential future for these tools.


Devon Govett






Unleash JavaScript's Potential with Functional Programming — More focused on the how, rather than the why, but a good primer nonetheless, especially if you’ve never tried to learn about FP before.


Jan Hesters






An Online Event You Won’t Want to Miss — 🔥 JetBrains JavaScript Day returns Oct 24, and it promises to be the best one yet! Explore an impressive agenda and register for free today.


JetBrains sponsor






SVG Coding Examples: Useful Recipes for Writing Vectors by Hand — Explores the basics of hand-coding SVGs, how to use JavaScript along the way, and practical examples to demystify the inner workings of common SVG elements.


Myriam Frisano




📄 Web Components are Not Framework Components and That’s Okay Lea Verou


📄 How to Submit an Electron App to the Mac App Store Liu Liu


📄 Why Gumroad Didn't Choose htmx Sahil Lavingia


📄 How Bun Supports V8 APIs Without using V8 Ben Grant (Bun)


📺 Laravel vs Rails for JavaScript Developers Sam Lewis



🛠 Code & Tools








🤖 assistant-ui: React Components for AI Chat — It doesn’t just give you the interface components, but has integrations for Vercel AI, Langchain, and talking to other common LLM APIs (e.g. OpenAI), enabling you to build your own in-house AI chat system quickly. Examples.


Simon Farshid






qrframe: A Library to Generate 'Pretty' QR Codes — It's slightly odd as the QR codes generated aren’t guaranteed to scan reliably, but if you can generate ones that do, they look striking, and could be useful for branding/fun use cases. Play around with a live demo here.


Kyle Zheng






Announcing MongoDB 8.0 — Over 30% Faster Than Before — Learn how MongoDB 8.0 was built to exceed the most stringent security, availability, and performance requirements.


MongoDB 8.0 sponsor






Superdiff 2.0: Compares Two Arrays or Objects and Return a Diff — Got two similar objects and want to see the underlying differences?


antoine






µExpress / Ultimate Express: Like Express, But Faster — Imagine a reimplementation of Express with full API compatibility, but based on µWebSockets and with an optimized router for faster performance.


dimden






VueFormify 1.1: Simple Type-Safe Form Building for Vue — Bills itself as “your ticket to form-building autonomy.” There’s a getting started guide and GitHub repo.


Máté Nagy










pretty-print: Customizable String Representations of JS Values — Produce a string representation of any value. Similar to util.inspect but with many extra options for tree-ifying, coloring, sorting, choosing what to display, etc.


Effectful Technologies Inc











📰 Classifieds




⚙️ Create entire web apps with Reactile and let it handle your widgets and windows within a single browser tab. 1-month free trial. Try it now.



Automatically creates & maintains E2E UI tests. Zero flakes. Used by Lattice, Bilt Rewards and others. Backed by YC, CTO GitHub and others.













09/25/2024





















#​706 — September 26, 2024

Read on the Web





JavaScript Weekly








Deno 2.0 Release Candidate — Deno started life as a manifestation of ideas that Node’s original creator, Ryan Dahl, had after his experiences with Node. Deno 2 is the next step: how the Deno team thinks Deno should ultimately be. Many changes await: window is gone and Node’s process appears, dependency management has been improved, numerous APIs have gone stable (e.g. WebGPU), and both Node.js API and CommonJS support have continued to improve.


Bartek Iwańczuk and Andy Jiang






Don't Sleep on AbortControllerAbortController is a broadly available mechanism for, originally, aborting Web requests on demand, but you can use it for a lot more than that (or ‘anything!’, as Artem explains).


Artem Zakharchenko






Learn to Build Feature-Rich, Native Mobile Apps Using React Native and Expo — Join Kadi Kraman for a video course designed to hone your React skills. Whether a beginner, or looking to further refine your skill set, you'll learn to create practical iOS and Android apps, covering components, styling, UX, linting, async storage, animation, and much more.


Frontend Masters sponsor






How Josh W. Comeau Rebuilt His Blog, App Router Style — We’re huge fans of Josh’s blog and he’s just rebuilt it entirely using Next.js, MDX, Sandpack, and an array of other technologies. Here, he goes into great depth about what's involved. A good look behind the scenes of a modern React-driven project.


Josh W Comeau




IN BRIEF:





RELEASES:




  • Bun v1.1.29 – Its C compilation feature gets N-API support, but is otherwise largely a bugfix release.




  • Storybook 8.3 – A popular frontend component workshop is now using Vitest to rapidly speed up its component testing features.




  • Strapi 5 – Popular open source headless CMS.




  • Solid 1.9 – Declarative and performant reactivity for building UIs.




  • PostgreSQL 17 – The popular database isn't a JavaScript project, but a lot of you will be using it. Psst! We have a Postgres newsletter too!





📒 Articles & Tutorials








A Guide to Destructuring in JavaScript — The destructuring assignment syntax appeared in ES6 almost ten years ago and has become a central part of modern JavaScript development. This is a good primer/reminder of the potential.


Mat Marquis






The Nine Node Pillars: Principles for Doing Node Right — A group of prolific and productive Node.js contributors have put together a checklist to identify gaps in your current Node development practices, particularly when building large-scale apps.


Snell, Venditto, Dawson, Collina, et al.






A Complete Guide to Session Management in Next.js — Learn how integrating session management into your app provides robust security and enhances user experience.


Clerk sponsor






What Are Durable Functions? A Visual JavaScript Primer — This is rather dependent on what Inngest, a durable function service, offers, but is a good primer to the general idea which may well suit your use cases.


Lydia Hallie (Inngest)






What's New in Express.js 5.0 — Express.js 5.0 landed recently with rather brief release notes, so here's a deeper look at what it has to offer. The updates are largely incremental, but set the stage for Express’s future.


Trevor I. Lasn






Angular Routing Essentials: Everything in One Post — A bold claim, but it does a pretty good job.


Oleksandr Kocherhin






Using Reddit's JSON API from a JavaScript App — How to pull data from Reddit’s API and display it in a simple web application built with Parcel.


Muhammed Ali




📺 Create a Donkey Kong Country-ish Platformer in JS – We don’t see the DKC resemblance, but it’s a solid 4 hour screencast. Chris Courses


📄 Implementing a 'Like' Button without Authentication Abhishek Saha



🛠 Code & Tools








Schedule-X 2: A Modern Event Calendar Component — Available in the form of React/Preact, Vue, Svelte, Angular, or plain JS components. Open source but with a premium version with extra features. GitHub repo.


Tom Österlund






🧹 Vue Mess Detector: Code and Quality Analysis for Vue Projects — A static analysis tool that can catch various bugs and code quality issues in Vue-based projects, built atop rules from the Vue.js Style Guide and others. GitHub repo.


Various Contributors






✂️ Cut Your QA Cycles Down from Hours to MinutesQA Wolf's AI-native approach gets engineering teams to 80% automated end-to-end test coverage and helps them ship 2x faster by reducing QA cycles from hours to minutes.


QA Wolf sponsor






Tesseract.js: Pure JS OCR for 100+ Languages — A port of the C++-based Tesseract library commonly used for extract text from images. The homepage has a live demo where you can drop your own images. GitHub repo.


Tesseract Team






HumanifyJS: Deobfuscate JavaScript Code using ChatGPT — There’s an in-depth explainer here. The primary feature is its ability to reverse the loss of meaningful variable and function names based on the context of the code.


Jesse Luoto






Tests Are Dead. Meticulous Is Here — Automatically creates & maintains E2E UI tests. Zero flakes. Backed by YC, CTO of GitHub, CPO of Adobe, CEO of Vercel.


Meticulous sponsor






React Snap Carousel: DOM-First, Headless Carousel — Uses native browser scrolling and CSS scroll snap points for performance. Try out some of its features in its Storybook. The latest version adds support for infinite carousels.


Richard Scarrott




💡 For more React projects, check out our latest React newsletter.












09/18/2024





















#​705 — September 19, 2024

Read on the Web





JavaScript™? Weekly








'Oracle, It’s Time to Free JavaScript.' — It’s long been a bone of contention that Oracle owns the trademark for ‘JavaScript’ (we put out a call two years ago) but this marks the first serious effort to try and change that, including petitioning the USPTO, if necessary. You can support the effort by signing this open letter, joining a vast array of JavaScript luminaries.


The JavaScript Community






Now You Can Compile and Run C in JavaScript — Well, if you’re using Bun, at least. Bun v1.1.28 lands experimental support for compiling and native C code and then running its functions from JavaScript. It's easier than it sounds..


Jarred Sumner (Bun)




😅 Bun's creator said this is "an unplanned feature I worked on mostly a month ago on a Saturday for fun" – that's our kinda fun!





✂️ Cut Your QA Cycles Down from Hours to Minutes with QA Wolf — If slow QA processes bottleneck your software engineering team and you’re releasing slower because of it, you must check out QA Wolf. QA Wolf gets engineering teams to 80% automated end-to-end test coverage and helps them ship 2x faster by reducing QA cycles from hours to minutes. Learn more.


QA Wolf sponsor






ts-blank-space: Fast Type-Stripping TypeScript to JS Compiler — It’s job is simple: be the fastest TS to JS compiler written in JS (it’s 5.6x faster than tsc.) Types are simply replaced with whitespace preserving the coordinates of the JS code which eliminates the need for sourcemaps entirely.


Ashley Claymore / Bloomberg




IN BRIEF:





RELEASES:




  • Fastify v5Fastify is a popular, perf-focused web framework for Node.js, inspired by Express (which recently reached v5.0 too!)




  • Astro 5 Beta – Astro helps keep the run of v5.0 releases going..




  • Node.js v22.9 (Current) – Adds a util.getCallSite function to obtain the stacktrace of the current execution. V8's Maglev JIT is also disabled for reliability reasons due to outstanding issues in V8.




  • Hono 4.6 – The nifty 'any runtime' webapp framework gains context storage middleware.








ViteConf is October 3rd! — StackBlitz is r(ai)sing the bar in the ViteConf '24 keynote. You won’t want to miss it 👀.


StackBlitz sponsor



📒 Articles & Tutorials








Mathematical Symbols and JavaScript Equivalents — We’re not just talking the obvious like + and - but things like ⁿ√, Σ, Π, ∃, and set notation.


Joshua Nussbaum






A React 19 Cheat Sheet — From Kent C Dodds, of Epic React fame, comes this part cheat sheet, part succinct reminder of some of the new things you can do in React 19, along with (very) brief code examples.


Kent C. Dodds






[Workshop] Fix Your Front-End 101: JavaScript Edition — Learn practical tips to debug JavaScript end to end. Join our JavaScript team live on Sept 24.


Sentry sponsor






From Parcel to Vite: A Short Story of a 100K LOC Migration“We’ve migrated our frontend projects from Parcel to Vite, and the process was… smooth.”


Gao / Logto






How to Create a Chrome Extension with React, TypeScript, Tailwind CSS and Vite — Covers everything you need to know right through to publishing in the Chrome Web Store.


Lokman Musliu




📺 Building a React-Powered TODO App in 9 Steps – A 54 second video showing off the key stages, all without any libraries except React. Danny Thompson


📄 12 Ways to Better Vue Components with TypeScript Fotis Adamakis


📄 Why We Switched from Cypress to Playwright S Varun (BigBinary)


📄 Bitwise Operators in JavaScript and When to Use Them 8 Hobbies


📄 An Introduction to TanStack Router Adam Rackis



🛠 Code & Tools








date-fns v4.0 Released with First-Class Time Zones Supportdate-fns is a hugely popular and comprehensive suite of 200+ functions for working with dates in JavaScript, and now there’s first-class time zone support too.


Sasha Koss






ts-remove-unused: Remove Unused Code from TypeScript Projects — A tool that can auto-fix unused exports (removing export from the declaration or the whole declaration based on its usage) and delete modules that have no referenced exports. Knip is another mature tool in this space, though focused more on detecting the things you can remove.


LINE






Amplify the Benefits of JWTs and Session Tokens — Learn how leveraging the benefits of both session token authentication and JWTs results in the best of both approaches.


Clerk sponsor






Next.js SaaS Starter: A Next.js Template for SaaS Webapps — A starter template for building a SaaS-style webapp using Next.js with authentication, Stripe integration, and a dashboard for users. It uses Postgres and Drizzle for the database and UI elements based on shadcn/ui and Tailwind.


Lee Robinson (Vercel)






nano-spawn: Tiny Execa-Inspired Process Execution for Node.js — If you’re familiar with Sindre’s Execa for running commands from a Node app in a reliable manner, nano-spawn offers its core functionality in a smaller package.


Sindre Sorhus and ehmicky






DECK.GL: GPU-Powered Large-Scale Data Visualization Framework — Well suited to geospatial data visualization use cases that go beyond typical 2D views. There are plenty of examples to show it off. Can be used through both vanilla JS and React interfaces.


OpenJS Foundation






Vue-Multiselect 3.1: A Complete 'Selecting Solution' for Vue.js — There’s a lot on offer here, complete with SSR support, Vuex support, strong test coverage, and with no dependencies.


Damian Dulisz et al.






Chokidar 4.0: Efficient Cross-Platform File Watching Node.js Library — Wraps around fs.watch / fs.watchFile and normalizes the events received, applies best practices, and presents an API that works the same across platforms.


Paul Miller