New WebKit Features in Safari 13.1

This year’s spring releases of Safari 13.1 for macOS Catalina, iPadOS, iOS, and watchOS bring a tremendous number of WebKit improvements for the web across Apple’s platforms. All of this with many more updates for improved privacy, performance, and a host of new tools for web developers. These features stand out to me: Pointer and …

Bring the magic of Snapchat Lenses to your live streams and video chats with Snap Camera

Snap Camera is a desktop application by the Snapchat folks which allows you to apply their filters (“Lenses” as they call it) onto your webcam footage. The cool part is the fact that the app also exposes itself as a webcam to your system. That way you can use the (fake) Snap Camera as the …

This Video Has $viewcount Views

Tom Scott has uploaded a video to YouTube whose title reflects the number of views the video has. The title of this video should change with the times. But nothing lasts forever: here’s the story of how I made it work, why it used to be easier to make that work, and how it all …

The Beginner’s Guide to React

Speaking of Kent C. Dodds in the previous post: he has updated his The Beginner’s Guide to React on Egghead to include Hooks and the whole lot. This course is for React newbies and anyone looking to build a solid foundation. It’s designed to teach you everything you need to start building web applications in …

useAbortController – A React Hook to work with the AbortController

Kent C. Dodds recently floated this snippet around, a React Hook to easily work with the the AbortController: function useAbortController() { const abortControllerRef = React.useRef() const getAbortController = React.useCallback(() => { if (!abortControllerRef.current) { abortControllerRef.current = new AbortController() } return abortControllerRef.current }, []) React.useEffect(() => { return () => getAbortController().abort() }, [getAbortController]) const getSignal = …

Methods for assigning an accessible name to a form control

Adrian Roselli: Too often folks will grab ARIA first to provide an accessible name for a thing. Or they may sprinkle hidden content around a form. In most cases the impact of those decisions is unknown. The assumption that they do the same thing, give the same output to all users, is wrong. In short, …

<ol>‘s start and reversed attributes (and more)

#HTML tip for today: <ol> element has `start` and `reversed` attributes! Some examples where it's useful:`start` → paginated results`reversed` → "top 10 best … " lists pic.twitter.com/vkh88h2zGV — Tomek Sułkowski (@sulco) March 20, 2020 Handy for those end-of-year lists 😉 ~ Apart from overriding the list style using CSS’s list-style-type (which you should set it …

Chrome Extension Webpack Boilerplate

If you ever want to create a Chrome Extension, this repo might come in handy: A basic foundation boilerplate for rich Chrome Extensions using Webpack to help you write modular and modern Javascript code, load CSS easily and automatic reload the browser on code changes. Chrome Extension Webpack Boilerplate →

CSS Findings From The New Facebook Design

Ahmad Shadeed dove into the new Facebook design and noted his findings. I am a curious person who is always interested in opening up the browser DevTools to see how things were made on a website. This is the first time that I blog about something like this. I found some interesting uses of different …