Intro to React's useReducer Hook

We dive into React's useReducer hook and see how we can use it to manage complex state. We first compare useState and useReducer and slowly add on to our reducer function to make it more flexible. Key Takeaways From The Video: 2:50 - Implement a…

The Right Way To Add Tailwind CSS to Gatsby with Purge CSS

In this video, we look at the right way to add Tailwind CSS to a Gatsby site. First we install Tailwind CSS and make a button with its utility classes. During the and we view the page source to see that all the Tailwind CSS classes have been…

Podcasts To Inspire You About Web Development & Entrepreneurship

Here's a list of my favorite podcasts and episodes that I have discovered over the years. Most of these are interviews with various makers and founders because I find it very inspiring to hear their background stories. It's also a great way to get…

Gatsby.js Global State w/ React Context & useReducer

In this video, we'll explore Global State and how to make it persist between pages when working with a Gatsby.js website. We'll first create our global state using React's useReducer hook and Context API. I'll then show you how to incorporate our…

Exercises and Tips for More Advanced Web Development

This post is aimed towards the beginner web developer who is looking to take their dev skills to the next level. Maybe you've become pretty comfortable with the basics of HTML, CSS, and JavaScript and are looking for ways to advance your knowledge…

Gatsby.js Themes Introduction

When making a Gatsby.js site, there are two main ways to start. You could start from scratch by just installing and . Then, based on what your needs are, you would add in various Gatsby plugins and other npm packages for your project. Another…

Custom Gatsby.js Source Plugin

One of the greatest superpowers of Gatsby.js is its ability to use data and content from a variety of sources, such as Wordpress, Markdown files, or APIs. During the build process, Gatsby will query for the data and turn it into content for a static…

Fetching Dynamic Data with Gatsby.js

Gatsby.js is more than just an awesome static site generator, it can also fetch data dynamically like you would with Create React App. We explore what that dynamic data fetching looks like and peak at the compiled code to see the difference between…

Higher Order Reducers with React Hooks

When managing React state with the new hook, you may find that there are commonly repeated action types and logic in your reducer functions. Here is an easy way of using higher order functions to make your custom hooks and reducer logic more…

Optimizations with React.memo, useCallback, and useReducer.

With the recent release of React Hooks, I've switched over to using more and more functional components in my React code. While reading the React docs, I kept seeing mentions of being "more performant" than . I was unclear on why so I did a deep…

An Introduction To Using Gatsby Image & Gatsby.js V2

(Updated: Jun. 30, 2019)

** NEW Video tutorial on Gatsby Image available on YouTube! https://www.youtube.com/watch?v=kOrohVsq_kI ** Gatsby.js V2 was recently launched and there have been a few small changes to how Gatsby Image is implemented. Gatsby Image is a React…

Progressive Web Apps with React & Preact.js

Progressive Web Apps (PWA) have come onto the scene in a big way and with more mobile browsers supporting them, they might very well be the future of web applications. A PWA is actually pretty simple, and virtually any website or application can be…

Vue.js and Chart.js Weather API Example

Recently I was asked to add some fancy charts and graphs to an existing Wordpress website. In the past, my weapon of choice would be either jQuery or Angular.js for a task such as this, but I decided to try the popular Vue.js. Vue.js is a progressive…

Siteground vs. Hostgator for Wordpress Hosting

For as long as I can remember, I've been hosting my Wordpress sites with Hostgator.com without any major issues. They were the most popular option for Wordpress hosting at the time and their prices were very reasonable. Recently a friend of mine…

GraphQL API with React.js

Many new APIs are moving away from REST and embracing the change to GraphQL. GitHub's API V4 is one example of this, and that's because GraphQL offers a lot more flexibility when querying for data. This tutorial will go over how to incorporate and…

Form Handling with Gatsby.js V2 and Netlify

(Updated: Aug. 12, 2019)

Having a working contact form is a basic requirement for many websites, but setting one up with a static site can be tricky. If you're hosting your website with Netlify (which you should be), you can utilize their awesome form handling feature for…

Hosting Your Static Website For Free

So you've just put the finishing touches on your static website and it's time to share it with the world. The good news is, there are plenty of great hosting solutions out there to help simplify the process. Deploying a modern static site has become…

Creating a Modern Static Website Portfolio

If you're a web developer or someone who's looking to get into the field, having a digital portfolio can be extremely valuable. A personal website is a fantastic way to showcase your work and help you get noticed. Fortunately, getting a website up…

Gatsby.js with Contentful Content Management

One of the most magical aspects of Gatsby.js is its ability to pull in data from a wide variety of sources. Leveraging the power of GraphQL, you can populate a Gatsby website with local markdown files, a CSV file, a MongoDB database, or from a list…

React YouTube Video Background

The first time I saw a video background on a website, I became obsessed. I thought parallax backgrounds were cool, but this was on a different level! Most video backgrounds use the video tag, paired with a small video file that's optimized for the…

Featured Blog Images In Gatsby.js

(Updated: Apr. 08, 2018)

With Gatsby.js, it's pretty easy to get a static site up and running with one of their starter templates. The (https://github.com/gatsbyjs/gatsby-starter-blog) demonstrates how a Gatsby static site can function with blog posts written in markdown…

Using Gatsby Image V1

This demo is for Gatsby.js V1. For a newer demo that's updated for Gatsby.js V2, please check out Using Gatsby Image V2. With the rise of mobile browsing, the optimization of images on a website is more important than ever. If a site is image heavy…

From Wordpress to Gatsby.js

For the past 8+ years, my go-to weapon of choice when developing a website has been WordPress. According to a recent statistic by W3Techs, about 29% of all websites on the internet are built using this popular CMS. That's a HUGE number, and for…