text: module.exports = {
    siteMetadata: {
      title: `Inside Rafter`,
      author: `Josh Larson`,
      description: `Thoughts and discoveries from building Rafter, a serverless deployment platform.`,
      siteUrl: `https://blog.rafter.app/`,
      social: {
        twitter: `jplhomer`,
      },
    },
    plugins: [
      {
        resolve: `gatsby-source-filesystem`,
        options: {
          path: `${__dirname}/content/blog`,
          name: `blog`,
        },
      },
      {
        resolve: `gatsby-source-filesystem`,
        options: {
          path: `${__dirname}/content/assets`,
          name: `assets`,
        },
      },
      {
        resolve: `gatsby-plugin-mdx`,
        options: {
          extensions: ['.mdx', '.md'],
          // a workaround to solve mdx-remark plugin compat issue
          // https://github.com/gatsbyjs/gatsby/issues/15486
          plugins: [`gatsby-remark-images`],
          gatsbyRemarkPlugins: [
            {
              resolve: `gatsby-remark-vscode`,
            },
            {
              resolve: `gatsby-remark-images`,
              options: {
                maxWidth: 700,
              },
            },
            {
              resolve: `gatsby-remark-responsive-iframe`,
              options: {
                wrapperStyle: `margin-bottom: 1.0725rem`,
              },
            },
            {
              resolve: `gatsby-remark-copy-linked-files`,
            },
            {
              resolve: `gatsby-remark-smartypants`,
            },
            {
              resolve: `gatsby-remark-autolink-headers`,
            },
          ],
        },
      },
      `gatsby-transformer-sharp`,
      `gatsby-plugin-sharp`,
      {
        resolve: `gatsby-plugin-feed`,
        options: {
          query: `
            {
              site {
                siteMetadata {
                  title
                  description
                  siteUrl
                }
              }
            }
          `,
          feeds: [
            {
              serialize: ({ query: { site, allMdx } }) => {
                return allMdx.edges.map(edge => {
                  return Object.assign({}, edge.node.frontmatter, {
                    description: edge.node.excerpt,
                    data: edge.node.frontmatter.date,
                    url: site.siteMetadata.siteUrl + edge.node.fields.slug,
                    guid: site.siteMetadata.siteUrl + edge.node.fields.slug,
                    custom_elements: [{ 'content:encoded': edge.node.html }],
                  })
                })
              },
  
              /* if you want to filter for only published posts, you can do
               * something like this:
               * filter: { frontmatter: { published: { ne: false } } }
               * just make sure to add a published frontmatter field to all posts,
               * otherwise gatsby will complain
               **/
              query: `
              {
                allMdx(
                  limit: 1000,
                  sort: { order: DESC, fields: [frontmatter___date] },
                ) {
                  edges {
                    node {
                      fields { slug }
                      frontmatter {
                        title
                        date
                      }
                      html
                    }
                  }
                }
              }
              `,
              output: '/rss.xml',
              title: 'Inside Rafter RSS feed',
            },
          ],
        },
      },
      {
        resolve: `gatsby-plugin-manifest`,
        options: {
          name: `Inside Rafter`,
          short_name: `Inside Rafter`,
          start_url: `/`,
          background_color: `#ffffff`,
          theme_color: `#663399`,
          display: `minimal-ui`,
          icon: `content/assets/rafter-icon.png`,
        },
      },
      `gatsby-plugin-offline`,
      `gatsby-plugin-react-helmet`,
      {
        resolve: `gatsby-plugin-typography`,
        options: {
          pathToConfigModule: `src/utils/typography`,
        },
      },
    ],
  }
  