123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- const fs = require("fs");
- const path = require("path");
- const addPluginsIfAPIKeySet = !process.env.EXAMPLE_GATSBY_AIRTABLE_API_KEY
- ? []
- : [
- {
- resolve: `gatsby-source-airtable`,
- options: {
- apiKey: process.env.EXAMPLE_GATSBY_AIRTABLE_API_KEY,
- tables: [
- {
- baseId: `appcL6Jdj7ZrhTg4q`,
- tableName: `Recipes`,
- tableView: `List`,
- queryName: `Recipes`,
- mapping: {
- images: "fileNode",
- ingredients: "text/markdown",
- directions: "text/markdown"
- },
- separateMapTypes: true
- }
- ]
- }
- },
- {
- resolve: `gatsby-theme-recipes`,
- options: {
- sources: ["Airtable"]
- }
- }
- ];
- if (!process.env.EXAMPLE_GATSBY_AIRTABLE_API_KEY) {
- try {
- const template = require.resolve(
- "gatsby-theme-recipes/src/templates/recipeTemplate.js"
- );
- const main = require.resolve("gatsby-theme-recipes/src/main/recipes.js");
- fs.renameSync(
- template,
- template
- .split(".")
- .reduce((acc, cur) => (cur === "js" ? acc + ".nojs" : acc + cur), "")
- );
- fs.renameSync(
- main,
- main
- .split(".")
- .reduce((acc, cur) => (cur === "js" ? acc + ".nojs" : acc + cur), "")
- );
- } catch (e) {
- // no-op
- }
- } else {
- try {
- const template = require.resolve(
- "gatsby-theme-recipes/src/templates/recipeTemplate.nojs"
- );
- const main = require.resolve("gatsby-theme-recipes/src/main/recipes.nojs");
- fs.renameSync(
- template,
- template
- .split(".")
- .reduce((acc, cur) => (cur === "nojs" ? acc + ".js" : acc + cur), "")
- );
- fs.renameSync(
- main,
- main
- .split(".")
- .reduce((acc, cur) => (cur === "nojs" ? acc + ".js" : acc + cur), "")
- );
- } catch (e) {
- // no-op
- }
- }
- module.exports = {
- siteMetadata: {
- siteTitle: `Jacob Bolda`,
- siteDescription: `Structural Engineer with a knack for creative solutions using code and ingenuity.`,
- siteAuthor: `Jacob Bolda`,
- siteAuthorIdentity: `Structural Engineer`,
- siteLanding: `
- Focusing on the intersection of tech and Structural
- Engineering. Masters degree in Structural Engineering
- from the Milwaukee School of Engineering, undergrad in
- Architectural Engineering with a minor in Management,
- and a deep understanding of software and programming.
- Marrying that experience with problem solving and
- systematizing is powerful.
- `,
- siteContact: "https://twitter.com/jacobbolda",
- contactLinks: [
- {
- url: "mailto:me@jacobbolda.com",
- text: "me@jacobbolda.com",
- icon: ["far", "envelope"]
- },
- {
- url: "https://twitter.com/jacobbolda",
- text: "@jacobbolda",
- icon: ["fab", "twitter"]
- },
- {
- url: "https://linkedin.com/in/bolda",
- text: "linkedin.com/in/bolda",
- icon: ["fab", "linkedin"]
- },
- {
- url: "https://github.com/jbolda",
- text: "github.com/jbolda",
- icon: ["fab", "github"]
- },
- {
- url: "https://keybase.io/jbolda",
- text: "keybase.io/jbolda",
- icon: ["fab", "keybase"]
- },
- {
- url: "https://angel.co/jacobbolda",
- text: "angel.co/jacobbolda",
- icon: ["fab", "angellist"]
- },
- {
- url: "http://www.jbolda.com/photo",
- text: "My Photographs",
- icon: ["fas", "camera"]
- }
- ],
- navLinks: [{ url: "/recipes/", text: "Our Recipes" }]
- },
- plugins: [
- {
- resolve: `gatsby-source-filesystem`,
- options: {
- name: `articles`,
- path: `${__dirname}/src/articles/`
- }
- },
- `gatsby-plugin-theme-ui`,
- `gatsby-plugin-sharp`,
- `gatsby-transformer-sharp`,
- `@jbolda/gatsby-theme-homepage`,
- `@jbolda/gatsby-theme-articles`,
- ...addPluginsIfAPIKeySet,
- {
- resolve: `gatsby-plugin-mdx`,
- options: {}
- },
- `gatsby-plugin-react-helmet`,
- `gatsby-plugin-netlify`
- ]
- };
|