1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/styles.f628065b851287e306e5.css">@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:100;src:local("IBM Plex Sans Thin "),local("IBM Plex Sans-Thin"),url(/static/ibm-plex-sans-latin-100-245539db8ee56425757ef728eda8194e.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-100-9a582f3a304f421eca4027517706843c.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-display:swap;font-weight:100;src:local("IBM Plex Sans Thin italic"),local("IBM Plex Sans-Thinitalic"),url(/static/ibm-plex-sans-latin-100italic-3c34cf080b38f5fb1d4c59ffa45b3967.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-100italic-1ea7c5d21b5956b602bdf9656cfb353f.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:200;src:local("IBM Plex Sans Extra Light "),local("IBM Plex Sans-Extra Light"),url(/static/ibm-plex-sans-latin-200-bf72c8412ab06c393f52efc5beb26ea7.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-200-67524c36348a323f78f2845e3aafc2d4.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-display:swap;font-weight:200;src:local("IBM Plex Sans Extra Light italic"),local("IBM Plex Sans-Extra Lightitalic"),url(/static/ibm-plex-sans-latin-200italic-bbc2d55223638ce450424a917e1104b2.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-200italic-52df25607ec284ca361ae50ba24b3580.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:300;src:local("IBM Plex Sans Light "),local("IBM Plex Sans-Light"),url(/static/ibm-plex-sans-latin-300-9e1c48af24191f6ea8aede14957c5d01.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-300-10bb6a0ae6dc8000d999ab622a45e281.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-display:swap;font-weight:300;src:local("IBM Plex Sans Light italic"),local("IBM Plex Sans-Lightitalic"),url(/static/ibm-plex-sans-latin-300italic-c76f2ab53673e964b6e6734c1c455761.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-300italic-d3566d5bb4f31d86bfb9fda09563b416.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:local("IBM Plex Sans Regular "),local("IBM Plex Sans-Regular"),url(/static/ibm-plex-sans-latin-400-263d6267533501f58c33b12b382e3abb.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-400-a2c56f946488a9a267ba6ba21471a217.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-display:swap;font-weight:400;src:local("IBM Plex Sans Regular italic"),local("IBM Plex Sans-Regularitalic"),url(/static/ibm-plex-sans-latin-400italic-89a93a1bdde48c7bb104150de88affce.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-400italic-272f86114c980c52
1c131dfc3b4ae3276.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:local("IBM Plex Sans Medium "),local("IBM Plex Sans-Medium"),url(/static/ibm-plex-sans-latin-500-0866c24487514ad726738fb24f8e015b.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-500-f6d5c5d5b849796d6a8f5a2953b60753.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-display:swap;font-weight:500;src:local("IBM Plex Sans Medium italic"),local("IBM Plex Sans-Mediumitalic"),url(/static/ibm-plex-sans-latin-500italic-ffd12d59339823b8cf53b9f99b47d87c.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-500italic-ccd41bd1a5bfa8bad2cd8d35fdaeb3d1.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:local("IBM Plex Sans SemiBold "),local("IBM Plex Sans-SemiBold"),url(/static/ibm-plex-sans-latin-600-7852d4dc26ef44df58e23dc0b9722d6f.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-600-337b16517a230dc830b84dc6e6167b68.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-display:swap;font-weight:600;src:local("IBM Plex Sans SemiBold italic"),local("IBM Plex Sans-SemiBolditalic"),url(/static/ibm-plex-sans-latin-600italic-17e5379fd9a99b9bcb26ea983f391b6a.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-600italic-6f4ba6aa87fa99d5bc2b90a7b40a0ded.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:local("IBM Plex Sans Bold "),local("IBM Plex Sans-Bold"),url(/static/ibm-plex-sans-latin-700-c9983d3d04f3ed6c2eafee1db1d24e06.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-700-b8809d619a33eb825b0450281ff752e7.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-display:swap;font-weight:700;src:local("IBM Plex Sans Bold italic"),local("IBM Plex Sans-Bolditalic"),url(/static/ibm-plex-sans-latin-700italic-02954beec9e742bb1f3ae27b7e7cb71f.woff2) format("woff2"),url(/static/ibm-plex-sans-latin-700italic-72e9af409ddafc63a5dd380e34758560.woff) format("woff")}</style><meta name="generator" content="Gatsby 2.24.53"/><link rel="alternate" type="application/rss+xml" title="Minimal Blog - @lekoarts/gatsby-theme-minimal-blog" href="/rss.xml"/><title data-react-helmet="true">The Service Relief Project | Bob Orchard</title><link data-react-helmet="true" rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png"/><link data-react-helmet="true" rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png"/><link data-react-helmet="true" rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"/><meta data-react-helmet="true" name="description" content="There is no doubt in my mind that we live in nearly-unprecedented times. People, businesses, countries and world economies are all reelingâ¦"/><meta data-react-helmet="true" name="image" content="https://boborchard.com/static/f011f5e7f939ab4fddf81d2d9809c85e/a6c62/service-relief-project.jpg"/><meta data-react-helmet="true" property="og:title" content="The Service Relief Project"/><meta data-react-helmet="true" property="og:url" content="https://boborchard.com"/><meta data-react-helmet="true" property="og:description" content="There is no doubt in my mind that we live in nearly-unprecedented times. People, businesses, countries and world economies are all reelingâ¦"/><meta data-react-helmet="true" property="og:image" content="https://boborchard.com/static/f011f5e7f939ab4fddf81d2d9809c85e/a6c62/service-relief-project.jpg"/><meta data-react-helmet="true" property="og:type" content="website"/><meta data-react-helmet="true" property="og:image:alt" content="There is no doubt in my mind that we live in nearly-unprecedented times. People, businesses, countries and world economies are all reelingâ¦"/><meta data-react-helmet="true" name="twitter:card" content="summary_large_image"/><meta data-react-helmet="true" name="twitter:title" content="The Service Relief Project"/><meta data-react-helmet="true" name="twitter:url" content="https://boborchard.com"/><meta data-react-helmet="true" name="twitter:description" content="There is no doubt in my mind that we live in nearly-unprecedented times. People, businesses, countries and world economies are all reelingâ¦"/>
1<meta data-react-helmet="true" name="twitter:image" content="https://boborchard.com/static/f011f5e7f939ab4fddf81d2d9809c85e/a6c62/service-relief-project.jpg"/><meta data-react-helmet="true" name="twitter:image:alt" content="There is no doubt in my mind that we live in nearly-unprecedented times. People, businesses, countries and world economies are all reelingâ¦"/><meta data-react-helmet="true" name="twitter:creator" content="@boborchard"/><meta data-react-helmet="true" name="gatsby-theme" content="@lekoarts/gatsby-theme-minimal-blog"/>
1<script data-react-helmet="true" type="text/javascript" async="" src="https://cdn-live.conductor.com/v1/1043aaf2-bdde-4906-b43d-553ed4bd1eae/live.js" integrity="sha384-xPBG9EtEDAfjTKDZ96UjoPBDvPUVvOpWO5lVuTGIYh9zA7tPNwTkjmLhRuMCK5MN" crossorigin="anonymous"></script>
1<link rel="preconnect" href="https://www.google-analytics.com"/><link rel="dns-prefetch" href="https://www.google-analytics.com"/><link rel="alternate" type="application/rss+xml" title="Bob Orchard | Blog" href="/rss.xml"/><link rel="sitemap" type="application/xml" href="/sitemap.xml"/><link rel="manifest" href="/manifest.webmanifest"/><meta name="theme-color" content="#6B46C1"/><link rel="apple-touch-icon" sizes="192x192" href="/android-chrome-192x192.png"/><link rel="apple-touch-icon" sizes="512x512" href="/android-chrome-512x512.png"/><link as="script" rel="preload" href="/webpack-runtime-342fb45a84a3a1662802.js"/><link as="script" rel="preload" href="/framework-376edee25eb5f5cd8260.js"/><link as="script" rel="preload" href="/app-89bd8d1586be3a1660d4.js"/><link as="script" rel="preload" href="/styles-c2fe8482057191dca484.js"/><link as="script" rel="preload" href="/aed2e917f30c051bccba91aa15989a75fd0bd633-b11480dc76e7f9331b36.js"/><link as="script" rel="preload" href="/component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-post-query-tsx-a652c315e362f2f8ac68.js"/><link as="fetch" rel="preload" href="/page-data/the-service-relief-project/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/318001574.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/3787687951.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/sq/d/3787687951.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/page-data/app-data.json" crossorigin="anonymous"/></head><body>
1<script>(function() { try { 2 var mode = localStorage.getItem('theme-ui-color-mode'); 3 if (!mode) return 4 document.body.classList.add('theme-ui-' + mode); 5} catch (e) {} })();</script>
5<div id="___gatsby"><style data-emotion-css="1hycliv">body{--theme-ui-colors-transparent:var(--theme-ui-colors-transparent,transparent);--theme-ui-colors-black:var(--theme-ui-colors-black,#000);--theme-ui-colors-white:var(--theme-ui-colors-white,#fff);--theme-ui-colors-gray-0:var(--theme-ui-colors-gray-0,null);--theme-ui-colors-gray-1:var(--theme-ui-colors-gray-1,#f7fafc);--theme-ui-colors-gray-2:var(--theme-ui-colors-gray-2,#edf2f7);--theme-ui-colors-gray-3:var(--theme-ui-colors-gray-3,#e2e8f0);--theme-ui-colors-gray-4:var(--theme-ui-colors-gray-4,#cbd5e0);--theme-ui-colors-gray-5:var(--theme-ui-colors-gray-5,#a0aec0);--theme-ui-colors-gray-6:var(--theme-ui-colors-gray-6,#718096);--theme-ui-colors-gray-7:var(--theme-ui-colors-gray-7,#4a5568);--theme-ui-colors-gray-8:var(--theme-ui-colors-gray-8,#2d3748);--theme-ui-colors-gray-9:var(--theme-ui-colors-gray-9,#1a202c);--theme-ui-colors-red-0:var(--theme-ui-colors-red-0,null);--theme-ui-colors-red-1:var(--theme-ui-colors-red-1,#fff5f5);--theme-ui-colors-red-2:var(--theme-ui-colors-red-2,#fed7d7);--theme-ui-colors-red-3:var(--theme-ui-colors-red-3,#feb2b2);--theme-ui-colors-red-4:var(--theme-ui-colors-red-4,#fc8181);--theme-ui-colors-red-5:var(--theme-ui-colors-red-5,#f56565);--theme-ui-colors-red-6:var(--theme-ui-colors-red-6,#e53e3e);--theme-ui-colors-red-7:var(--theme-ui-colors-red-7,#c53030);--theme-ui-colors-red-8:var(--theme-ui-colors-red-8,#9b2c2c);--theme-ui-colors-red-9:var(--theme-ui-colors-red-9,#742a2a);--theme-ui-colors-orange-0:var(--theme-ui-colors-orange-0,null);--theme-ui-colors-orange-1:var(--theme-ui-colors-orange-1,#fffaf0);--theme-ui-colors-orange-2:var(--theme-ui-colors-orange-2,#feebc8);--theme-ui-colors-orange-3:var(--theme-ui-colors-orange-3,#fbd38d);--theme-ui-colors-orange-4:var(--theme-ui-colors-orange-4,#f6ad55);--theme-ui-colors-orange-5:var(--theme-ui-colors-orange-5,#ed8936);--theme-ui-colors-orange-6:var(--theme-ui-colors-orange-6,#dd6b20);--theme-ui-colors-orange-7:var(--theme-ui-colors-orange-7,#c05621);--theme-ui-colors-orange-8:var(--theme-ui-colors-orange-8,#9c4221);--theme-ui-colors-orange-9:var(--theme-ui-colors-orange-9,#7b341e);--theme-ui-colors-yellow-0:var(--theme-ui-colors-yellow-0,null);--theme-ui-colors-yellow-1:var(--theme-ui-colors-yellow-1,#fffff0);--theme-ui-colors-yellow-2:var(--theme-ui-colors-yellow-2,#fefcbf);--theme-ui-colors-yellow-3:var(--theme-ui-colors-yellow-3,#faf089);--theme-ui-colors-yellow-4:var(--theme-ui-colors-yellow-4,#f6e05e);--theme-ui-colors-yellow-5:var(--theme-ui-colors-yellow-5,#ecc94b);--theme-ui-colors-yellow-6:var(--theme-ui-colors-yellow-6,#d69e2e);--theme-ui-colors-yellow-7:var(--theme-ui-colors-yellow-7,#b7791f);--theme-ui-colors-yellow-8:var(--theme-ui-colors-yellow-8,#975a16);--theme-ui-colors-yellow-9:var(--theme-ui-colors-yellow-9,#744210);--theme-ui-colors-green-0:var(--theme-ui-colors-green-0,null);--theme-ui-colors-green-1:var(--theme-ui-colors-green-1,#f0fff4);--theme-ui-colors-green-2:var(--theme-ui-colors-green-2,#c6f6d5);--theme-ui-colors-green-3:var(--theme-ui-colors-green-3,#9ae6b4);--theme-ui-colors-green-4:var(--theme-ui-colors-green-4,#68d391);--theme-ui-colors-green-5:var(--theme-ui-colors-green-5,#48bb78);--theme-ui-colors-green-6:var(--theme-ui-colors-green-6,#38a169);--theme-ui-colors-green-7:var(--theme-ui-colors-green-7,#2f855a);--theme-ui-colors-green-8:var(--theme-ui-colors-green-8,#276749);--theme-ui-colors-green-9:var(--theme-ui-colors-green-9,#22543d);--theme-ui-colors-teal-0:var(--theme-ui-colors-teal-0,null);--theme-ui-colors-teal-1:var(--theme-ui-colors-teal-1,#e6fffa);--theme-ui-colors-teal-2:var(--theme-ui-colors-teal-2,#b2f5ea);--theme-ui-colors-teal-3:var(--theme-ui-colors-teal-3,#81e6d9);--theme-ui-colors-teal-4:var(--theme-ui-colors-teal-4,#4fd1c5);--theme-ui-colors-teal-5:var(--theme-ui-colors-teal-5,#38b2ac);--theme-ui-colors-teal-6:var(--theme-ui-colors-teal-6,#319795);--theme-ui-colors-teal-7:var(--theme-ui-colors-teal-7,#2c7a7b);--theme-ui-colors-teal-8:var(--theme-ui-colors-teal-8,#285e61);--theme-ui-colors-teal-9:var(--theme-ui-colors-teal-9,#234e52);--theme-ui-colors-blue-0:var(--theme-ui-colors-blue-0,null);--theme-ui-colors-blue-1:var(--theme-ui-colors-blue-1,#ebf8ff);--theme-ui-colors-blue-2:var(--theme-ui-colors-blue-2,#bee3f8);--theme-ui-colors-blue-3:var(--theme-ui-colors-blue-3,#90cdf4);--theme-ui-colors-blue-4:var(--theme-ui-colors-blue-4,#63b3ed);--theme-ui-colors-blue-5:var(--theme-ui-colors-blue-5,#4299e1);--theme-ui-colors-blue-6:var(--theme-ui-colors-blue-6,#3182ce);--theme-ui-colors-blue-7:var(--theme-ui-colors-blue-7,#2b6cb0);--theme-ui-colors-blue-8:var(--theme-ui-colors-blue-8,#2c5282);--theme-ui-colors-blue-9:var(--theme-ui-colors-blue-9,#2a4365);--theme-ui-colors-indigo-0:var(--theme-ui-colors-indigo-0,null);--theme-ui-colors-indigo-1:var(--theme-ui-colors-indigo-1,#ebf4ff);--theme-ui-colors-indigo-2:var(--theme-ui-colors-indigo-2,#c3dafe);--theme-ui-colors-indigo-3:var(--theme-ui-colors-indigo-3,#a3bffa);
5--theme-ui-colors-indigo-4:var(--theme-ui-colors-indigo-4,#7f9cf5);--theme-ui-colors-indigo-5:var(--theme-ui-colors-indigo-5,#667eea);--theme-ui-colors-indigo-6:var(--theme-ui-colors-indigo-6,#5a67d8);--theme-ui-colors-indigo-7:var(--theme-ui-colors-indigo-7,#4c51bf);--theme-ui-colors-indigo-8:var(--theme-ui-colors-indigo-8,#434190);--theme-ui-colors-indigo-9:var(--theme-ui-colors-indigo-9,#3c366b);--theme-ui-colors-purple-0:var(--theme-ui-colors-purple-0,null);--theme-ui-colors-purple-1:var(--theme-ui-colors-purple-1,#faf5ff);--theme-ui-colors-purple-2:var(--theme-ui-colors-purple-2,#e9d8fd);--theme-ui-colors-purple-3:var(--theme-ui-colors-purple-3,#d6bcfa);--theme-ui-colors-purple-4:var(--theme-ui-colors-purple-4,#b794f4);--theme-ui-colors-purple-5:var(--theme-ui-colors-purple-5,#9f7aea);--theme-ui-colors-purple-6:var(--theme-ui-colors-purple-6,#805ad5);--theme-ui-colors-purple-7:var(--theme-ui-colors-purple-7,#6b46c1);--theme-ui-colors-purple-8:var(--theme-ui-colors-purple-8,#553c9a);--theme-ui-colors-purple-9:var(--theme-ui-colors-purple-9,#44337a);--theme-ui-colors-pink-0:var(--theme-ui-colors-pink-0,null);--theme-ui-colors-pink-1:var(--theme-ui-colors-pink-1,#fff5f7);--theme-ui-colors-pink-2:var(--theme-ui-colors-pink-2,#fed7e2);--theme-ui-colors-pink-3:var(--theme-ui-colors-pink-3,#fbb6ce);--theme-ui-colors-pink-4:var(--theme-ui-colors-pink-4,#f687b3);--theme-ui-colors-pink-5:var(--theme-ui-colors-pink-5,#ed64a6);--theme-ui-colors-pink-6:var(--theme-ui-colors-pink-6,#d53f8c);--theme-ui-colors-pink-7:var(--theme-ui-colors-pink-7,#b83280);--theme-ui-colors-pink-8:var(--theme-ui-colors-pink-8,#97266d);--theme-ui-colors-pink-9:var(--theme-ui-colors-pink-9,#702459);--theme-ui-colors-grayDark:var(--theme-ui-colors-grayDark,#2d3748);--theme-ui-colors-text:var(--theme-ui-colors-text,#2d3748);--theme-ui-colors-background:var(--theme-ui-colors-background,#fff);--theme-ui-colors-primary:var(--theme-ui-colors-primary,#6b46c1);--theme-ui-colors-primaryHover:var(--theme-ui-colors-primaryHover,#2c5282);--theme-ui-colors-secondary:var(--theme-ui-colors-secondary,#5f6c80);--theme-ui-colors-muted:var(--theme-ui-colors-muted,#e2e8f0);--theme-ui-colors-success:var(--theme-ui-colors-success,#9ae6b4);--theme-ui-colors-info:var(--theme-ui-colors-info,#63b3ed);--theme-ui-colors-warning:var(--theme-ui-colors-warning,#faf089);--theme-ui-colors-danger:var(--theme-ui-colors-danger,#feb2b2);--theme-ui-colors-light:var(--theme-ui-colors-light,#f7fafc);--theme-ui-colors-dark:var(--theme-ui-colors-dark,#2d3748);--theme-ui-colors-textMuted:var(--theme-ui-colors-textMuted,#718096);--theme-ui-colors-toggleIcon:var(--theme-ui-colors-toggleIcon,#2d3748);--theme-ui-colors-heading:var(--theme-ui-colors-heading,#000);--theme-ui-colors-divide:var(--theme-ui-colors-divide,#cbd5e0);color:var(--theme-ui-colors-text,#2d3748);background-color:var(--theme-ui-colors-background,#fff);}body.theme-ui-dark{--theme-ui-colors-text:var(--theme-ui-colors-modes-dark-text,#cbd5e0);--theme-ui-colors-primary:var(--theme-ui-colors-modes-dark-primary,#9f7aea);--theme-ui-colors-secondary:var(--theme-ui-colors-modes-dark-secondary,#7f8ea3);--theme-ui-colors-toggleIcon:var(--theme-ui-colors-modes-dark-toggleIcon,#cbd5e0);--theme-ui-colors-background:var(--theme-ui-colors-modes-dark-background,#1A202C);--theme-ui-colors-heading:var(--theme-ui-colors-modes-dark-heading,#fff);--theme-ui-colors-divide:var(--theme-ui-colors-modes-dark-divide,#2d3748);--theme-ui-colors-muted:var(--theme-ui-colors-modes-dark-muted,#2d3748);}</style><style data-emotion-css="tm2q0o">*{box-sizing:border-box;}body{margin:0;font-family:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";line-height:1.625;font-weight:400;color:var(--theme-ui-colors-text,#2d3748);background-color:var(--theme-ui-colors-background,#fff);padding:0;box-sizing:border-box;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}</style><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><style data-emotion-css="kcr4c7">*{box-sizing:inherit;}html{-webkit-text-size-adjust:100%;}img{border-style:none;}pre{font-family:monospace;font-size:1em;}[hidden]{display:none;}::selection{background-color:var(--theme-ui-colors-text,#2d3748);color:var(--theme-ui-colors-background,#fff);}a{-webkit-transition:all 0.3s ease-in-out;transition:all 0.3s ease-in-out;color:text;}</style><style data-emotion-css="1g597hz">.css-1g597hz{border:0;-webkit-clip:react(0 0 0 0);clip:react(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;overflow:hidden;position:absolute;}.css-1g597hz:focus{padding:1rem;position:fixed;top:15px;left:15px;background-color:var(--theme-ui-colors-heading,#000);color:var(--theme-ui-colors-background,#fff);z-index:1;width:auto;height:auto;-webkit-clip:auto;clip:auto;-webkit-text-decoration:none;text-decoration:none;}</style><a href="#skip-nav" data-skip-link="true" class="css-1g597hz">Skip to content</a><style data-emotion-css="1jrqzhj">.css-1jrqzhj{box-sizing:border-box;margin:0;min-width:0;width:100%;max-width:container;margin-left:auto;margin-right:auto;padding:1rem;max-width:1024px;}@media screen and (min-width:640px){.css-1jrqzhj{padding:2rem;}}</style><div class="css-1jrqzhj"><style data-emotion-css="1wt4r56">.css-1wt4r56{margin-bottom:4rem;}@media screen and (min-width:640px){.css-1wt4r56{margin-bottom:8rem;}}</style><header class="css-1wt4r56"><style data-emotion-css="1eswzqe">.css-1eswzqe{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;
5-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;}</style><style data-emotion-css="190uhut">.css-190uhut{box-sizing:border-box;margin:0;min-width:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;}</style><div class="css-190uhut"><style data-emotion-css="dz3ojy">.css-dz3ojy{color:var(--theme-ui-colors-heading,#000);-webkit-text-decoration:none;text-decoration:none;}</style><a aria-label="Bob Orchard - Back to home" class="css-dz3ojy" href="/"><style data-emotion-css="1kmktz0">.css-1kmktz0{margin-top:0;margin-bottom:0;font-weight:500;font-size:1.5rem;}@media screen and (min-width:640px){.css-1kmktz0{font-size:1.875rem;}}</style><h1 class="css-1kmktz0">Bob Orchard</h1></a><style data-emotion-css="af3ja4">.css-af3ja4{opacity:0.65;position:relative;border-radius:5px;width:40px;height:25px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:opacity 0.3s ease;transition:opacity 0.3s ease;border:none;outline:none;background:none;cursor:pointer;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;}.css-af3ja4:hover,.css-af3ja4:focus{opacity:1;}</style><button type="button" aria-label="Activate Dark Mode" title="Activate Dark Mode" class="css-af3ja4"><style data-emotion-css="iiu7h7">.css-iiu7h7{position:relative;width:24px;height:24px;border-radius:50%;border:none;background-color:var(--theme-ui-colors-transparent,transparent);-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);-webkit-transition:all 0.45s ease;transition:all 0.45s ease;overflow:hidden;box-shadow:inset 8px -8px 0px 0px var(--theme-ui-colors-toggleIcon,#2d3748);}.css-iiu7h7:before{content:"";position:absolute;right:-9px;top:-9px;height:24px;width:24px;border:none;border-radius:50%;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);opacity:1;-webkit-transition:-webkit-transform 0.45s ease;-webkit-transition:transform 0.45s ease;transition:transform 0.45s ease;}.css-iiu7h7:after{content:"";width:8px;height:8px;border-radius:50%;margin:-4px 0 0 -4px;position:absolute;top:50%;left:50%;box-shadow:0 -23px 0 var(--theme-ui-colors-toggleIcon,#2d3748),0 23px 0 var(--theme-ui-colors-toggleIcon,#2d3748),23px 0 0 var(--theme-ui-colors-toggleIcon,#2d3748),-23px 0 0 var(--theme-ui-colors-toggleIcon,#2d3748),15px 15px 0 var(--theme-ui-colors-toggleIcon,#2d3748),-15px 15px 0 var(--theme-ui-colors-toggleIcon,#2d3748),15px -15px 0 var(--theme-ui-colors-toggleIcon,#2d3748),-15px -15px 0 var(--theme-ui-colors-toggleIcon,#2d3748);-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transition:all 0.35s ease;transition:all 0.35s ease;}</style><div class="css-iiu7h7"></div></button></div><style data-emotion-css="1kvspmd">.css-1kvspmd{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;border-bottom-style:solid;border-bottom-width:1px;border-bottom-color:var(--theme-ui-colors-divide,#cbd5e0);padding-bottom:1rem;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;margin-top:1rem;color:var(--theme-ui-colors-secondary,#5f6c80);-webkit-flex-flow:wrap;-ms-flex-flow:wrap;flex-flow:wrap;}.css-1kvspmd a{color:var(--theme-ui-colors-secondary,#5f6c80);}.css-1kvspmd a:hover{color:var(--theme-ui-colors-heading,#000);}</style><div class="css-1kvspmd"><style data-emotion-css="nrb238">.css-nrb238{font-size:1rem;}.css-nrb238 a:not(:last-of-type){margin-right:1rem;}@media screen and (min-width:640px){.css-nrb238{font-size:18px;}}.css-nrb238 .active{color:var(--theme-ui-colors-heading,#000);}</style><nav class="css-nrb238"><style data-emotion-css="1od09yo">.css-1od09yo{color:var(--theme-ui-colors-primary,#6b46c1);-webkit-text-decoration:none;text-decoration:none;}.css-1od09yo:hover{-webkit-text-decoration:underline;text-decoration:underline;}</style><a class="css-1od09yo" href="/blog">Blog</a><a class="css-1od09yo" href="/about">About</a><a class="css-1od09yo" href="/uses">Uses</a></nav><style data-emotion-css="e5k4e3">.css-e5k4e3{font-size:1rem;}.css-e5k4e3 a:not(:first-of-type){margin-left:1rem;}@media screen and (min-width:640px){.css-e5k4e3{font-size:18px;}}</style><div class="css-e5k4e3"><a href="https://twitter.com/boborchard" class="css-1od09yo">Twitter</a><a href="https://www.instagram.com/boborchard" class="css-1od09yo">Instagram</a><a href="https://github.com/boborchard" class="css-1od09yo">Github</a></div></div></header><style data-emotion-css="ld0m">.css-ld0m [data-name='live-editor']{font-size:1rem;}.css-ld0m [data-name='live-editor'] textarea,.css-ld0m [data-name='live-editor'] pre{padding:1rem !important;}.css-ld0m [data-name='live-preview']{padding:calc(0.5rem + 10px) !important;background-color:#d2c7ec;}.css-ld0m .prism-code{font-size:1rem;padding:2rem 1rem 1rem 1rem;webkit-overflow-scrolling:touch;background-color:var(--theme-ui-colors-transparent,transparent);min-width:100%;margin-bottom:0;margin-top:0;overflow:auto;}@media screen and (min-width:640px){.css-ld0m .prism-code{font-size:1rem;}}@media screen and (min-width:768px){.css-ld0m .prism-code{font-size:1.25rem;}}.css-ld0m .prism-code[data-linenumber="false"] .token-line{padding-left:1rem;}.css-ld0m .gatsby-highlight[data-language=''] .prism-code,.css-ld0m .gatsby-highlight[data-language='noLineNumbers'] .prism-code{padding-top:1rem;}.css-ld0m .token{display:inline-block;}.css-ld0m p > code,.css-ld0m li > code{background-color:var(--theme-ui-colors-gray-2,#edf2f7);color:var(--theme-ui-colors-gray-8,#2d3748);padding-left:0.5rem;padding-right:0.5rem;padding-top:0.25rem;padding-bottom:0.25rem;border-radius:2px;}.css-ld0m .gatsby-highlight{font-size:1rem;position:relative;webkit-overflow-scrolling:touch;background-color:rgb(1,22,39);border-radius:2px;margin-left:0;margin-right:0;}@media screen and (min-width:640px){.css-ld0m .gatsby-highlight{font-size:1rem;margin-left:0;margin-right:0;}}@media screen and (min-width:768px){.css-ld0m .gatsby-highlight{font-size:1.25rem;margin-left:0;margin-right:0;}}@media screen and (min-width:1024px){.css-ld0m .gatsby-highlight{margin-left:-1rem;margin-right:-1rem;}}.css-ld0m .gatsby-highlight .token-line{margin-left:-1rem;margin-right:-1rem;min-width:100%;}.css-ld0m .gatsby-highlight pre code{float:left;min-width:100%;}.css-ld0m .gatsby-highlight pre[class*="language-"]:before{background-color:var(--theme-ui-colors-white,#fff);border-radius:0 0 0.25rem 0.25rem;color:var(--theme-ui-colors-black,#000);font-size:12px;-webkit-letter-spacing:0.025rem;-moz-letter-spacing:0.025rem;-ms-letter-spacing:0.025rem;letter-spacing:0.025rem;padding:0.1rem 0.5rem;position:absolute;
5left:1rem;text-align:right;text-transform:uppercase;top:0;}.css-ld0m .gatsby-highlight pre[class~="language-javascript"]:before,.css-ld0m .gatsby-highlight pre[class~="language-js"]:before{content:"js";background:#f7df1e;color:var(--theme-ui-colors-black,#000);}.css-ld0m .gatsby-highlight pre[class~="language-jsx"]:before{content:"jsx";background:#61dafb;color:var(--theme-ui-colors-black,#000);}.css-ld0m .gatsby-highlight pre[class~="language-ts"]:before{content:"ts";background:#61dafb;color:var(--theme-ui-colors-black,#000);}.css-ld0m .gatsby-highlight pre[class~="language-tsx"]:before{content:"tsx";background:#61dafb;color:var(--theme-ui-colors-black,#000);}.css-ld0m .gatsby-highlight pre[class~="language-html"]:before{content:"html";background:#005a9c;color:var(--theme-ui-colors-white,#fff);}.css-ld0m .gatsby-highlight pre[class~="language-xml"]:before{content:"xml";background:#005a9c;color:var(--theme-ui-colors-white,#fff);}.css-ld0m .gatsby-highlight pre[class~="language-svg"]:before{content:"svg";background:#005a9c;color:var(--theme-ui-colors-white,#fff);}.css-ld0m .gatsby-highlight pre[class~="language-graphql"]:before{content:"GraphQL";background:#E10098;}.css-ld0m .gatsby-highlight pre[class~="language-css"]:before{content:"css";background:#ff9800;color:var(--theme-ui-colors-black,#000);}.css-ld0m .gatsby-highlight pre[class~="language-mdx"]:before{content:"mdx";background:#f9ac00;color:var(--theme-ui-colors-black,#000);}.css-ld0m .gatsby-highlight pre[class~="language-text"]:before{content:"text";}.css-ld0m .gatsby-highlight pre[class~='language-shell']:before{content:'shell';}.css-ld0m .gatsby-highlight pre[class~='language-sh']:before{content:'sh';}.css-ld0m .gatsby-highlight pre[class~='language-bash']:before{content:'bash';}.css-ld0m .gatsby-highlight pre[class~='language-yaml']:before{content:'yaml';background:#ffa8df;}.css-ld0m .gatsby-highlight pre[class~='language-yml']:before{content:'yml';background:#ffa8df;}.css-ld0m .gatsby-highlight pre[class~='language-markdown']:before{content:'md';}.css-ld0m .gatsby-highlight pre[class~='language-json']:before,.css-ld0m .gatsby-highlight pre[class~='language-json5']:before{content:'json';background:linen;}.css-ld0m .gatsby-highlight pre[class~='language-diff']:before{content:'diff';background:#e6ffed;}.css-ld0m .gatsby-highlight > code[class*="language-"],.css-ld0m .gatsby-highlight > pre[class=*="language-"]{word-spacing:normal;word-break:normal;overflow-wrap:normal;line-height:1.5;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;}.css-ld0m .gatsby-highlight pre::-webkit-scrollbar{width:0.5rem;height:0.5rem;}.css-ld0m .gatsby-highlight pre::-webkit-scrollbar-thumb{background-color:var(--theme-ui-colors-primary,#6b46c1);}.css-ld0m .gatsby-highlight pre::-webkit-scrollbar-track{background:rgb(1,22,39);}.css-ld0m .line-number-style{display:inline-block;width:3em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;opacity:0.3;text-align:center;position:relative;}.css-ld0m .code-title{background-color:#d2c7ec;color:var(--theme-ui-colors-black,#000);font-size:0.875rem;padding-left:1rem;padding-right:1rem;padding-top:0.5rem;padding-bottom:0.5rem;font-family:Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;margin-left:0;margin-right:0;}@media screen and (min-width:640px){.css-ld0m .code-title{margin-left:0;margin-right:0;}}@media screen and (min-width:768px){.css-ld0m .code-title{margin-left:0;margin-right:0;}}@media screen and (min-width:1024px){.css-ld0m .code-title{margin-left:-1rem;margin-right:-1rem;}}.css-ld0m [data-name='live-preview'],.css-ld0m [data-name='live-editor']{margin-left:0;margin-right:0;font-size:1rem;}@media screen and (min-width:640px){.css-ld0m [data-name='live-preview'],.css-ld0m [data-name='live-editor']{margin-left:0;margin-right:0;font-size:1rem;}}@media screen and (min-width:768px){.css-ld0m [data-name='live-preview'],.css-ld0m [data-name='live-editor']{margin-left:0;margin-right:0;font-size:1.25rem;}}@media screen and (min-width:1024px){.css-ld0m [data-name='live-preview'],.css-ld0m [data-name='live-editor']{margin-left:-1rem;margin-right:-1rem;}}.css-ld0m .token-line{padding-right:1rem;}.css-ld0m .highlight-line{background-color:rgb(2,55,81);border-left:4px solid rgb(2,155,206);}.css-ld0m .highlight-line .line-number-style{width:calc(3em - 4px);opacity:0.5;left:-2px;}.css-ld0m .react-live-wrapper{position:relative;}.css-ld0m .react-live-wrapper .code-copy-button{right:0;}@media screen and (min-width:640px){.css-ld0m .react-live-wrapper .code-copy-button{right:0;}}@media screen and (min-width:768px){.css-ld0m .react-live-wrapper .code-copy-button{right:0;}}@media screen and (min-width:1024px){.css-ld0m .react-live-wrapper .code-copy-button{right:-1rem;}}</style><style data-emotion-css="27gylk">.css-27gylk{box-sizing:border-box;margin:0;min-width:0;}.css-27gylk [data-name='live-editor']{font-size:1rem;}.css-27gylk [data-name='live-editor'] textarea,.css-27gylk [data-name='live-editor'] pre{padding:1rem !important;}.css-27gylk [data-name='live-preview']{padding:calc(0.5rem + 10px) !important;background-color:#d2c7ec;}.css-27gylk .prism-code{font-size:1rem;padding:2rem 1rem 1rem 1rem;webkit-overflow-scrolling:touch;background-color:var(--theme-ui-colors-transparent,transparent);min-width:100%;margin-bottom:0;margin-top:0;overflow:auto;}@media screen and (min-width:640px){.css-27gylk .prism-code{font-size:1rem;}}@media screen and (min-width:768px){.css-27gylk .prism-code{font-size:1.25rem;}}.css-27gylk .prism-code[data-linenumber="false"] .token-line{padding-left:1rem;}.css-27gylk .gatsby-highlight[data-language=''] .prism-code,.css-27gylk .gatsby-highlight[data-language='noLineNumbers'] .prism-code{padding-top:1rem;}.css-27gylk .token{display:inline-block;}.css-27gylk p > code,.css-27gylk li > code{background-color:var(--theme-ui-colors-gray-2,#edf2f7);color:var(--theme-ui-colors-gray-8,#2d3748);padding-left:0.5rem;padding-right:0.5rem;padding-top:0.25rem;padding-bottom:0.25rem;border-radius:2px;}.css-27gylk .gatsby-highlight{font-size:1rem;position:relative;webkit-overflow-scrolling:touch;background-color:rgb(1,22,39);border-radius:2px;margin-left:0;margin-right:0;}@media screen and (min-width:640px){.css-27gylk .gatsby-highlight{font-size:1rem;margin-left:0;margin-right:0;}}@media screen and (min-width:768px){.css-27gylk .gatsby-highlight{font-size:1.25rem;margin-left:0;margin-right:0;}}@media screen and (min-width:1024px){.css-27gylk .gatsby-highlight{margin-left:-1rem;margin-right:-1rem;}}.css-27gylk .gatsby-highlight .token-line{margin-left:-1rem;margin-right:-1rem;min-width:100%;}.css-27gylk .gatsby-highlight pre code{float:left;min-width:100%;}.css-27gylk .gatsby-highlight pre[class*="language-"]:before{background-color:var(--theme-ui-colors-white,#fff);border-radius:0 0 0.25rem 0.25rem;color:var(--theme-ui-colors-black,#000);font-size:12px;-webkit-letter-spacing:0.025rem;-moz-letter-spacing:0.025rem;-ms-letter-spacing:0.025rem;letter-spacing:0.025rem;padding:0.1rem 0.5rem;position:absolute;
5left:1rem;text-align:right;text-transform:uppercase;top:0;}.css-27gylk .gatsby-highlight pre[class~="language-javascript"]:before,.css-27gylk .gatsby-highlight pre[class~="language-js"]:before{content:"js";background:#f7df1e;color:var(--theme-ui-colors-black,#000);}.css-27gylk .gatsby-highlight pre[class~="language-jsx"]:before{content:"jsx";background:#61dafb;color:var(--theme-ui-colors-black,#000);}.css-27gylk .gatsby-highlight pre[class~="language-ts"]:before{content:"ts";background:#61dafb;color:var(--theme-ui-colors-black,#000);}.css-27gylk .gatsby-highlight pre[class~="language-tsx"]:before{content:"tsx";background:#61dafb;color:var(--theme-ui-colors-black,#000);}.css-27gylk .gatsby-highlight pre[class~="language-html"]:before{content:"html";background:#005a9c;color:var(--theme-ui-colors-white,#fff);}.css-27gylk .gatsby-highlight pre[class~="language-xml"]:before{content:"xml";background:#005a9c;color:var(--theme-ui-colors-white,#fff);}.css-27gylk .gatsby-highlight pre[class~="language-svg"]:before{content:"svg";background:#005a9c;color:var(--theme-ui-colors-white,#fff);}.css-27gylk .gatsby-highlight pre[class~="language-graphql"]:before{content:"GraphQL";background:#E10098;}.css-27gylk .gatsby-highlight pre[class~="language-css"]:before{content:"css";background:#ff9800;color:var(--theme-ui-colors-black,#000);}.css-27gylk .gatsby-highlight pre[class~="language-mdx"]:before{content:"mdx";background:#f9ac00;color:var(--theme-ui-colors-black,#000);}.css-27gylk .gatsby-highlight pre[class~="language-text"]:before{content:"text";}.css-27gylk .gatsby-highlight pre[class~='language-shell']:before{content:'shell';}.css-27gylk .gatsby-highlight pre[class~='language-sh']:before{content:'sh';}.css-27gylk .gatsby-highlight pre[class~='language-bash']:before{content:'bash';}.css-27gylk .gatsby-highlight pre[class~='language-yaml']:before{content:'yaml';background:#ffa8df;}.css-27gylk .gatsby-highlight pre[class~='language-yml']:before{content:'yml';background:#ffa8df;}.css-27gylk .gatsby-highlight pre[class~='language-markdown']:before{content:'md';}.css-27gylk .gatsby-highlight pre[class~='language-json']:before,.css-27gylk .gatsby-highlight pre[class~='language-json5']:before{content:'json';background:linen;}.css-27gylk .gatsby-highlight pre[class~='language-diff']:before{content:'diff';background:#e6ffed;}.css-27gylk .gatsby-highlight > code[class*="language-"],.css-27gylk .gatsby-highlight > pre[class=*="language-"]{word-spacing:normal;word-break:normal;overflow-wrap:normal;line-height:1.5;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;}.css-27gylk .gatsby-highlight pre::-webkit-scrollbar{width:0.5rem;height:0.5rem;}.css-27gylk .gatsby-highlight pre::-webkit-scrollbar-thumb{background-color:var(--theme-ui-colors-primary,#6b46c1);}.css-27gylk .gatsby-highlight pre::-webkit-scrollbar-track{background:rgb(1,22,39);}.css-27gylk .line-number-style{display:inline-block;width:3em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;opacity:0.3;text-align:center;position:relative;}.css-27gylk .code-title{background-color:#d2c7ec;color:var(--theme-ui-colors-black,#000);font-size:0.875rem;padding-left:1rem;padding-right:1rem;padding-top:0.5rem;padding-bottom:0.5rem;font-family:Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;margin-left:0;margin-right:0;}@media screen and (min-width:640px){.css-27gylk .code-title{margin-left:0;margin-right:0;}}@media screen and (min-width:768px){.css-27gylk .code-title{margin-left:0;margin-right:0;}}@media screen and (min-width:1024px){.css-27gylk .code-title{margin-left:-1rem;margin-right:-1rem;}}.css-27gylk [data-name='live-preview'],.css-27gylk [data-name='live-editor']{margin-left:0;margin-right:0;font-size:1rem;}@media screen and (min-width:640px){.css-27gylk [data-name='live-preview'],.css-27gylk [data-name='live-editor']{margin-left:0;margin-right:0;font-size:1rem;}}@media screen and (min-width:768px){.css-27gylk [data-name='live-preview'],.css-27gylk [data-name='live-editor']{margin-left:0;margin-right:0;font-size:1.25rem;}}@media screen and (min-width:1024px){.css-27gylk [data-name='live-preview'],.css-27gylk [data-name='live-editor']{margin-left:-1rem;margin-right:-1rem;}}.css-27gylk .token-line{padding-right:1rem;}.css-27gylk .highlight-line{background-color:rgb(2,55,81);border-left:4px solid rgb(2,155,206);}.css-27gylk .highlight-line .line-number-style{width:calc(3em - 4px);opacity:0.5;left:-2px;}.css-27gylk .react-live-wrapper{position:relative;}.css-27gylk .react-live-wrapper .code-copy-button{right:0;}@media screen and (min-width:640px){.css-27gylk .react-live-wrapper .code-copy-button{right:0;}}@media screen and (min-width:768px){.css-27gylk .react-live-wrapper .code-copy-button{right:0;}}@media screen and (min-width:1024px){.css-27gylk .react-live-wrapper .code-copy-button{right:-1rem;}}</style><div id="skip-nav" class=" css-27gylk"><style data-emotion-css="12k12li">.css-12k12li{font-family:inherit;font-weight:700;line-height:1.25;margin:0;margin-bottom:0.25rem;font-size:1.875rem;margin-top:2rem;color:var(--theme-ui-colors-heading,#000);}
5@media screen and (min-width:640px){.css-12k12li{font-size:2.25rem;}}@media screen and (min-width:768px){.css-12k12li{font-size:3rem;}}</style><h2 class="css-12k12li">The Service Relief Project</h2><style data-emotion-css="1fkzbc2">.css-1fkzbc2{color:var(--theme-ui-colors-secondary,#5f6c80);margin-top:1rem;font-size:1rem;}.css-1fkzbc2 a{color:var(--theme-ui-colors-secondary,#5f6c80);}@media screen and (min-width:640px){.css-1fkzbc2{font-size:1rem;}}@media screen and (min-width:768px){.css-1fkzbc2{font-size:1.25rem;}}</style><p class="css-1fkzbc2"><time>23.03.2020</time> â <style data-emotion-css="688a3f">.css-688a3f{box-sizing:border-box;margin:0;min-width:0;color:var(--theme-ui-colors-primary,#6b46c1);-webkit-text-decoration:none;text-decoration:none;}.css-688a3f:hover{-webkit-text-decoration:underline;text-decoration:underline;}</style><a class="css-688a3f" href="/tags/resources">Resources</a>, <a class="css-688a3f" href="/tags/covid-19">COVID-19</a>, <a class="css-688a3f" href="/tags/gatsby">Gatsby</a>, <a class="css-688a3f" href="/tags/netlify">Netlify</a> â <span>5<!-- --> min read</span></p><style data-emotion-css="f0b8g7">.css-f0b8g7{margin-top:4rem;margin-bottom:4rem;}.css-f0b8g7 .gatsby-resp-image-wrapper{margin-top:2rem;margin-bottom:2rem;box-shadow:rgba(0,0,0,0.15) 0px 32px 32px 0px,rgba(0,0,0,0.15) 0px 16px 16px 0px,rgba(0,0,0,0.15) 0px 8px 8px 0px,rgba(0,0,0,0.15) 0px 4px 4px 0px;}@media screen and (min-width:640px){.css-f0b8g7 .gatsby-resp-image-wrapper{margin-top:2rem;margin-bottom:2rem;}}@media screen and (min-width:768px){.css-f0b8g7 .gatsby-resp-image-wrapper{margin-top:4rem;margin-bottom:4rem;}}</style><section class="css-f0b8g7"><style data-emotion-css="1bkk5q4">.css-1bkk5q4{font-size:1rem;-webkit-letter-spacing:-0.003em;-moz-letter-spacing:-0.003em;-ms-letter-spacing:-0.003em;letter-spacing:-0.003em;line-height:1.625;--baseline-multiplier:0.179;--x-height-multiplier:0.35;}@media screen and (min-width:640px){.css-1bkk5q4{font-size:1rem;}}@media screen and (min-width:768px){.css-1bkk5q4{font-size:1.25rem;}}</style><p class="css-1bkk5q4">There is no doubt in my mind that we live in nearly-unprecedented times. People, businesses, countries and world economies are all reeling from the fallout of the coronavirus pandemic sweeping the globe.</p><p class="css-1bkk5q4">It's easy to be overwhelmed. We woke up and the world was different. I sat in my chair for an hour consuming story after story about how people were having their lives uprooted by something they could not control and I wanted desparately to help. As it turns out, I wasn't alone.</p><p class="css-1bkk5q4"><strong class="css-0">In this post: </strong></p><style data-emotion-css="15rlv7r">.css-15rlv7r li{font-size:1rem;-webkit-letter-spacing:-0.003em;-moz-letter-spacing:-0.003em;-ms-letter-spacing:-0.003em;letter-spacing:-0.003em;line-height:1.625;--baseline-multiplier:0.179;--x-height-multiplier:0.35;}@media screen and (min-width:640px){.css-15rlv7r li{font-size:1rem;}}@media screen and (min-width:768px){.css-15rlv7r li{font-size:1.25rem;}}</style><ul class="css-15rlv7r"><li class="css-0"><a href="#about" class="css-1od09yo">About the project</a></li><li class="css-0"><a href="#beginnings" class="css-1od09yo">How it all began</a></li><li class="css-0"><a href="#team" class="css-1od09yo">Assembling a team</a></li><li class="css-0"><a href="#prototype" class="css-1od09yo">Building a prototype</a></li><li class="css-0"><a href="#help" class="css-1od09yo">Get Involved</a></li></ul><style data-emotion-css="170hkfz">.css-170hkfz{font-family:inherit;font-weight:700;line-height:1.25;margin:0;margin-bottom:0.25rem;font-size:1.5rem;margin-top:2rem;color:var(--theme-ui-colors-heading,#000);}@media screen and (min-width:640px){.css-170hkfz{font-size:1.875rem;}}@media screen and (min-width:768px){.css-170hkfz{font-size:2.25rem;}}</style><h3 class="css-170hkfz">About the project <a name="about" class="css-1od09yo"></a></h3><p class="css-1bkk5q4">The Service Relief Project is a boilerplate for launching blazing-fast zero-cost directories of local fundraisers to help your local businesses affected by mandated shutdowns around the world.</p><p class="css-1bkk5q4">Here's what it does:</p><ul class="css-15rlv7r"><li class="css-0">
5generates a static website using <a href="https://gatsbyjs.org" class="css-1od09yo">GatsbyJS</a></li><li class="css-0">uses <a href="https://airtable.com" class="css-1od09yo">Airtable</a> to manage your listings and categories</li><li class="css-0">includes an Airtable form to collect local submissions and add them to Airtable for approval</li><li class="css-0">can be personalized to a city or region without touching a line of code</li><li class="css-0">one-click deployment via Netlify</li></ul><p class="css-1bkk5q4">By using Gatsby to build and generate a static website that is based on data from a remote source like Airtable, the result is an ultra-fast website that can be hosted on any cloud infrastructure or hosted directly on a CDN. Because this project doesn't require a full CMS website it can handle spikes in traffic volume without slowing down or becoming inaccessible.</p><p class="css-1bkk5q4">In order to bring the ability to launch a zero-cost directory of fundraisers for your local area, we've:</p><ul class="css-15rlv7r"><li class="css-0">open-sourced the <a href="https://github.com/service-relief" class="css-1od09yo">entire project on Github</a></li><li class="css-0">written <a href="https://www.servicerelief.us/start/" class="css-1od09yo">detailed instructions on how to get started</a></li><li class="css-0">released a <a href="https://github.com/service-relief/gatsby-starter-service-relief" class="css-1od09yo">Gatsby Starter</a> and a <a href="https://github.com/service-relief/service-relief/tree/master/themes/gatsby-theme-service-relief" class="css-1od09yo">Gatsby Theme</a></li><li class="css-0">released a <a href="https://app.netlify.com/start/deploy?repository=https://github.com/service-relief/gatsby-starter-service-relief" class="css-1od09yo">one-click deployment to Netlify</a></li></ul><p class="css-1bkk5q4"><span class="gatsby-resp-image-wrapper" style="position:relative;display:block;margin-left:auto;margin-right:auto;max-width:960px"> 6 <span class="gatsby-resp-image-background-image" style="padding-bottom:80.41666666666667%;position:relative;bottom:0;left:0;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAABYlAAAWJQFJUiTwAAAB+UlEQVQ4y5VSWW8SYRTlF5qSmPhk3RL1XZs0JZCAtKYxxDdeLemf8EHtWA0mUltqQgVM2AbCNjMwzFYY4Dj3mm8yHbDELzm533bPXc6NPLv3Bk+jb5F6eYz93WMkX+SQ2jnC/t4R0rvvcLCX8/Y5HMRy2HmexaPoa2zfeYXHW2k8uHuI7egh7kfTeLiVwhPvLiK9v0ReukJb7kFudaEMxzCNa1jmFLY1w0gzoKkTaNoEvysd5D9f4fRDEd9OfuLL1184/VSCdHLp3f1A/mMREYTW2VkBhcJ3FIsXOL84x2KxwP+syHy+wNyd88FxHMTjccRiMSSTSd7btsNvREzg/2uw8ODO3L8ZLpdLdppOp8hkMshms0gkEpAkySf71xK+wvqEQVKB4Ns6iEBB0hsZ0odWq4VGo8FoNpuo1WpsCfV63beE8Xi8EnSFsN/vM6mqqrAsi2HbNkzTvHEmBDNcKVlYwzAwHA6ZeDAYQFEUBgWgO5FVuIe+yuEIuu4RKhoUVeM+CnWDCJYYJl3J0HGueXyEKJuE2ViyLMvc8E6nw8Sz2ezWQd5YMvWtVCqhUqmgXC6jWq2i1+txAEK322VLfQ6Plk8YjDSZTDhLcmq326w4WV3XGSQKWfpHit9aMjWcnCkjIiXHTWtjyaPRiMsSoyLguu5agcL+fwANPrD9bMcjOQAAAABJRU5ErkJggg==');background-size:cover;display:block"></span> 7 <img class="gatsby-resp-image-image css-0" alt="Screenshot of seattleservicerelief.com" title="Screenshot of seattleservicerelief.com" src="/static/3527a7623553284c80cd062d0ff8c35e/7d769/seattle-service-relief.png" srcSet="/static/3527a7623553284c80cd062d0ff8c35e/5243c/seattle-service-relief.png 240w,/static/3527a7623553284c80cd062d0ff8c35e/ab158/seattle-service-relief.png 480w,/static/3527a7623553284c80cd062d0ff8c35e/7d769/seattle-service-relief.png 960w,/static/3527a7623553284c80cd062d0ff8c35e/87339/seattle-service-relief.png 1440w,/static/3527a7623553284c80cd062d0ff8c35e/88b03/seattle-service-relief.png 1920w,/static/3527a7623553284c80cd062d0ff8c35e/6ac7d/seattle-service-relief.png 2268w" sizes="(max-width: 960px) 100vw, 960px" style="width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0" loading="lazy"/> 8 </span></p><p class="css-1bkk5q4"><em class="css-0">This project was inspired by <a href="https://chicagoservicerelief.com/" class="css-1od09yo">Chicago Service Relief</a> and supported with the blessing of <a href="https://twitter.com/spencertweedy/status/1239642482863935488" class="css-1od09yo">Spencer Tweedy</a>.</em></p><p class="css-1bkk5q4">Here are a few of the sites that have already launched using this project:</p><ul class="css-15rlv7r"><li class="css-0"><a href="http://seattleservicerelief.com/" class="css-1od09yo">Seattle Service Relief</a></li><li class="css-0"><a href="https://denverservicerelief.com/" class="css-1od09yo">Denver Service Relief</a></li><li class="css-0"><a href="https://austinservicerelief.com/" class="css-1od09yo">Austin Service Relief</a></li><li class="css-0"><a href="https://siouxfallsservicerelief.com/" class="css-1od09yo">Sioux Falls Service Relief</a></li><li class="css-0"><a href="https://ashevilleservicerelief.com/" class="css-1od09yo">Asheville Service Relief</a></li></ul><h3 class="css-170hkfz">How it all began <a name="beginnings" class="css-1od09yo"></a></h3><p class="css-1bkk5q4">On Monday, March 16th, Gatsby made the decision to close down for two days. Even though we're a completely remote company, we chose to do this to give our team members the time they needed to care for their families and adjust to the new world we found ourselves in.</p><p class="css-1bkk5q4">These are unprecedented times, and from my small home office in Omaha, Nebraska we didn't feel the ripples of what was to come. That eventing my phone vibrated, alerting me to a message from a close friend from Seattle, Washington. Things there were worse than I had imagined.</p><p class="css-1bkk5q4"><span class="gatsby-resp-image-wrapper" style="position:relative;display:block;margin-left:auto;margin-right:auto;max-width:567px">
9 <span class="gatsby-resp-image-background-image" style="padding-bottom:122.91666666666666%;position:relative;bottom:0;left:0;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAZCAYAAAAxFw7TAAAACXBIWXMAAAsSAAALEgHS3X78AAADsklEQVQ4y52Vy3LjRBSG9RRsobg8ATtegII9T8AOFlRRLCl2TFEFi+G6YAFDAUMNxWJITQYySSZxxpc4F19kO7bHsZ1Ytqy7ZMmyJVnSz1F78DiZyQW66qtut9q//tPndItTxB5ksQ9ZlmAYBkzT/E9YhKqbkDSL/eb63RZOOy0IvVM2MRqNFti2fYblZ4s1xFCz0ZVsWNYIHM61MIwwm81YPx675DpxYjHCMEQcx4ii6AyICUTUReDW1h4im91DOpNHaieH3O4B+EoDZb6OQrGCYrEKUVQhCBImkyl7aSK63GI2Nx9zzWYL7XYXQrsNkVD7fYw1DbaiQlc1KIoGTTMo5DE5DxeCF8GZlglnZKFkjLGlTZDTXaRkGynFQUc1YOk6dIKF9hx35xunKAplysDDDI9fVnL4814Gv60d4vZqHvXugD3TyHGyr8vuLhRUSdAcj1H49jtsf/gRKjc+Q/bTG3j08ScYVKowKIvnBS93qCos9Svr6/jmp1v4/f59/HjnDn69exeCKMKk2kxCDq8tSJuvaTpsqiFnZMPUad+oREbWiM2rqsb6a4e8mz/A3v4hDg6KyGVzqFZrkCQZ4mCIoShB6A8Zvh9cT/Do6DFqtQZqjWPwrSHqHRmtno7GqY62oMNxXEw9/2nNXRVyocCjXK6iyDeQKZ0gW+pgt9xFutBBnu9SUUtItkWW1WfCPg8TfPBgC+l0HtvbaWxtbiPzKItMOodsZhdpGm9u7mCHTlC5XKejOFk6G882Vtj1ehOtVpvCrqN70qOzmyTDpMxa1FusNwyLDr4DP5g7tLwY0jiG7MZQCJnGyRxziP/RbvEh3l0N8MF6gPfXArxHfJGfzR0WCmWUShWWmP39Ast2schTtusolWuoVJuo1prgqw3YFHLiI4ziBbOlnglubKSQkEplcXjIk2CZ3TDdjgBZ6EMTB4TIxvDdK91zpjlid55tO+w2CYKQTkUIdxpgo+Xjj4qHlSMP9+oeVh/PsHYc4e/jEBudCH+1Iqy3I5oPke5Fl++hTaX39u0Ar38f4I0fArz6tY8Xb/p4+UsPL9308MpXc14jXvjcw5s/+4iSkE8GEstup3NCnGI69RYloE9iqJRBhRBGERE/l55F69wneyjzPIa9PiQqXElS4D05FfNCja+Z9/laJhi88xbgOhcU6lOiS1h+NWfu72FCrlz6ILnuhL4bEwp7Sk49uhB8SlJwJcnaf//DGSSi0RXlOGPGmAm7Z4QvI1mT3PqSNP+u/wMWMFWRbmQTSgAAAABJRU5ErkJggg==');background-size:cover;display:block"></span> 10 <img class="gatsby-resp-image-image css-0" alt="Text message conversation with Drew where we discussed a new site for seattleservicerelief.com" title="Text message conversation with Drew where we discussed a new site for seattleservicerelief.com" src="/static/ebea22219fffbae4ef85a46e66829685/0a7db/conversation-drew.png" srcSet="/static/ebea22219fffbae4ef85a46e66829685/5243c/conversation-drew.png 240w,/static/ebea22219fffbae4ef85a46e66829685/ab158/conversation-drew.png 480w,/static/ebea22219fffbae4ef85a46e66829685/0a7db/conversation-drew.png 567w" sizes="(max-width: 567px) 100vw, 567px" style="width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0" loading="lazy"/> 11 </span></p><p class="css-1bkk5q4">Drew and I have worked together in the past and I've both built and managed several websites for him over the years. All of them have been powered by <a href="https://wordpress.org" class="css-1od09yo">WordPress</a>, but I knew that spinning up another WordPress website was going to be overkill for something this simple.</p><p class="css-1bkk5q4">That's where Gatsby came in. For the Seattle Service Relief site, I generated a new site using LekoArts' <a href="https://www.gatsbyjs.org/starters/LekoArts/gatsby-starter-minimal-blog/" class="css-1od09yo">Gatsby Minimal Blog</a> by running <code class="css-0">gatsby new</code> and customizing a quick site. I had used the same starter on my personal site which helped speed up the process. A few hours later I messaged him back with a link to the live site.</p><p class="css-1bkk5q4"><span class="gatsby-resp-image-wrapper" style="position:relative;display:block;margin-left:auto;margin-right:auto;max-width:553px"> 12 <span class="gatsby-resp-image-background-image" style="padding-bottom:77.08333333333333%;position:relative;bottom:0;left:0;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAACXBIWXMAAAsSAAALEgHS3X78AAACXklEQVQ4y4WUW2+bQBCF+cNR1aS339PHti9ppSpV+1I1aeLUdnwDzAJOSQyOL5g7GLNwOovj1KqcdKVPZ3Yxx7MzY0u+72M6ncK2bTiOgyAIEIYhfKHE3TLAeO7jdu6RehtdeLAXPmw3gENMliG0SURnESTsWWW1USep8Px8jReNAq8vCxxeFDgi3lB81Nggnr2i/cHPAh+tElJVVdiHWOG6wvE1xwc9w3uW4R1b3WtGZ5t4y1slRXde7DcE/ppSvkhDD7HvIvYWSIMlsshHtNzEeRwgT0Ks6KzMs/1XfjCnuOAl3KWH9lUHjctftbbaVxRfotvrYzqbwZncYTZfIMtWjxniIcOyLOF5HlRVha7rGI1GMAwDpmnWKmCMYTKZIM/z/YbbLHcNLcuqJ0G8KKZBqMB1XURRDDEtWZb935BzTi9ESJKk1jgWxAgpDsPoQcWY1YaPdXk3Q8YMdDo9KKqG/kBBr9uHoQ1hMg2aIoOpCqyRiZS+9ElDAaemXP++gaxoYPqoNh8MTZzKNs5kBz8GY5wObHzv2/QjSB6/8lPLWAIHJxxHXzkOiZffOJ59KfCJcUhJkkKWh9RFBkVhGA6NOlZVfXMma/fPNIxMCyXVtK5t+S9VjSQK2m73qEZ9tFodNJsd2ndpP8BFo4Wz8yYazS4arR6s8QxhmiMrSmRrjhVRK+3XZFZSiSTRuTRNa0RHy5LXui44Uvqwl3HME45pzOGEa4z9FW69HfwcN26CM32GE2UBSczPFpFtdD8GXhDRP0kEdhehb0fojOkmW253GMdo3wT4LM9xPHDxB6RYZgUtyn7RAAAAAElFTkSuQmCC');background-size:cover;display:block"></span> 13 <img class="gatsby-resp-image-image css-0" alt="Text message conversation with Drew where I announced that seattleservicerelief.com was life" title="Text message conversation with Drew where I announced that seattleservicerelief.com was life" src="/static/0d04c6477f1f02c4002a9825425e4172/c31e4/conversation-drew-finished-site.png" srcSet="/static/0d04c6477f1f02c4002a9825425e4172/5243c/conversation-drew-finished-site.png 240w,/static/0d04c6477f1f02c4002a9825425e4172/ab158/conversation-drew-finished-site.png 480w,/static/0d04c6477f1f02c4002a9825425e4172/c31e4/conversation-drew-finished-site.png 553w" sizes="(max-width: 553px) 100vw, 553px" style="width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0" loading="lazy"/> 14 </span></p><p class="css-1bkk5q4">Throughout Tuesday I started considering the Seattle Service Relief project and couldn't shake the push that suggested that there was something bigger that we could do with the website. Through the palpable feeling of uncertainty there was a chord strumming loudly with the desire to do something, anything to help as a company.</p><h3 class="css-170hkfz">Assembling a team <a name="team" class="css-1od09yo"></a></h3><p class="css-1bkk5q4">I am grateful to be surrounded by coworkers that are deeply passionate about helping others and, after a quick brainstorm with <a href="https://twitter.com/SchauDustin" class="css-1od09yo">Dustin Schau</a> (Head of Product, Gatsby), I decided to float the idea in our <strong class="css-0">#random</strong>
14 Slack channel at work to see if anyone else was interested in helping out:</p><p class="css-1bkk5q4"><span class="gatsby-resp-image-wrapper" style="position:relative;display:block;margin-left:auto;margin-right:auto;max-width:858px"> 15 <span class="gatsby-resp-image-background-image" style="padding-bottom:31.25%;position:relative;bottom:0;left:0;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAGCAYAAADDl76dAAAACXBIWXMAAAsSAAALEgHS3X78AAABG0lEQVQY041QSVIDMQyc/3+Ab3ADDuRC5UDxAIois5HJeHc8W2ZJJo0skjuu6mpZkmV1Jx8vD/j++oQQEtZaHI9HeO8YgeImBIo95wPFd465pmngnEPbtuj7HqfTCUnbBC7EYRHaWBjroSI7z3F8ZIyBJWilYLSCFIJY0yKCB47jiGVZkICOlBJVVTH2QqNS7gaLn1pxXtQ11w7aQ/oWwgZI10Bpy5/UVI8fJ+u6ojrsUZYF0jRFlqXEOxRFzpxnGfI8p3qJvCipt2YVEc7/yb9bEGUnuAKdG2FUoNU78mFARxIC2dB1HTdFSfFRvLc33+J9GHqWeblcEBdjD1ca+L7dYPv8iLfXJ+yyEsNyxTRN7Ms8z/jvOZ/P+AVYDsTlmPGXzwAAAABJRU5ErkJggg==');background-size:cover;display:block"></span> 16 <img class="gatsby-resp-image-image css-0" alt="Slack message that talke" title="Slack message that talke" src="/static/edd63553411bcec4d7da0ffae65550d5/bca77/conversation-slack-random.png" srcSet="/static/edd63553411bcec4d7da0ffae65550d5/5243c/conversation-slack-random.png 240w,/static/edd63553411bcec4d7da0ffae65550d5/ab158/conversation-slack-random.png 480w,/static/edd63553411bcec4d7da0ffae65550d5/bca77/conversation-slack-random.png 858w" sizes="(max-width: 858px) 100vw, 858px" style="width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0" loading="lazy"/> 17 </span></p><p class="css-1bkk5q4">The response I recieved was incredible. Folks from every team at Gatsby chimed in with their support and stepping up to contribute. Within ten minutes team members purchased a half-dozen domain names for their own local areas and a dedicated Slack channel was created to house our internal discussion.</p><style data-emotion-css="1gtwvjp">.css-1gtwvjp{border-left-color:var(--theme-ui-colors-primary,#6b46c1);border-left-style:solid;border-left-width:6px;margin-left:0;margin-right:0;padding-left:2rem;}.css-1gtwvjp p{font-style:italic;}</style><blockquote class="css-1gtwvjp"><p class="css-1bkk5q4">"BTW - It's this stuff that makes me proud to work here!" - Jim Ettig, VP Sales</p></blockquote><blockquote class="css-1gtwvjp"><p class="css-1bkk5q4">"Also, mad love to the entire Gatsby team - I am so fortunate to work at a company that cares so much about giving back to the community! Let me help pay it forward ð" - Armando Vasquez, Software Engineer</p></blockquote><p class="css-1bkk5q4">Inspired by the support, I built</p><h3 class="css-170hkfz">Building a prototype <a name="prototype" class="css-1od09yo"></a></h3><p class="css-1bkk5q4">At 6:30pm CST on March 18th, 8 members of the Gatsby team jumped on a Zoom call after-hours to discuss how we could help make this project a reality.</p><p class="css-1bkk5q4"><em class="css-0">A special thank-you to <a href="https://twitter.com/SchauDustin" class="css-1od09yo">Dustin Schau</a>, <a href="https://twitter.com/AishaBlake" class="css-1od09yo">Aisha Blake</a>, <a href="https://twitter.com/laurieontech" class="css-1od09yo">Laurie Barth</a>, <a href="https://twitter.com/amber1ey" class="css-1od09yo">Amberley Romo</a>, <a href="https://twitter.com/smthomas3" class="css-1od09yo">Shane Thomas</a>, <a href="https://twitter.com/gill_kyle" class="css-1od09yo">Kyle Gill</a>, <a href="https://twitter.com/nicoletibaldi" class="css-1od09yo">Nicole Tibaldi</a>, and <a href="https://twitter.com/UncleJGE" class="css-1od09yo">Jim Ettig</a> for giving up your evening to make this a reality.</em></p><p class="css-1bkk5q4"><strong class="css-0">We had a few key goals in mind:</strong></p><ol class="css-15rlv7r"><li class="css-0">Anyone should be able to launch their own site, regardless of their technical proficiency</li><li class="css-0">This meant that you shouldn't need to install Node or run anything locally to get started</li><li class="css-0">Hosting a site should be free, except for the cost of a domain name</li><li class="css-0">Data on the site should be editable using a third party data source based on a template</li><li class="css-0">There should be a way to collect submissions that can be approved and show up on the site</li><li class="css-0">Customization of the site should be possible, if someone wanted to do so</li></ol><p class="css-1bkk5q4">Over the next hour and a half, we developed a prototype using the following tool stack:</p><ul class="css-15rlv7r"><li class="css-0">Github, for hosting the code of the site</li><li class="css-0">Airtable, for managing data</li><li class="css-0">Gatsby, to generate the site based on Airtable data</li><li class="css-0">Netlify, for building and deploying the site</li></ul><p class="css-1bkk5q4">In our off-hours over the next 5 days, <strong class="css-0">6 team members made 76 commits, merged 11 pull requests, and made 19 releases</strong>. In addition, Amberley Romo <a href="https://github.com/service-relief/service-relief/blob/master/examples/starter/README.md" class="css-1od09yo">created an outstanding readme</a> for how to build your own Service Relief website.</p><h3 class="css-170hkfz">Get Involved <a name="help" class="css-1od09yo"></a></h3><p class="css-1bkk5q4">What started as a project to help a friend help his community has turned into a worldwide project to help small businesses affected by the mandated shutdowns around the world.</p><p class="css-1bkk5q4">Here are a few ways that you can get involved:</p><style data-emotion-css="1pkeg2w">.css-1pkeg2w{font-family:inherit;font-weight:700;line-height:1.25;margin:0;margin-bottom:0.25rem;font-size:1rem;color:var(--theme-ui-colors-heading,#000);margin-top:1rem;}@media screen and (min-width:640px){.css-1pkeg2w{font-size:1.25rem;}}@media screen and (min-width:768px){.css-1pkeg2w{font-size:1.5rem;}}</style><h5 class="css-1pkeg2w">1. Build your own Service Relief directory</h5><p class="css-1bkk5q4">In less than 30 minutes you can launch a new site for your local community using the Service Relief Project. You'll need a few things to get started, including:</p><ul class="css-15rlv7r"><li class="css-0">A domain name (i.e. <code class="css-0">[city]servicerelief.com</code>)</li><li class="css-0">A free account with GitHub, Netlify and Airtable</li></ul><p class="css-1bkk5q4">Detailed instructions are available at <a href="https://www.servicerelief.us/start/" class="css-1od09yo">https://www.servicerelief.us/start/</a> and you can contact me <a href="https://twitter.com/boborchard" class="css-1od09yo">directly via Twitter</a> <em class="css-0">(DMs are open!)</em> if you have any questions.</p><p class="css-1bkk5q4">I'll also be publishing my personal workflow for building and deploying your Service Relief Project website using Gatsby Cloud + Netlify soon.</p><h5 class="css-1pkeg2w">2. Share this project with others</h5><p class="css-1bkk5q4">Getting the word out to your network is the best way to raise awareness of this project. We'll be listing all published Service Relief websites on <a href="https://www.servicerelief.us/" class="css-1od09yo">https://www.servicerelief.us/</a>.</p><h5 class="css-1pkeg2w">3. Contribute to the project on Github</h5><p class="css-1bkk5q4">We've published this entire <a href="https://github.com/service-relief" class="css-1od09yo">project on Github</a> to open it up for the world to contribute back. Here's what you'll see there:</p><ul class="css-15rlv7r"><li class="css-0"><code class="css-0">service-relief</code> - this is the monorepo for the entire project, including the ServiceRelief.us website, Gatsby Theme, and Gatsby Starter. You'll want to fork and submit your pull requests against this repository.</li><li class="css-0"><code class="css-0">gatsby-starter-service-relief</code> - this is an automatically-generated Gatsby Starter based on the monorepo. When the monorepo is updated, this starter is automatically updated.</li></ul></section></div><style data-emotion-css="6x8z6y">.css-6x8z6y{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;
17-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;margin-top:8rem;color:var(--theme-ui-colors-secondary,#5f6c80);-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;border-top-style:solid;border-top-width:1px;border-top-color:var(--theme-ui-colors-divide,#cbd5e0);padding-top:1rem;}.css-6x8z6y a{color:var(--theme-ui-colors-secondary,#5f6c80);-webkit-text-decoration:none;text-decoration:none;}.css-6x8z6y a:hover{color:var(--theme-ui-colors-heading,#000);-webkit-text-decoration:underline;text-decoration:underline;}.css-6x8z6y a:focus{color:var(--theme-ui-colors-heading,#000);}@media screen and (min-width:640px){.css-6x8z6y{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}@media screen and (min-width:768px){.css-6x8z6y{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}</style><footer class="css-6x8z6y"><div>© <!-- -->2021<!-- --> by <!-- -->Bob Orchard<!-- -->. All rights reserved.</div><div>Original<!-- --> <a aria-label="Link to the theme's GitHub repository" href="https://github.com/LekoArts/gatsby-themes/tree/master/themes/gatsby-theme-minimal-blog" class="css-1od09yo">theme</a> <!-- -->by<!-- --> <a aria-label="Link to the theme author's website" href="https://www.lekoarts.de/en" class="css-1od09yo">LekoArts</a></div></footer></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div>
17<script> 18 19 20 if(true) { 21 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 22 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 23 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 24 })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); 25 } 26 if (typeof ga === "function") { 27 ga('create', 'UA-32999775-1', 'auto', {}); 28 29 30 31 32 33 }</script>
33<script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/the-service-relief-project";/*]]>*/</script>
33<script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-0538dbf6ed89868033ac.js"],"app":["/app-89bd8d1586be3a1660d4.js"],"component---cache-caches-gatsby-plugin-offline-app-shell-js":["/component---cache-caches-gatsby-plugin-offline-app-shell-js-0097d26fbd474b34ff9b.js"],"component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-blog-query-tsx":["/component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-blog-query-tsx-802ecf184c87d8bf003f.js"],"component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-homepage-query-tsx":["/component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-homepage-query-tsx-d0c08eb7d85f4adc1b12.js"],"component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-page-query-tsx":["/component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-page-query-tsx-49a2ba0765284ce3c024.js"],"component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-post-query-tsx":["/component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-post-query-tsx-a652c315e362f2f8ac68.js"],"component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-tag-query-tsx":["/component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-tag-query-tsx-b41f685ffbe997387842.js"],"component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-tags-query-tsx":["/component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-tags-query-tsx-e03fe8596a59c72121f4.js"]};/*]]>*/</script>
33<script src="/polyfill-0538dbf6ed89868033ac.js" nomodule=""></script>
33<script src="/component---node-modules-lekoarts-gatsby-theme-minimal-blog-core-src-templates-post-query-tsx-a652c315e362f2f8ac68.js" async=""></script>
33<script src="/aed2e917f30c051bccba91aa15989a75fd0bd633-b11480dc76e7f9331b36.js" async=""></script>
33<script src="/styles-c2fe8482057191dca484.js" async=""></script>
33<script src="/app-89bd8d1586be3a1660d4.js" async=""></script>
33<script src="/framework-376edee25eb5f5cd8260.js" async=""></script>
33<script src="/webpack-runtime-342fb45a84a3a1662802.js" async=""></script>
33</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.