Ramblings on React, TypeScript, Design Systems, frontend things, and occasionally other stuff by .

Tools for an evolving Design System

Design Systems evolve over time. What are some tools that can help make system-wide changes?

Decoupling a component's style from it's semantic meaning

An overview using the "as" prop pattern to control a component's rendered element

Typescript Explained In Javascript: Conditional Types

Exploring TypeScript's Conditional Types with JavaScript

Typescript Explained In Javascript: Mapped Types

Exploring TypeScript's Mapped Types with JavaScript

Typescript explained in Javascript: extends

Exploring TypeScript's extends keyword using JavaScript.

TypeScript explained in JavaScript: keyof

Exploring TypeScript's keyof operator using JavaScript.

Make more things into Components

Encapsulating more logic and concepts into components.

Named Parameters in JavaScript

A quick look at how to use named parameters and the benefits.

Design System Principles

General principles for building and maintaining a design system.

The Hard Thing About Simple Words

A hard thing explained using only the ten hundred words people use the most often.

React Concurrent Mode with TypeScript

Getting started with React Concurrent Mode and Suspense with TypeScript.

Creating a custom transform for jscodeshift

Using a jscodeshift transform to automatically update Font Awesome imports to enable tree shaking.

Check for missing dependencies with yarn and webpack

A plugin to check if there are missing or incorrect packages installed with yarn as a webpack plugin

Contributing to DefinitelyTyped for the first time

A guide to add missing type definitions to the DefinitelyTyped repository

Server side rendering icons with Font Awesome

Avoid Font Awesome flickering large icons on initial load with server side rendering

Code splitting with webpack and TypeScript

An overview of code splitting with webpack, in a TypeScript and React app

Tree Shaking Font Awesome Icons

An overview of tree shaking dead code with webpack and a specific example with Font Awesome

Separating webpack from the Rails Asset Pipeline

An approach for decoupling a webpack build process from the Rails Asset Pipeline build process

Measuring Frontend Performance (in modern browsers)

The supported browser APIs and polyfills for measuring frontend performance.

Techniques for effectively using Object Factories for Testing

A few patterns for effectively using object factories for testing.

Hello Gatsby, Goodbye Medium

Moving my personal content to skovy.dev with Gatsby.

Creating a CLI with TypeScript

The tooling and steps to create a command-line npm package written in TypeScript.

Generating TypeScript definitions for CSS Modules using SASS

Tooling and approaches for integrating CSS Modules, SASS, and TypeScript to add additional type-safety when importing the styles.

Migrating a design system to a dedicated repository

An overview of the benefits, general patterns, and tooling for maintaining a design system in its own repository.

Introducing Rubber Ducking: A Podcast about all things “frontend”

Chris Schmitz and I are excited to share Rubber Ducking, a podcast about React, TypeScript, CSS, Design Systems, GraphQL and anything related.

Using React Hooks with TypeScript

useTypeScript(); A few quick examples of what it will look like to use Hooks with TypeScript.

Using Code Generators to Share and Document Best Practices

Code generators are a great way to automate the small repetitive decisions and save time among many other advantages.

Component Dot Notation with TypeScript

The advantages of using component dot notation (accessing sub-components from a top-level component), a few gotchas and some examples.

Object factories for testing in TypeScript

Introducing cooky-cutter, an object factory package written to be type-safe with TypeScript.

Writing maintainable styles and components with CSS Modules

An overview of CSS Modules and some of the advantages the styling approach can provide.

Thoughts after creating my first React app with ReasonML

My initial impressions after making a small web app written in ReasonML.

Scaling data selection on the client

What is a selector? How do they help 'scale' querying data on the client?

A Simple Blog with GraphQL, Apollo, React Router & styled-components.

An exploration into some of the other trending technologies in the JavaScript and React ecosystem today through a small web app.