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…

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…

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…

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…

Gatsby.js & Next.js Starters

View our collection of website templates for Gatsby.js and Next.js. Gatsby is a static site generator which uses modern web technologies such as React.js, Webpack, and GraphQL. Next.js is a framework for server side rendered React apps and also generates static websites.

Learn JavaScript and React

Here are some of my favorite courses for learning JavaScript and React. I have personally purchased each of these and found them extremely helpful when I was learning JavaScript and React. Check out the resources page for more.

About Code Bushi

Code Bushi aims to provide web development resources, techniques, and trends to help guide your coding journey. Modern web development is constantly changing and it can be a struggle trying to keep up with the latest standards and best practices. With Code Bushi, I hope to highlight some interesting tools and resources for the modern web.

Code Bushi was started by me, Hunter Chang, as a way to document and share my coding experiences. I've been a professional web developer and designer for over 8 years and I still love discovering and creating cool things on the web.