Database tables rarely stay the same over the course of a project. We often need to add tables, add or rename columns, or break up a table to support evolving project demands or updated domain modeling. Migrating existing data correctly is not always trivial. Here are two scenarios I ran into recently on a project […]
On a recent project, we used Create React App (CRA) as a starting point. It provides a lot of features out of the box that make starting a new React project a breeze, and it has a community-driven update path. I also wanted to share Typescript code between the front end and back end, something […]
Today I’ll explain how to use Apollo Client to fetch data in batches from a GraphQL endpoint and hook that data up to Infinite Loader. By the end of this post, you’ll have an (almost!) full-stack, just-in-time loading list. How did we get here? In my last few posts, I’ve explained how to: Fetch data […]
Cognito identity pools provide an easy way to enable your users to have limited access to your AWS backend. With developer authenticated identities, you can integrate Cognito into your existing authentication process. 1. Create an Identity Pool Go to the Cognito developers console and click “Manage Identity Pools,” then “Create new identity pool.” Name your […]
Visual Studio is an excellent integrated development environment (IDE), but sometimes it needs a little hand-holding. Throughout my experience with VS Code, it has never delivered on project-wide type checking and linting. Rather than getting instant feedback from my IDE, I’ve had to rely on my build process as a type checker. Type errors only […]
It can take a long time to get a full-stack React and Node.js app off the ground. Fortunately, with the addition of API Routes, Next.js offers a way to do that in just minutes.
Many web applications need to load data from servers that will be shown to users. It’s important for the UI to handle loading states while the requests are in-flight. Let’s say, for example, that we have a page that will load a user’s profile. We want to be able to show a loading message, then […]
I recently got a chance to use Phaser 3 and TypeScript to build Root Maker with my Ludum Dare team. It worked out great. Phaser is one of the best frameworks around for HTML5 game development, and it’s definitely worth checking out if you haven’t.