forked from climatescape/climatescape.org
-
Notifications
You must be signed in to change notification settings - Fork 0
/
gatsby-config.js
106 lines (102 loc) · 2.81 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
103
104
105
106
const algolia = require("./src/utils/algolia")
require("dotenv").config({
path: `.env.${process.env.NODE_ENV}`,
})
const config = {
siteMetadata: {
title: `Climatescape`,
description: `Discover the organizations solving climate change`,
author: `@climatescape`,
newsletterUrl: `https://climatescape.substack.com/subscribe`,
capitalAddFormUrl: `https://airtable.com/shrBK2iC6AQ4Yb2lq`,
capitalEditFormUrl: `https://airtable.com/shrFuDB1VcHqlYd1d`,
organizationAddFormUrl: `https://airtable.com/shrquIaKs7TQDqFFY`,
organizationEditFormUrl: `https://airtable.com/shrgoaO5ppAxlqt31`,
contributorFormUrl: `https://airtable.com/shr4WZDPBs7mk1doW`,
},
plugins: [
{
resolve: `gatsby-source-filesystem`,
options: {
name: `images`,
path: `${__dirname}/src/images`,
},
},
{
resolve: `gatsby-source-airtable`,
options: {
apiKey: process.env.AIRTABLE_API_KEY,
tables: [
{
baseId: `appNYMWxGF1jMaf5V`,
tableName: `Organizations`,
tableView: `Published`,
mapping: {
Published: `boolean`,
Logo: `fileNode`,
Photos: `fileNode`,
},
tableLinks: [`LinkedIn_Profiles`, `Categories`, `Capital_Profile`],
},
{
baseId: `appNYMWxGF1jMaf5V`,
tableName: "Contributors",
tableView: "Published",
mapping: { Avatar: `fileNode` },
},
{
baseId: `appNYMWxGF1jMaf5V`,
tableName: "LinkedIn Profiles",
tableView: "Grid view",
mapping: { Logo: `fileNode` },
},
{
baseId: `appNYMWxGF1jMaf5V`,
tableName: "Categories",
mapping: { Cover: `fileNode` },
tableView: "All Categories",
tableLinks: [`Parent`],
},
{
baseId: `appNYMWxGF1jMaf5V`,
tableName: "Capital Profiles",
tableLinks: [`Organization`],
},
],
},
},
`gatsby-plugin-react-helmet`,
{
resolve: `gatsby-transformer-sharp`,
options: {
defautQuality: 75,
},
},
`gatsby-plugin-sharp`,
`gatsby-plugin-postcss`,
{
resolve: `gatsby-plugin-prefetch-google-fonts`,
options: {
fonts: [
{
family: `Roboto`,
variants: [`400`, `700`],
},
{ family: "Roboto Mono" },
],
},
},
],
}
if (process.env.ALGOLIA_ADMIN_KEY) {
config.plugins.push({
resolve: `gatsby-plugin-algolia`,
options: {
appId: process.env.GATSBY_ALGOLIA_APP_ID,
apiKey: process.env.ALGOLIA_ADMIN_KEY,
queries: algolia.queries,
chunkSize: 10000,
},
})
}
module.exports = config