Articles x89 External Publishers Articles I've written for various publications including: The New Stack, Smashing Magazine and CSS Tricks. NEW Neon • Tuesday, October 29, 2024 How to Set Up Nightly Backups to AWS S3 for Multiple Neon Projects This is the second post of a series on automating nightly backups for multiple Neon projects. In the first post, I cover... AWS PostgreSQL GitHub Actions NEW Neon • Monday, October 28, 2024 How to create an AWS S3 bucket for Postgres backups In this post, I’ll walk you through setting up an AWS S3 bucket to store Postgres backups. This is part 1 of a 2-part se... AWS PostgreSQL GitHub Actions NEW Smashing Magazine • Thursday, September 12, 2024 How To Build Custom Data Visualizations Using Luzmo Flex In this article, I’ll introduce you to Luzmo Flex, a new feature from the Luzmo team who have been working hard making d... GitHub Actions Google Analytics Slack NEW Smashing Magazine • Monday, September 9, 2024 How To Create A Weekly Google Analytics Report That Posts To Slack Google Analytics is great, but not everyone in your organization will be granted access. In many places I’ve worked, it ... GitHub Actions Google Analytics Slack NEW Luzmo • Wednesday, August 28, 2024 Using Luzmo for Data Visualization in Astro: A Set-up Guide Building data visualizations from scratch can be both time-consuming and cumbersome, requiring significant effort to des... Astro NEW Luzmo • Wednesday, August 28, 2024 Using Luzmo for Data Visualization in Next.js: A Set-up Guide Building data visualizations from scratch can be both time-consuming and cumbersome, requiring significant effort to des... Next.js NEW Luzmo • Monday, July 22, 2024 Embedding A Luzmo Dashboard In Next.js Apps Using Clerk on Vercel When presenting customer data or visualizations in user-facing applications, security is super important. It's crucial t... Next.js Clerk NEW Luzmo • Monday, July 15, 2024 How To Set Up Real-Time Monitoring in Slack with Luzmo Data analysis is crucial for identifying trends and patterns that might otherwise go unnoticed. By inspecting and analyz... Slack Google Analytics NEW The New Stack • Thursday, June 27, 2024 CSS-in-JS and React Server Components: A Developer Guide With React’s evolving ecosystem, particularly with Next.js shifting toward a “server-first” approach, applications using... React Next.js styled-components NEW The New Stack • Friday, June 21, 2024 How To Use GitHub Actions and APIs to Surface Important Data In this article, we’ll demonstrate how to write a GitHub Action that queries a data-centric software system — in this ex... GitHub Actions Google Analytics Slack NEW The New Stack • Monday, June 17, 2024 How To Use Google Sheets as a Database With React via Next.js In this tutorial I’ll be explaining how to use Google Sheets as a database to store the results of a user poll. I’ve use... Next.js React JavaScript NEW The New Stack • Thursday, June 6, 2024 How To Schedule PostgreSQL Backups With GitHub Actions Learn how to schedule a GitHub Action that performs a full backup of data and schema from a Neon PostgreSQL database and... AWS PostgreSQL SQL GitHub Actions NEW The New Stack • Wednesday, May 29, 2024 Why We Need a Standard JavaScript ORM for SQL Databases Is Drizzle ORM the open source, SQL-friendly tool that JavaScript developers have been looking for to help with type saf... JavaScript TypeScript PostgreSQL SQL DrizzleORM NEW The New Stack • Wednesday, May 22, 2024 Drizzle ORM Is SQL in a JavaScript Hat — and Wears It Well Drizzle ORM converts types from SQL to TypeScript, and can help JS devs work with relational databases in TypeScript env... JavaScript TypeScript PostgreSQL SQL DrizzleORM NEW The New Stack • Thursday, May 16, 2024 Outer Excuses: Why JavaScript Developers Should Learn SQL SQL is the language of databases and if you’re a JavaScript developer using PostgreSQL, it’s beneficial to have a basic ... JavaScript PostgreSQL SQL AI NEW Netlify Developers • Monday, May 13, 2024 Getting Started with React, Vite and Clerk Auth on Netlify Very many applications and interactive tools on the web require some sort of user authentication and authorization. Hist... JavaScript React Clerk NEW Netlify Developers • Friday, May 10, 2024 How to use Sanity Portable Text with Astro Providing content editors with the ability to apply rich text formatting, be it in long-form content with styled heading... JavaScript Astro Sanity NEW StackBlitz • Monday, May 6, 2024 How to document design system components If you’re building a product, you’ll no doubt be familiar with the concept of design systems and component libraries. Us... Design Systems NEW The New Stack • Wednesday, May 1, 2024 Automatically Generate Types for Your PostgreSQL Database SQL can be typesafe, in the JavaScript sense of the word. Paul Scanlon demonstrates why devs shouldn't be afraid to work... TypeScript PostgreSQL SQL NEW The New Stack • Wednesday, April 24, 2024 Global state management in React with Jotai Jotai is a global state management solution for React, explains Paul Scanlon in this tutorial about Waku developer Daish... React JavaScript Waku NEW The New Stack • Thursday, April 18, 2024 Did Signals Just Land in React? "Signals" are used to manage client-side state, and recent developments suggest they could be useful in React. Paul Scan... React JavaScript NEW Netlify Developers • Tuesday, April 9, 2024 How to use Sanity CMS with Astro The ability to select both the framework and the content management system that each have the best fit with the requirem... JavaScript Astro Sanity NEW The New Stack • Tuesday, April 9, 2024 React Server Components in a Nutshell Paul Scanlon uses Waku to show how RSCs give React developers access to asynchronous server-side requests and data at th... React JavaScript Waku NEW The New Stack • Saturday, March 23, 2024 US Tech Cannot Comprehend the Digital Nomad Way of Life Hello all, I’m Paul. I’m a British citizen and tech nerd. I’m currently visiting and working remotely in Medellin (Colom... Op-ed NEW The New Stack • Monday, March 18, 2024 Say No to ‘Ship It’ Culture: Slow and Steady Wins the Race In this post, I’d like to share my thoughts on “ship it” culture — which could be polarizing! I’ve noticed the trend gro... Op-ed NEW Netlify Developers • Wednesday, March 13, 2024 Adding resumability to Astro with Qwik Astro avoids shipping any JavaScript to the client by default. However, there are occasions when client-side JavaScript ... JavaScript Astro Qwik NEW The New Stack • Saturday, March 9, 2024 How to Build Embed Components with Astro, Qwik and StackBlitz Paul Scanlon shows how to use the StackBlitz JavaScript SDK, in this case to embed StackBlitz projects in an Astro websi... JavaScript Astro Qwik StackBlitz NEW The New Stack • Thursday, February 29, 2024 How to Build Site Search with Astro, Qwik and Fuse.js How to build a site search using Astro’s content collections, static endpoints and Qwik’s Astro integration with Fuse.js... JavaScript Astro Qwik Fuse.js NEW The New Stack • Saturday, February 17, 2024 JavaScript on Demand: How Qwik Differs From React Hydration Paul Scanlon explains resumability, Qwik’s approach to solving the beastly client-side JavaScript problem, and how it di... JavaScript React Qwik NEW Contentful • Wednesday, February 7, 2024 Simple data visualization using Astro and Contentful In this post I’ll show you how I created a time series chart to display tag usage from blog posts published on my site p... Astro JavaScript Contentful NEW The New Stack • Wednesday, January 24, 2024 Take a Qwik Break from React with Astro Paul Scanlon compares React to Qwik using several examples (code included). He concludes that Qwik is worth exploring as... Astro JavaScript React Qwik NEW SitePoint • Thursday, January 18, 2024 Brighten Up Your Astro Site with KwesForms and Rive In this article, I’ll show you how to add KwesForms to your Astro site and then bring the form to life using custom even... Astro Rive KwesForms JavaScript NEW The New Stack • Friday, December 15, 2023 Recreating Shopify’s BFCM Globe Using react-globe.gl Developer Paul Scanlon shows how to recreate Shopify's 3D Thanksgiving globe, using a React component for globe data vis... JavaScript React three.js NEW SitePoint • Thursday, November 30, 2023 How to Create Animated GIFs from GSAP Animations In this article, I’m going to explain how you can convert animations created using GSAP into animated GIFs using modern-... GSAP modern-gif NEW The New Stack • Thursday, November 23, 2023 How Qwik’s Astro Integration Beats Both React and Vanilla JS Paul Scanlon tests Qwik with Astro, and finds it's the best of both worlds — lighter than React and less verbose than Va... Astro JavaScript React Qwik NEW The New Stack • Tuesday, November 21, 2023 I’m in an Open Relationship with Remix Paul Scanlon takes the Silicon Valley ethos perhaps a little too far. He's in an open relationship with Remix, but swear... React Remix Vite Op-ed NEW The New Stack • Monday, November 6, 2023 How to Build a Server-Side React App Using Vite and Express A demo of server-side rendering and server-side data fetching without using a framework — showing what React-powered fra... React Vite Express NEW The New Stack • Wednesday, November 1, 2023 SPAs and React: You Don’t Always Need Server-Side Rendering The React docs suggest picking one of the popular React-powered frameworks that support server-side rendering (SSR) — bu... React Vite NEW The New Stack • Tuesday, October 24, 2023 How to Use Astro with a Sprinkling of React Here's how to use Astro to incrementally adopt a “reduced JavaScript” approach to building websites. No more refactoring... Astro React Netlify NEW Neon • Tuesday, October 3, 2023 Roll Your Own Analytics With Astro, Vercel Edge Functions and Neon In this post, I’ll explain how you can “roll your own” version of Google Analytics using Astro, Vercel Edge Functions an... Astro Edge Functions Neon PostgreSQL NEW Smashing Magazine • Tuesday, September 19, 2023 Getting Started With Neon Branching Branches are a really nice (and safe) way to configure or reconfigure your database without fear of screwing up the prod... Neon Edge Functions NEW Neon • Tuesday, September 19, 2023 How to use Postgres at the Edge A closer look at how to use Neon's serverless driver with Vercel Edge Functions. In this post, I’d like to introduce Neo... Neon Edge Functions PostgreSQL NEW The New Stack • Saturday, June 17, 2023 How to Create a Multi-Region Node.js Lambda API In this post I’m going to show you how to build a multi-region Node.js Lambda API using Serverless Framework and pair it... Serverless CockroachDB AWS Lambda PostgreSQL NEW Cockroach Labs • Wednesday, May 17, 2023 The Art of Data Residency and Application Architecture In this post Rob and Paul explain how they built Silo, a fully functioning multi-region Next.js application combining Co... Next.js React React Query Tailwind CockroachDB AWS Lambda PostgreSQL NEW Cockroach Labs • Thursday, April 6, 2023 What is the CockroachDB Cloud API and why should you use It? In this post you’ll learn about the CockroachDB Cloud API and how I’ve used it to create an application Dashboard with N... Next.js React React Query Tailwind NextAuth CockroachDB NEW The New Stack • Sunday, March 19, 2023 The Distance from Data to You in Edge Computing How does data transfer work between the browser, the server, and the database? You may be surprised at the distances tha... Next.js Serverless Functions SSR React JavaScript AWS Lambda Serverless PostgreSQL NEW Smashing Magazine • Tuesday, March 7, 2023 How To Create Dynamic Donut Charts With TailwindCSS And React In this article, Paul Scanlon shares a super lightweight approach to creating a Donut chart using conic-gradient(). Ther... HTML JavaScript React Tailwind CSS SVG NEW Cockroach Labs • Friday, February 17, 2023 Converting Cloud Provider Regions Into Country Flags Learn how Paul created an Open-source JavaScript utility package to help convert Cloud Provider Region codes, into real ... JavaScript CockroachDB NEW Smashing Magazine • Thursday, February 16, 2023 Putting Gears In Motion: Animating Cars With HTML And SVG SVG <animateMotion> provides a way to define how an element moves along a motion path. In this article, Paul Scanl... HTML SVG NEW Gatsby • Wednesday, November 16, 2022 What is Gatsby's Valhalla Content Hub? Welcome to the Gatsby 2022 Glow Up! (thanks to bytes.dev for coining that phrase!) This post is about how I've used Gats... Gatsby Remix NEW Gatsby • Monday, November 14, 2022 How to Use Function Props with Gatsby's Slice API As good as the Slice API is, it does come with one or two restrictions. To be clear, these are by design rather than an ... Gatsby React NEW Gatsby • Tuesday, November 8, 2022 Gatsby 5 Upgrade. Say No to YOLO In this post Paul explains how he upgraded paulie.dev to Gatsby 5 and is now experiencing ~47% faster build times! ... Gatsby React NEW The New Stack • Monday, October 17, 2022 How to Use Google Sheets as a Database with React and Serverless Functions In this tutorial I'll be explaining how to use Google Sheets as a database, to store the results of a user poll. I've us... Gatsby Next.js Serverless Functions React JavaScript Tailwind NEW The New Stack • Saturday, October 8, 2022 How to Build SVG Line Charts with React, SSR and Tailwind CSS A tutorial on how to roll your own SVG Line Charts in React using Server-side rendering, with either Next.js or Gatsby. ... Gatsby Next.js Serverless Functions SSR React JavaScript SVG Tailwind NEW Smashing Magazine • Tuesday, September 20, 2022 What's New In Gatsby 2022? Gatsby has evolved quite dramatically in the last two years. In this article, Paul Scanlon explains what Gatsby can do t... Gatsby Serverless Functions SSR React JavaScript MDX Tailwind NEW Contentful • Tuesday, July 5, 2022 Building Rise of the Robots with Gatsby and Contentful Hi there! I recently built Rise of the Robots using Gatsby + Rive to demonstrate how Jamstack creativity and performance... Gatsby React Contentful Rive Tailwind NEW Gatsby • Monday, May 23, 2022 Building Rise of the Robots I’d like to Introduce Rise of the Robots. 🤖 A Gatsby + Rive + Contentful powered creative, performant, and accessible d... Gatsby React Contentful Rive Motion Graphics Tailwind NEW Gatsby • Wednesday, April 6, 2022 How to Migrate from Netlify Functions to Gatsby Serverless Functions on Gatsby Cloud In this post I'll explain how to migrate from Netlify Functions hosted on Netlify to Gatsby Serverless Functions hosted ... Gatsby React Serverless Functions Gatsby Cloud NEW Gatsby • Thursday, March 31, 2022 How to Add Custom Fonts to Gatsby Using methods outlined in this post I'll be demonstrating how to add custom fonts to a Gatsby site in a more performant ... Gatsby React NEW Gatsby • Wednesday, March 23, 2022 How to Add Google Analytics gtag to Gatsby Using Partytown 🎉 On Wednesday Mar 2nd 2022 I watched Ersin Akinci's talk at GatsbyConf: Improve Your Lighthouse Score with Partytown and ... Gatsby React JavaScript Partytown Google Analytics NEW Gatsby • Sunday, January 23, 2022 Performance Optimization for three.js Web Animations In this post I'm going to be discussing how to work with JavaScript animation libraries without negatively impacting you... Gatsby React three.js react-three-fiber NEW Gatsby • Thursday, January 6, 2022 Building GatsbyConf 2022 Hello! Paul here and I've been given a new assignment! I've been tasked with building the new GatsbyConf 2022 site - yik... Gatsby React three.js react-three-fiber Contentful Tailwind NEW Gatsby • Friday, December 17, 2021 Fetch Data from the Unsplash API and render using DSG Learn how to use Gatsby's latest page rendering method DSG (Deferred Static Generation) to defer the creation of pages a... Gatsby React DSG JavaScript Tailwind NEW Gatsby • Thursday, December 9, 2021 Fetch data from the New York Times API and render using SSG As I'm sure you know, Gatsby is absolutely brills for statically generating web pages using any type of data from any ki... Gatsby React SSG JavaScript Tailwind NEW Gatsby • Sunday, December 5, 2021 Fetch data from the US National Weather Service API and render using SSR As you may have heard, the latest release of Gatsby, Gatsby 4 now supports SSR (Server Side Rendering) 🥳 This new addit... Gatsby React SSR JavaScript Tailwind NEW Gatsby • Saturday, December 4, 2021 Become a Data Champion with Gatsby Data is hard right? I think so too, and with Gatsby there's more than one way to boil that egg so in this series of blog... Gatsby React JavaScript Tailwind NEW Gatsby • Thursday, December 2, 2021 Gatsby Plugin Not Working, But Why? I know where you're coming from and understand the frustration, so here's my top tips that might make using Gatsby plugi... Gatsby React Gatsby Plugins NEW Gatsby • Monday, November 22, 2021 Content Querying with Gatsby + Contentful In this post Paul explains how you can make use of Gatsby's useStaticQuery hook to query different kinds of Contentful d... Gatsby React NEW Gatsby • Thursday, November 18, 2021 Deploy4Swag - Use the best Gatsby ever to get free goodies! Hello, good morrow and good day! Paul here and I'm back with another super, smashing, great, Gatsby swag giveaway! ... Gatsby React NEW Gatsby • Monday, November 15, 2021 A Quick Start Guide To Gatsby and Contentful If you're looking to build a website using Gatsby and Contentful you've come to the right place. In this guide you'll ma... Gatsby React Contentful NEW Gatsby • Tuesday, November 2, 2021 How To Use The Contentful Rich Text Field with Gatsby Contentful's Rich Text Editor provides content creators with powerful text editing capabilities via the use of Contentfu... Gatsby React Contentful NEW Gatsby • Thursday, October 28, 2021 Gatsby FuncJam `21 - The Winners From August through September Gatsby ran the internet's func'y-est ever community competition: FuncJam '21 -- And here a... Gatsby Serverless Functions React NEW Smashing Magazine • Tuesday, October 19, 2021 Building An API With Gatsby Serverless Functions In this tutorial, Paul Scanlon explains how to build an API by using Gatsby Serverless Functions and what you need to ke... Gatsby Serverless Functions React NEW Smashing Magazine • Friday, September 17, 2021 Monetize Open-Source Software With Gatsby Serverless Functions And Stripe Gatsby Serverless Functions provide front-end developers a way to write and use server-side code without the hassle of m... Gatsby Serverless Functions Storybook Stripe MDX Embed Motion Graphics NEW Smashing Magazine • Monday, July 26, 2021 Gatsby Serverless Functions And The International Space Station Gatsby recently announced the launch of “functions”. In this article, Paul Scanlon explains how to get the current locat... Gatsby Serverless Functions React three.js react-three-fiber NEW Gatsby • Wednesday, July 7, 2021 How We Made the Gatsby 500 Bottles Giveaway I was keen to explore how Gatsby + Shopify might be adopted in a more incremental way. To test the water in a way that m... Gatsby Serverless Functions React three.js react-three-fiber NEW Gatsby • Thursday, April 15, 2021 Gatsby Cloud - Better, Faster... Greener? Gatsby sites are optimized to be smaller, sleeker and faster. When built and deployed in Gatsby Cloud they also use fewe... Gatsby React NEW Gatsby • Tuesday, April 13, 2021 MDX Embedded Images with the All-New Gatsby Image Plugin A gatsby-plugin-mdx and gatsby-plugin-image demo, taking a deep dive into MDX frontmatter and how it can be used to stor... Gatsby React NEW Gatsby • Friday, April 9, 2021 Getting Started with Gatsby Source WordPress - Choose Your Own Adventure A step by step guide to setting up your first Gatsby + WordPress website using gatsby-source-wordpress -- choose your ow... Gatsby React NEW Gatsby • Thursday, April 1, 2021 Shaping the Future of Headless WordPress Like many devs, Paul Scanlon avoided WordPress projects whenever possible — until he tried Gatsby’s new WordPress source... Gatsby React NEW Gatsby • Friday, March 12, 2021 Voices of Gatsby - Looking for The Lighthouse Gatsby believes in cultivating inclusion and elevating the many members of our diverse community. Our new Voices of Gats... Gatsby Op-ed NEW Gatsby • Thursday, January 28, 2021 Bottoms Up: Gatsby File System Route API + Bums = BumHub BumHub: A silly idea, butt a firm working process. Hello, I’m Paul and for my Silly Site Challenge I created BumHub: “Th... Gatsby React GitHub REST NEW Storybook • Thursday, December 10, 2020 Storybook Addon - MDX Embed The MDX Embed addon allows you to embed 3rd party media content such as YouTube videos, Tweets, Instagram posts, Egghead... Storybook React MDX NEW Gatsby • Tuesday, October 13, 2020 Hacktoberfest Spotlight A More ‘Polite’ MDX Embed Plugin Enabling the community to easily write and release plugins for use with Gatsby is an absolute hammer of an idea. It give... Gatsby React MDX NEW Gatsby • Tuesday, September 1, 2020 Gatsby Cloud is Your (Good) Friend If you’re a Gatsby open source enthusiast you’re probably aware of Gatsby Cloud. But W.T.Flip actually is Gatsby Cloud, ... Gatsby Gatsby Cloud Gatsby Themes React Shopify NEW Netlify • Thursday, July 16, 2020 Add Playful Animated SVG Reactions to a Gatsby Blog In this blog post I'm going to discuss how to add user reactions to your Gatsby blog posts using a fun, open-source Reac... Gatsby React GSAP SVG NEW Gatsby • Thursday, May 21, 2020 Gatsby Recipes, What's All the Fuss About? Gatsby Recipes were introduced just last month, as a new tool to automate common site building tasks. A Gatsby Recipe is... Gatsby Gatsby Recipes React NEW CSS Tricks • Thursday, May 21, 2020 Roll Your Own Comments With Gatsby and Fauna If you haven’t used Gatsby before have a read about why it’s fast in every way that matters, and if you haven’t used Fau... Gatsby React Fauna NEW Gatsby • Monday, April 20, 2020 Challenge Accepted, One Developer, 10 Projects, 100 Days of Gatsby Paul Scanlon took the #100DaysOfGatsby challenge quite literally: Each day for 100 days, he worked in and around the Gat... Gatsby React