text: const path = require('path')
  const config = require('./data/siteConfig')
  
  module.exports = {
    siteMetadata: {
      title: config.siteTitle,
      author: config.authorName,
      description: config.siteDescription,
      ...config,
    },
    pathPrefix: config.pathPrefix,
    plugins: [
      {
        resolve: `gatsby-source-filesystem`,
        options: {
          name: 'posts',
          path: 'content/posts',
        },
      },
      {
        resolve: `gatsby-source-filesystem`,
        options: {
          name: 'pages',
          path: 'content/pages',
        },
      },
      {
        resolve: `gatsby-source-filesystem`,
        options: {
          name: 'images',
          path: 'content/images',
        },
      },
      {
        resolve: `gatsby-plugin-page-creator`,
        options: {
          path: path.join(__dirname, `src`, `pages`),
        },
      },
      {
        resolve: `gatsby-plugin-mdx`,
        options: {
          extensions: [`.mdx`, `.md`],
          defaultLayouts: {
            default: require.resolve('./src/templates/page.js'),
          },
          gatsbyRemarkPlugins: [
            {
              resolve: "gatsby-remark-embed-video",
              options: {
                width: 800,
                ratio: 1.77, // Optional: Defaults to 16/9 = 1.77
                height: 400, // Optional: Overrides optional.ratio
                related: false, //Optional: Will remove related videos from the end of an embedded YouTube video.
                noIframeBorder: true, //Optional: Disable insertion of <style> border: 0
                urlOverrides: [
                  {
                    id: 'youtube',
                    embedURL: (videoId) => `https://www.youtube-nocookie.com/embed/${videoId}`,
                  }
                ], //Optional: Override URL of a service provider, e.g to enable youtube-nocookie support
                containerClass: 'embedVideo-container', //Optional: Custom CSS class for iframe container
              }
            },
            {
              resolve: 'gatsby-remark-images',
              options: {
                maxWidth: 590,
                linkImagesToOriginal: false,
                withWebp: true,
                showCaptions: ['title'],
              },
            },
            { resolve: 'gatsby-remark-prismjs' },
            { resolve: 'gatsby-remark-responsive-iframe' },
            { resolve: 'gatsby-remark-copy-linked-files' },
            { resolve: 'gatsby-remark-smartypants' },
            { resolve: 'gatsby-remark-autolink-headers' },
          ],
        },
      },
      // Reminder (https://github.com/gatsbyjs/gatsby/issues/15486#issuecomment-509405867)
      // If you configure both gatsby-plugin-mdx and gatsby-transformer-remark to use gatsby-remark-images as a plugin, then everything works as expected.
      {
        resolve: `gatsby-transformer-remark`,
        options: {
          plugins: [
            {
              // https://www.gatsbyjs.org/packages/gatsby-remark-embed-video/
              resolve: "gatsby-remark-embed-video",
              options: {
                width: 800,
                ratio: 1.77, // Optional: Defaults to 16/9 = 1.77
                height: 400, // Optional: Overrides optional.ratio
                related: false, //Optional: Will remove related videos from the end of an embedded YouTube video.
                noIframeBorder: true, //Optional: Disable insertion of <style> border: 0
                urlOverrides: [
                  {
                    id: 'youtube',
                    embedURL: (videoId) => `https://www.youtube-nocookie.com/embed/${videoId}`,
                  }
                ], //Optional: Override URL of a service provider, e.g to enable youtube-nocookie support
                containerClass: 'embedVideo-container', //Optional: Custom CSS class for iframe container
              }
            },
            `gatsby-remark-images`
          ]
        }
      },
      `gatsby-transformer-sharp`,
      `gatsby-plugin-offline`,
      `gatsby-plugin-styled-components`,
      `gatsby-plugin-react-helmet`,
      `gatsby-plugin-sharp`,
      {
        resolve: `gatsby-plugin-google-analytics`,
        options: {
          trackingId: config.googleAnalyticsId,
        },
      },
      {
        resolve: `gatsby-plugin-manifest`,
        options: {
          name: config.siteTitle,
          short_name: config.siteTitle,
          start_url: config.pathPrefix,
          background_color: config.background_color,
          theme_color: config.theme_color,
          display: config.display,
          icon: config.icon,
        },
      },
      // https://www.gatsbyjs.org/docs/themes/converting-a-starter/#transpiling-your-theme-with-webpack
      {
        resolve: 'gatsby-plugin-compile-es6-packages',
        options: {
          modules: ['gatsby-starter-morning-dew'],
        },
      },
    ],
  }
  