-
Notifications
You must be signed in to change notification settings - Fork 0
/
gatsby-config.js
102 lines (100 loc) · 2.66 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
require("dotenv").config();
module.exports = {
// Since `gatsby-plugin-typescript` is automatically included in Gatsby you
// don't need to define it here (just if you need to change the options)
siteMetadata: {
title: `Alvin Leung - Experience designer, Visual Designer`,
},
plugins: [
`gatsby-plugin-react-helmet`,
`gatsby-plugin-sass`,
{
resolve: "gatsby-plugin-web-font-loader",
options: {
typekit: {
// id: process.env.TYPEKIT_ID,
id: "sdz1siz",
},
// google: {
// families: ["Source Sans Pro"],
// },
},
},
// for sourcing and transforming the markdwon files
{
resolve: `gatsby-source-filesystem`,
options: {
name: `markdown-pages`,
path: `${__dirname}/src/data/projects`,
},
},
// for sourcing the playground fiels
{
resolve: `gatsby-source-filesystem`,
options: {
name: `playground-pages`,
path: `${__dirname}/static/experiment`,
},
},
// for sourcing and transforming the image files
// muted for not using the image processing
// {
// resolve: `gatsby-source-filesystem`,
// options: {
// name: `markdown-pages`,
// path: `${__dirname}/src/data/img`,
// },
// },
`gatsby-plugin-sharp`,
`gatsby-remark-images`,
{
resolve: `gatsby-plugin-mdx`,
options: {
gatsbyRemarkPlugins: [],
extensions: [`.md`, `.mdx`],
gatsbyRemarkPlugins: [
{
resolve: `gatsby-remark-images`,
options: {
maxWidth: 1035,
sizeByPixelDensity: true,
},
},
],
},
},
{
resolve: `gatsby-plugin-netlify`,
options: {
headers: {
"/**/*.html": [
"cache-control: public",
"cache-control: max-age=0",
"cache-control: must-revalidate",
],
"/page-data/*.json": [
"cache-control: public",
"cache-control: max-age=0",
"cache-control: must-revalidate",
],
"/app-data.json": [
"cache-control: public",
"cache-control: max-age=0",
"cache-control: must-revalidate",
],
// Cache images for a week
"/**/*.svg": [
"cache-control: public",
"cache-control: max-age=604800",
"cache-control: immutable",
],
"/**/*.webp": [
"cache-control: public",
"cache-control: max-age=604800",
"cache-control: immutable",
],
},
},
},
],
};