A GatsbyJS plugin to pull booklists from Goodreads.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
.npmignore
LICENSE
README.md
gatsby-node.js
index.js
package-lock.json
package.json

README.md

gatsby-source-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-source-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 goodRead {
  goodreadsShelf {
    id
    shelfName
    reviews {
      reviewID
      rating
      votes
      spoilerFlag
      dateAdded
      dateUpdated
      book {
        bookID
        isbn
        isbn13
        textReviewsCount
        uri
        link
        title
        titleWithoutSeries
        imageUrl
        smallImageUrl
        largeImageUrl
        description
      }
    }
  }
}