-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgridsome.config.js
119 lines (117 loc) · 2.94 KB
/
gridsome.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
115
116
117
118
119
// This is where project configuration and plugin options are located.
// Learn more: https://gridsome.org/docs/config
// Changes here require a server restart.
// To restart press CTRL + C in terminal and run `gridsome develop`
module.exports = {
siteName: 'Kyle Welsby - Full Stack JavaScript and Ruby Software Engineer',
siteUrl: 'https://mekyle.com',
siteDescription:
'Passionate full-stack Software Engineer ranked top 0.5% JavaScript, top 2% Vue.js, top 0.4% Ruby developer in the world, with two decades of experience.',
pathPrefix: process.env.BASE_PATH || '',
icon: './src/icon.png',
redirects: [
{ from: '/2021', to: '/', status: 301 },
{ from: '/cv.pdf', to: '/cv', status: 301 },
{ from: '/resume.pdf', to: '/cv', status: 301 },
],
plugins: [
{
use: '@gridsome/plugin-sitemap',
options: {
exclude: ['/cv'],
},
},
{
use: 'gridsome-plugin-robots-txt',
options: {
policy: [
{
userAgent: '*',
allow: '/',
disallow: '/cv',
},
],
},
},
{
use: '@gridsome/plugin-critical',
options: {
paths: ['/'],
},
},
{
use: 'gridsome-plugin-tailwindcss',
},
{
use: 'gridsome-plugin-pug',
},
{
use: 'gridsome-plugin-plausible-analytics',
options: {
dataDomain: 'mekyle.com',
outboundLinkTracking: true,
},
},
{
use: 'gridsome-plugin-pwa',
options: {
title: 'Kyle Welsby - Full Stack JavaScript and Ruby Software Engineer',
display: 'browser',
startUrl: process.env.BASE_PATH || '/',
themeColor: '#181818',
shortName: 'Kyle Welsby',
disableServiceWorker: false,
serviceWorkerPath: 'sw.js',
cachedFileTypes: 'js,json,css,html,png,jpg,jpeg,svg',
icon: 'src/icon.png',
maskableIcon: true,
msTitleImage: '',
msTitleColor: '#181818',
gcmSenderId: null,
},
},
{
use: 'gridsome-source-rest',
options: {
debug: true,
axiosConfig: {
headers: {
api_key: process.env.DEV_TO_API_KEY,
},
},
endpoint: 'https://dev.to/api/articles/me/published',
typeName: 'devToArticle',
isStatic: false,
isCollection: true,
},
},
{
use: '@gridsome/source-filesystem',
options: {
typeName: 'Project',
path: './content/projects/**/*.md',
},
},
{
use: '@gridsome/source-filesystem',
options: {
typeName: 'Client',
path: './content/clients/**/*.md',
},
},
{
use: '@gridsome/source-filesystem',
options: {
typeName: 'Contact',
path: './content/contact.md',
},
},
{
use: '@gridsome/source-filesystem',
options: {
typeName: 'Cv',
path: './content/cv/**/*.md',
},
},
],
}