-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgatsby-config.js
executable file
·114 lines (111 loc) · 3.58 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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
require(`dotenv`).config()
const shouldAnalyseBundle = process.env.ANALYSE_BUNDLE
module.exports = {
siteMetadata: {
title: `Dan In Progress`,
author: {
name: `@DanInProgress`,
summary: `Improving as I go`,
},
description: `Dan In Progress - Improving as I go.`,
siteUrl: `https://daninprogress.com`,
social: {
github: `daninprogress`
}
},
plugins: [
`gatsby-plugin-react-helmet`,
`gatsby-plugin-image`,
{
resolve: `gatsby-source-filesystem`,
options: {
path: `${__dirname}/content/blog`,
name: `blog`,
},
},
{
resolve: `gatsby-source-filesystem`,
options: {
name: `images`,
path: `${__dirname}/src/images`,
},
},
{
resolve: `gatsby-transformer-remark`,
options: {
plugins: [{
resolve: `gatsby-remark-images`,
options: {
maxWidth: 630,
},
},
{
resolve: `gatsby-remark-mermaid`,
options: {
mermaidOptions: {
theme: "neutral"
}
}
},
`gatsby-remark-prismjs`,
`gatsby-remark-copy-linked-files`,
`gatsby-remark-smartypants`,
],
},
},
`gatsby-transformer-sharp`,
`gatsby-plugin-sharp`,
`gatsby-plugin-sitemap`,
{
resolve: `gatsby-plugin-feed`,
options: {
query: `
{
site {
siteMetadata {
title: title
description
siteUrl
site_url: siteUrl
}
}
}
`,
feeds: [{
serialize: ({ query: { site, allMarkdownRemark } }) =>
allMarkdownRemark.nodes.map((post) => {
console.log(post)
const url = site.siteMetadata.siteUrl + post.fields.slug
const content = `<p>${post.excerpt}</p><div style="margin-top: 50px; font-style: italic;"><strong><a href="${url}">Keep reading</a>.</strong></div><br /> <br />`
return {
title: post.frontmatter.title,
date: post.frontmatter.date,
excerpt: post.excerpt,
url,
guid: url,
custom_elements: [{ "content:encoded": content }],
}
}),
query: `
{
allMarkdownRemark(sort: {fields: frontmatter___date, order: DESC}) {
nodes {
frontmatter {
title
date(formatString: "MMMM D, YYYY")
}
excerpt
fields {
slug
}
}
}
}
`,
output: `rss.xml`,
title: "Dan In Progress - Improving as I go"
}, ],
},
}
],
}