-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathgatsby-config.js
96 lines (96 loc) · 2.46 KB
/
gatsby-config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
require("dotenv").config();
const queries = require("./src/utils/algolia");
const config = require("./config");
const plugins = [
"gatsby-plugin-sitemap",
"gatsby-plugin-sharp",
{
resolve: `gatsby-plugin-layout`,
options: {
component: require.resolve(`./src/templates/docs.js`)
}
},
"gatsby-plugin-styled-components",
{
resolve: "gatsby-plugin-mdx",
options: {
gatsbyRemarkPlugins: [
{
resolve: "gatsby-remark-images",
options: {
maxWidth: 1035,
sizeByPixelDensity: true
}
},
{
resolve: "gatsby-remark-copy-linked-files"
}
],
extensions: [".mdx", ".md"]
}
},
{
resolve: "gatsby-transformer-remark",
options: {
plugins: [`gatsby-remark-reading-time`, `gatsby-remark-embed-gist`]
}
},
"gatsby-plugin-emotion",
"gatsby-plugin-remove-trailing-slashes",
"gatsby-plugin-react-helmet",
{
resolve: "gatsby-source-filesystem",
options: {
name: "docs",
path: `${__dirname}/content/`
}
},
{
resolve: `gatsby-plugin-gtag`,
options: {
// your google analytics tracking id
trackingId: config.gatsby.gaTrackingId,
// Puts tracking script in the head instead of the body
head: true,
// enable ip anonymization
anonymize: false
}
}
];
if (
config.header.search &&
config.header.search.enabled &&
config.header.search.algoliaAppId &&
config.header.search.algoliaAdminKey
) {
plugins.push({
resolve: `gatsby-plugin-algolia`,
options: {
appId: config.header.search.algoliaAppId, // algolia application id
apiKey: config.header.search.algoliaAdminKey, // algolia admin key to index
queries,
chunkSize: 10000 // default: 1000
}
});
}
module.exports = {
pathPrefix: config.gatsby.pathPrefix,
siteMetadata: {
title: config.siteMetadata.title,
description: config.siteMetadata.description,
docsLocation: config.siteMetadata.docsLocation,
ogImage: config.siteMetadata.ogImage,
favicon: config.siteMetadata.favicon,
logo: {
link: config.header.logoLink ? config.header.logoLink : "/",
image: config.header.logo
}, // backwards compatible
headerTitle: config.header.title,
githubUrl: config.header.githubUrl,
helpUrl: config.header.helpUrl,
tweetText: config.header.tweetText,
headerLinks: config.header.links,
siteUrl: config.gatsby.siteUrl
},
plugins: plugins
};