Skip to main content
View plugin on GitHub
See starters using this

RENAMED TO: gatsby-source-goodreads

gatsby-plugin-goodreads

Source plugin for pulling your read books into Gatsby from Goodreads API.

How to use

// In your gatsby-config.js
module.exports = {
  plugins: [
    {
      resolve: "gatsby-plugin-goodreads",
      options: {
        developerKey: "IAmDeveloperKey",
        goodReadsUserId: "IAmGoodreadsUserId",
        userShelf: "to-read" //optional
      }
    }
  ],
}

Plugin options

  • developerKey: Use your Goodreads developer API key
  • goodReadsUserId: The Goodreads user ID of the user to get data for.
  • userShelf: OPTIONAL. read, currently-reading, to-read, etc.

How to query your Goodread data using GraphQL

Below is a sample query for fetching the shelf’s books.

query shelfList {
  allGoodreadsShelf {
    edges {
      node {
        id
        shelfName
        reviews {
          reviewID
          rating
          votes
          spoilerFlag
          spoilersState
          dateAdded
          dateUpdated
          book {
            bookID
            textReviewsCount
            isbn
            isbn13
            uri
            title
            titleWithoutSeries
          }
        }
      }
    }
  }
}