garden.canalswans.net/gatsby-config.js

140 lines
3.8 KiB
JavaScript
Executable File

module.exports = {
siteMetadata: {
title: `canalswans.commoninternet.net`,
titleTemplate: `%s`,
description: `an online-retail-conglomerate maintained by Max Fowler`,
author: `Max Fowler`,
image: `/img/triangles.png`,
siteUrl: `http://canalswans.commoninternet.net`,
twitterUsername: '@notplants'
},
plugins: [
'gatsby-plugin-sass',
`gatsby-plugin-react-helmet`,
{
resolve: `gatsby-source-filesystem`,
options: {
name: `static`,
path: `${__dirname}/static`,
},
},
`gatsby-transformer-sharp`,
`gatsby-plugin-sharp`,
{
resolve: `gatsby-plugin-manifest`,
options: {
name: `gatsby-starter-default`,
short_name: `starter`,
start_url: `/`,
background_color: `#663399`,
theme_color: `#663399`,
display: `minimal-ui`,
// icon: `src/images/gatsby-icon.png`, // This path is relative to the root of the site.
},
},
{
resolve: `gatsby-source-filesystem`,
options: {
path: `${__dirname}/static/content/blog`,
name: `blog`,
},
},
{
resolve: `gatsby-source-filesystem`,
options: {
path: `${__dirname}/static/content/zines`,
name: `zines`,
},
},
{
resolve: `gatsby-transformer-remark`,
options: {
plugins: [
`gatsby-remark-copy-linked-files`,
{
resolve: `gatsby-remark-images`,
options: {
// It's important to specify the maxWidth (in pixels) of
// the content container as this plugin uses this as the
// base for generating different widths of each image.
maxWidth: 750,
backgroundColor: 'transparent',
},
},
],
},
},
`gatsby-transformer-sharp`,
`gatsby-plugin-sharp`,
{
resolve: `gatsby-plugin-mdx`,
options: {
extensions: [`.mdx`, `.md`],
gatsbyRemarkPlugins: [
{
resolve: `gatsby-remark-images`,
options: {
maxWidth: 750,
backgroundColor: 'transparent',
},
},
],
},
},
{
resolve: `gatsby-plugin-feed`,
options: {
query: `
{
site {
siteMetadata {
title
description
siteUrl
site_url: siteUrl
}
}
}
`,
feeds: [
{
serialize: ({ query: { site, allMarkdownRemark } }) => {
return allMarkdownRemark.edges.map(edge => {
return Object.assign({}, edge.node.frontmatter, {
description: edge.node.excerpt,
date: edge.node.frontmatter.date,
url: site.siteMetadata.siteUrl + edge.node.frontmatter.path,
guid: site.siteMetadata.siteUrl + edge.node.frontmatter.path,
custom_elements: [{ "content:encoded": edge.node.html }],
})
})
},
query: `
{
allMarkdownRemark(
sort: { order: DESC, fields: [frontmatter___date] },
filter: { frontmatter: { draft: { ne: "true" }, type: { eq: "blog" }} }
) {
edges {
node {
excerpt
html
frontmatter {
title
path
date
}
}
}
}
}
`,
output: "/rss.xml",
title: "Canal Swans RSS",
},
],
},
},
],
}