Recently, I used Apollo Client local cache on a project. Like most features of Apollo Client, it’s powerful but complicated. For my project, I wanted to save a blob of data that represents the current state of a page. This blob would allow a user to navigate away from a page and come back later […]
In server-side rendering (SSR), the client and server don’t always communicate perfectly. Recently, we faced a bit of a challenge configuring our app to display adaptive React components smoothly.
I’ve been working on a project where we wanted to implement a set of filters for a list of records on one page of our React web app and store the selected filters as state in the URL. We chose this approach so we could link directly to the page with specific filters selected. Adding […]
Many people think of React and Redux as inseparable, despite the Redux author’s own advice to avoid using it “until you have problems with vanilla React.”
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 […]
Recently, I needed to implement an unusual feature for a React front end: a reusable component that displays server-rendered pages from a legacy version of the same app. If you’ve found yourself in a similar situation, I hope this guide will make life easy for you!
During my introduction to reactive programming, I was shown a giant reactive codebase and told, “Everything is a signal.” Of course, my first question was, “What is a signal?” In my opinion, this question is the sticking point for many reactive tutorials and explanations. Is a pipeline a good analogy for a signal? Maybe an […]
On a current project, we wanted to hoist page state out of a useReducer hook into a query string of the URL. We saw this as a continual need for the project going forward, so we wanted a convenient way to build new pages that stored their state in the URL’s query string. To do […]
Input fields are some of the most fundamental aspects of any application, and front-end validation is expected these days. Unfortunately, doing even simple validation is often more complicated than many clients expect.
On a recent project, we needed to support multi-level tab bar navigation within our application. With multiple variations of tab bars, each page needed to know which tabs to show. We found that TypeScript offered a good solution.