Book Image

Elevating React Web Development with Gatsby

Book Image

Elevating React Web Development with Gatsby

Overview of this book

Gatsby is a powerful React static site generator that enables you to create lightning-fast web experiences. With the latest version of Gatsby, you can combine your static content with server-side rendered and deferred static content to create a fully rounded application. Elevating React Web Development with Gatsby provides a comprehensive introduction for anyone new to GatsbyJS and will help you get up to speed in no time. Complete with hands-on tutorials and projects, this easy-to-follow guide starts by teaching you the core concepts of GatsbyJS. You'll then discover how to build performant, accessible, and scalable websites with the GatsbyJS framework. Once you've worked through the practical projects in the book, you'll be able to build anything from a personal website to large-scale applications with authentication and make your site rise through those SEO rankings. By the end of this Gatsby development book, you'll be well-versed in every aspect of the tool's performance and accessibility and have learned how to build client websites that your users will love.
Table of Contents (18 chapters)
1
Part 1: Getting Started
7
Part 2: Going Live
12
Part 3: Advanced Concepts

Creating an SEO component

Every site on the web has meta tags. Meta tags are snippets of text and image content that provide a summary of a web page. This data gets rendered in the browser whenever someone shares your site or when it appears within a search engine. Let's create an SEO component so that we can have rich previews that entice users to visit our site:

  1. Install the necessary dependencies:
    npm i react-helmet-async gatsby-plugin-react-helmet-
    async

    react-helmet-async is a dependency that manages all the changes that are made to your document head.

  2. Include the gatsby-plugin-react-helmet-async plugin in your gatsby-config.js file:
    module.exports = {
      // rest of config
      plugins: [
        `gatsby-plugin-react-helmet-async`,
    // other plugins
      ]
    }

    This plugin updates your gatsby-browser.js file so that it wraps the root element in HelmetProvider, like this (you do not need to do this step yourself):

    import React from "react";
    import { HelmetProvider } from...