A Gatsby source plugin to get contributors per file for a Github repo
npm install --save @adobe/gatsby-source-github-file-contributors
// In gatsby-config.js
plugins: [
{
resolve: `@adobe/gatsby-source-github-file-contributors`,
options: {
pages: {
root: '', // root of the page paths (below) in the Github repo
paths: ['src/pages'], // relative path of the pages from the config
extensions: ['md'] // page extensions to filter for
},
repo: {
token: process.env.REPO_GITHUB_TOKEN, // Github Personal Access Token
owner: process.env.REPO_OWNER, // user or org name
name: process.env.REPO_NAME,
branch: process.env.REPO_BRANCH, // defaults to 'main'
default_branch: process.env.REPO_DEFAULT_BRANCH // defaults to 'main'
}
}
}
];
GraphQL
{
allGithub {
nodes {
repository
branch
default_branch
root
}
}
allGithubContributors {
nodes {
contributors {
date
login
name
}
path
}
}
}
Without a Github Personal Access Token, your requests will be rate-limited.
The GraphQL API v4 rate limit is 5,000 points per hour when authenticated, and 60 points per hour when anonymous.
The number of points in a GraphQL API call is returned in the metadata for the call.
Contributions are welcome! Read the Contributing Guide for more information.
This project is licensed under the Apache V2 License. See LICENSE for more information.