[
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "26VLOlEw8AkSstFjWmB5BC",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.876Z",
"updatedAt": "2024-01-13T21:42:06.876Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Challenge Accepted, One Developer, 10 Projects, 100 Days of Gatsby",
"tags": [
"Gatsby",
"React"
],
"date": "2020-04-20T00:00:00.000Z",
"url": "https://www.gatsbyjs.org/blog/2020-04-20-paulie-scanlons-journey-of-100-days/",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "6Ry01rZE7EQT912qAQOwGD",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.854Z",
"updatedAt": "2024-01-13T21:42:06.854Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Gatsby Recipes, What's All the Fuss About?",
"tags": [
"Gatsby",
"Gatsby Recipes",
"React"
],
"date": "2020-05-21T00:00:00.000Z",
"url": "https://www.gatsbyjs.org/blog/2020-05-21-gatsby-recipes/",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "7AT3OpH8tyND2MyIBHUsmK",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.835Z",
"updatedAt": "2024-01-13T21:42:06.835Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Roll Your Own Comments With Gatsby and Fauna",
"tags": [
"Gatsby",
"React",
"Fauna"
],
"date": "2020-05-21T00:00:00.000Z",
"url": "https://css-tricks.com/roll-your-own-comments-with-gatsby-and-Fauna/",
"publication": "CSS Tricks",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/css-tricks-logo_l83ga7.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "1GPNh8UfNB3POpwVTFgRAn",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.818Z",
"updatedAt": "2024-01-13T21:42:06.818Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Add Playful Animated SVG Reactions to a Gatsby Blog",
"tags": [
"Gatsby",
"React",
"GSAP",
"SVG"
],
"date": "2020-07-16T00:00:00.000Z",
"url": "https://www.netlify.com/blog/2020/07/16/add-playful-animated-svg-reactions-to-a-gatsby-blog/",
"publication": "Netlify",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1678220344/paulie.dev/Logos/netlify-logo_joepbr.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "2XfW8WvxCCBQCL8DZmT8sw",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.802Z",
"updatedAt": "2024-01-13T21:42:06.802Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Gatsby Cloud is Your (Good) Friend",
"tags": [
"Gatsby",
"Gatsby Cloud",
"Gatsby Themes",
"React",
"Shopify"
],
"date": "2020-09-01T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/gatsby-cloud-good-friend",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "2BPFCUA1Zo9AoSM7DCGIVL",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.784Z",
"updatedAt": "2024-01-13T21:42:06.784Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Hacktoberfest Spotlight A More ‘Polite’ MDX Embed Plugin",
"tags": [
"Gatsby",
"React",
"MDX"
],
"date": "2020-10-13T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/hacktoberfest-spotlight-mdx-embed/",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "5bqhJDTOx7bwZo8JeR4z8u",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.765Z",
"updatedAt": "2024-01-13T21:42:06.765Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Storybook Addon - MDX Embed",
"tags": [
"Storybook",
"React",
"MDX"
],
"date": "2020-12-10T00:00:00.000Z",
"url": "https://medium.com/storybookjs/mdx-embed-for-storybook-9a9f33891875",
"publication": "Storybook",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077183/paulie.dev/Logos/storybook-logo_xkoacl.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "47CClT0ijZf8VX3XNFzBHS",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.750Z",
"updatedAt": "2024-01-13T21:42:06.750Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Bottoms Up: Gatsby File System Route API + Bums = BumHub",
"tags": [
"Gatsby",
"React",
"GitHub REST"
],
"date": "2021-01-28T00:00:00.000Z",
"url": "https://gatsbyjs.com/blog/bottoms-up-gatsby-file-system-route-api-bums-bumhub",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "5YgBSSyhnPv4XuXo5N1mkf",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.734Z",
"updatedAt": "2024-01-13T21:42:06.734Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Voices of Gatsby - Looking for The Lighthouse",
"tags": [
"Gatsby"
],
"date": "2021-03-12T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/gatsby-voices-paul-scanlon/",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "1dEW3JSrZYR2ylmAoCGAFO",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.713Z",
"updatedAt": "2024-01-13T21:42:06.713Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Gatsby Cloud - Better, Faster... Greener?",
"tags": [
"Gatsby",
"React"
],
"date": "2021-04-15T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/gatsby-cloud-better-faster-greener",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "arXna62Wdh8KPOBC3CU7e",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.695Z",
"updatedAt": "2024-01-13T21:42:06.695Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Getting Started with Gatsby Source WordPress - Choose Your Own Adventure",
"tags": [
"Gatsby",
"React"
],
"date": "2021-04-09T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/getting-started-with-gatsby-source-wordpress-choose-your-own-adventure/",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "3EsFKzplHQIDNUoIoIwN96",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.678Z",
"updatedAt": "2024-01-13T21:42:06.678Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Shaping the Future of Headless WordPress",
"tags": [
"Gatsby",
"React"
],
"date": "2021-04-01T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/headless-wordpress-future-shapes",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "mSnNxFk8DcA1uIaM7Z3Pb",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.585Z",
"updatedAt": "2024-01-13T21:42:06.585Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "MDX Embedded Images with the All-New Gatsby Image Plugin",
"tags": [
"Gatsby",
"React"
],
"date": "2021-04-13T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/mdx-embedded-gatsby-image/",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "1VKkCwqPtcUlwKzeAfU0Yh",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.562Z",
"updatedAt": "2024-01-13T21:42:06.562Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Gatsby Serverless Functions And The International Space Station",
"tags": [
"Gatsby",
"Gatsby Serverless Functions",
"React",
"three.js",
"react-three-fiber"
],
"date": "2021-07-26T00:00:00.000Z",
"url": "https://www.smashingmagazine.com/2021/07/gatsby-serverless-functions-international-space-station/",
"publication": "Smashing Magazine",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/smashing-magazine-logo_rhvh4j.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "2ySik2lFW8sAAxyG3KmAN",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.412Z",
"updatedAt": "2024-01-13T21:42:06.412Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How We Made the Gatsby 500 Bottles Giveaway",
"tags": [
"Gatsby",
"Gatsby Serverless Functions",
"React",
"three.js",
"react-three-fiber"
],
"date": "2021-07-07T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/how-we-made-the-gatsby-500-bottles-giveaway/",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "8vk9s1HO1nIUCY1HdTznU",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.388Z",
"updatedAt": "2024-01-13T21:42:06.388Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Monetize Open-Source Software With Gatsby Serverless Functions And Stripe",
"tags": [
"Gatsby",
"Gatsby Serverless Functions",
"Storybook",
"Stripe",
"MDX Embed",
"Motion Graphics"
],
"date": "2021-09-17T00:00:00.000Z",
"url": "https://www.smashingmagazine.com/2021/09/monetize-open-source-software-gatsby-functions-stripe/",
"publication": "Smashing Magazine",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/smashing-magazine-logo_rhvh4j.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "av29T7w9G4nRaOe7mkzBl",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.371Z",
"updatedAt": "2024-01-13T21:42:06.371Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Building An API With Gatsby Serverless Functions",
"tags": [
"Gatsby",
"Gatsby Serverless Functions",
"React"
],
"date": "2021-10-19T00:00:00.000Z",
"url": "https://www.smashingmagazine.com/2021/10/building-api-gatsby-functions/",
"publication": "Smashing Magazine",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/smashing-magazine-logo_rhvh4j.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "3nlqIm1dkQWBH2FwqFtG1Q",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.352Z",
"updatedAt": "2024-01-13T21:42:06.352Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Gatsby FuncJam `21 - The Winners",
"tags": [
"Gatsby",
"Gatsby Serverless Functions",
"React"
],
"date": "2021-10-28T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/gatsby-funcjam-21-the-winners",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "3GR6N8nFcMOMRF21vTj2Vy",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.336Z",
"updatedAt": "2024-01-13T21:42:06.336Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Content Querying with Gatsby + Contentful",
"tags": [
"Gatsby",
"React"
],
"date": "2021-11-22T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/content-querying-with-gatsby-contentful",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "5dyudPumh1eX8KwOQ0xe9N",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.319Z",
"updatedAt": "2024-01-13T21:42:06.319Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Deploy4Swag - Use the best Gatsby ever to get free goodies!",
"tags": [
"Gatsby",
"React"
],
"date": "2021-11-18T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/deploy4swag-use-the-best-gatsby-ever-to-get-free-goodies",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "qnneLdAWwxWiDSFFUOPeA",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.296Z",
"updatedAt": "2024-01-13T21:42:06.296Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How To Use The Contentful Rich Text Field with Gatsby",
"tags": [
"Gatsby",
"React",
"Contentful"
],
"date": "2021-11-02T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/how-to-use-the-contentful-rich-text-field-with-gatsby",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "7dFDqnH9Gpuqy8Q5yeA2dl",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.267Z",
"updatedAt": "2024-01-13T21:42:06.267Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "A Quick Start Guide To Gatsby and Contentful",
"tags": [
"Gatsby",
"React",
"Contentful"
],
"date": "2021-11-15T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/a-quick-start-guide-to-gatsby-and-contentful",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "v3nV7V51yZJbBiYNbavxP",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.249Z",
"updatedAt": "2024-01-13T21:42:06.249Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Become a Data Champion with Gatsby",
"tags": [
"Gatsby",
"React",
"JavaScript",
"Tailwind"
],
"date": "2021-12-04T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/become-a-data-champion-with-gatsby",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4wxL3mVesLm9I3YnHQpZKO",
"type": "Entry",
"createdAt": "2024-01-13T21:42:06.220Z",
"updatedAt": "2024-01-13T21:42:06.220Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Fetch Data from the Unsplash API and render using DSG",
"tags": [
"Gatsby",
"React",
"DSG",
"JavaScript",
"Tailwind"
],
"date": "2021-12-17T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/fetch-data-from-the-unsplash-api-and-render-using-dsg",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "7wbdWkRRunt9K4JCEJDxSq",
"type": "Entry",
"createdAt": "2024-01-13T21:41:55.150Z",
"updatedAt": "2024-01-13T21:41:55.150Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Fetch data from the New York Times API and render using SSG",
"tags": [
"Gatsby",
"React",
"SSG",
"JavaScript",
"Tailwind"
],
"date": "2021-12-09T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/fetch-data-from-the-new-york-times-api-using-ssg",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "674IAWeNDaQHy5qI004Z2o",
"type": "Entry",
"createdAt": "2024-01-13T21:41:55.131Z",
"updatedAt": "2024-01-13T21:41:55.131Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Fetch data from the US National Weather Service API and render using SSR",
"tags": [
"Gatsby",
"React",
"SSR",
"JavaScript",
"Tailwind"
],
"date": "2021-12-05T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/fetch-data-from-the-us-national-weather-service-api-using-ssr",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "3S0jSJOW1sDftRcDAq814U",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.728Z",
"updatedAt": "2024-01-13T21:41:54.728Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Gatsby Plugin Not Working, But Why?",
"tags": [
"Gatsby",
"React",
"Gatsby Plugins"
],
"date": "2021-12-02T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/gatsby-plugin-not-working-but-why",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "7qo0BdV0ZCVXCFd1KlmEEh",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.691Z",
"updatedAt": "2024-01-13T21:41:54.691Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Building GatsbyConf 2022",
"tags": [
"Gatsby",
"React",
"three.js",
"react-three-fiber",
"Contentful",
"Tailwind"
],
"date": "2022-01-06T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/building-gatsbyconf-2022",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "2aQ5KqJT5Uh1v8D8K4iDA0",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.673Z",
"updatedAt": "2024-01-13T21:41:54.673Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Performance Optimization for three.js Web Animations",
"tags": [
"Gatsby",
"React",
"three.js",
"react-three-fiber"
],
"date": "2022-01-23T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/performance-optimization-for-three-js-web-animations",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "1TKgVMPKhNPRNwADjDHlXo",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.655Z",
"updatedAt": "2024-01-13T21:41:54.655Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How to Add Custom Fonts to Gatsby",
"tags": [
"Gatsby",
"React"
],
"date": "2022-03-31T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/how-to-add-custom-fonts-to-gatsby",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "2BReYNXX8qvCCrp9bz0tr2",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.636Z",
"updatedAt": "2024-01-13T21:41:54.636Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How to Add Google Analytics gtag to Gatsby Using Partytown 🎉",
"tags": [
"Gatsby",
"React",
"JavaScript",
"Partytown",
"Google Analytics"
],
"date": "2022-03-23T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/how-to-add-google-analytics-gtag-to-gatsby-using-partytown",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "01E42CxmrJwmYzlr8FESy0",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.618Z",
"updatedAt": "2024-01-13T21:41:54.618Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How to Migrate from Netlify Functions to Gatsby Serverless Functions on Gatsby Cloud",
"tags": [
"Gatsby",
"React",
"Gatsby Serverless Functions",
"Gatsby Cloud"
],
"date": "2022-04-06T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/how-to-migrate-from-netlify-functions-to-gatsby-functions-on-gatsby-cloud",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "25g15uJ3BRYUNSjFMwldk2",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.601Z",
"updatedAt": "2024-01-13T21:41:54.601Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Building Rise of the Robots",
"tags": [
"Gatsby",
"React",
"Contentful",
"Rive",
"Motion Graphics",
"Tailwind"
],
"date": "2022-05-23T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/building-rise-of-the-robots",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "THppcvCApO9UhnEK354Vj",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.583Z",
"updatedAt": "2024-01-13T21:41:54.583Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Building Rise of the Robots with Gatsby and Contentful",
"tags": [
"Gatsby",
"React",
"Contentful",
"Rive",
"Tailwind"
],
"date": "2022-07-05T00:00:00.000Z",
"url": "https://www.contentful.com/blog/2022/07/05/building-rise-of-the-robots-with-gatsby-and-contentful/",
"publication": "Contentful",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658078362/paulie.dev/Logos/contentful-logo_gzxkei.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "5lhIt21CSEa5Zjqk7o9noI",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.566Z",
"updatedAt": "2024-01-13T21:41:54.566Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How to Use Google Sheets as a Database with React and Serverless Functions",
"tags": [
"Gatsby",
"Next.js",
"Gatsby Serverless Functions",
"React",
"JavaScript",
"Tailwind"
],
"date": "2022-10-17T00:00:00.000Z",
"url": "https://thenewstack.io/how-to-use-google-sheets-as-a-database-with-react-and-ssr/",
"publication": "The New Stack",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1665235257/paulie.dev/Logos/tns-logo_miu6qk.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "167RRb2y0ZmGiW50CPcHWq",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.550Z",
"updatedAt": "2024-01-13T21:41:54.550Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "What is Gatsby's Valhalla Content Hub?",
"tags": [
"Gatsby",
"Remix"
],
"date": "2022-11-16T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/what-is-gatsbys-valhalla-content-hub",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "5k5UKjlMLrswZ882DP9sgn",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.532Z",
"updatedAt": "2024-01-13T21:41:54.532Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How to Use Function Props with Gatsby's Slice API",
"tags": [
"Gatsby",
"React"
],
"date": "2022-11-14T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/how-to-use-function-props-with-gatsbys-slice-api",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "6aGlndKoO3yuxO3esi4ggm",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.513Z",
"updatedAt": "2024-01-13T21:41:54.513Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Converting Cloud Provider Regions Into Country Flags",
"tags": [
"JavaScript"
],
"date": "2023-02-17T00:00:00.000Z",
"url": "https://www.cockroachlabs.com/blog/converting-cloud-provider-regions-into-country-flags/",
"publication": "Cockroach Labs",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1676626221/paulie.dev/Logos/cockroach-logo_g89u6r.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4ZUukK1sgjgYZMqDCAP838",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.495Z",
"updatedAt": "2024-01-13T21:41:54.495Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "What's New In Gatsby 2022?",
"tags": [
"Gatsby",
"Gatsby Serverless Functions",
"SSR",
"React",
"JavaScript",
"MDX",
"Tailwind"
],
"date": "2022-09-20T00:00:00.000Z",
"url": "https://www.smashingmagazine.com/2022/09/new-gatsby-2022/",
"publication": "Smashing Magazine",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/smashing-magazine-logo_rhvh4j.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "39EBRLiiarCzVM0deFniUE",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.478Z",
"updatedAt": "2024-01-13T21:41:54.478Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How To Create Dynamic Donut Charts With TailwindCSS And React",
"tags": [
"HTML",
"JavaScript",
"React",
"Tailwind",
"CSS",
"SVG"
],
"date": "2023-03-07T00:00:00.000Z",
"url": "https://www.smashingmagazine.com/2023/03/dynamic-donut-charts-tailwind-css-react/",
"publication": "Smashing Magazine",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/smashing-magazine-logo_rhvh4j.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "6PiynUvjQxmf9Ls3HvzQ3b",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.457Z",
"updatedAt": "2024-01-13T21:41:54.457Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Putting Gears In Motion: Animating Cars With HTML And SVG",
"tags": [
"HTML",
"SVG"
],
"date": "2023-02-16T00:00:00.000Z",
"url": "https://www.smashingmagazine.com/2023/02/putting-gears-motion-animating-cars-with-html-svg/",
"publication": "Smashing Magazine",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/smashing-magazine-logo_rhvh4j.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4lrtBO0lDyyoDbyJBTlKhj",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.438Z",
"updatedAt": "2024-01-13T21:41:54.438Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "The Distance from Data to You in Edge Computing",
"tags": [
"Next.js",
"Vercel Serverless Functions",
"SSR",
"React",
"JavaScript",
"AWS Lambda",
"Serverless"
],
"date": "2023-03-19T00:00:00.000Z",
"url": "https://thenewstack.io/the-distance-from-data-to-you-in-edge-computing/",
"publication": "The New Stack",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1665235257/paulie.dev/Logos/tns-logo_miu6qk.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "31xoZx6H4PLuNMydCOChMy",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.422Z",
"updatedAt": "2024-01-13T21:41:54.422Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How to Build SVG Line Charts with React, SSR and Tailwind CSS",
"tags": [
"Gatsby",
"Next.js",
"Gatsby Serverless Functions",
"SSR",
"React",
"JavaScript",
"SVG",
"Tailwind"
],
"date": "2022-10-08T00:00:00.000Z",
"url": "https://thenewstack.io/how-to-build-svg-line-charts-with-react-ssr-and-tailwind-css/",
"publication": "The New Stack",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1665235257/paulie.dev/Logos/tns-logo_miu6qk.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4WJ8lgTr8ZEvDMQw8sZJx3",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.402Z",
"updatedAt": "2024-01-13T21:41:54.402Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Gatsby 5 Upgrade. Say No to YOLO",
"tags": [
"Gatsby",
"React"
],
"date": "2022-11-08T00:00:00.000Z",
"url": "https://www.gatsbyjs.com/blog/gatsby-5-upgrade-say-no-to-yolo",
"publication": "Gatsby",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/gatsby-logo_dgbkjm.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "2X4hAibNaNaNZkaBwUOy1b",
"type": "Entry",
"createdAt": "2024-01-13T21:41:54.198Z",
"updatedAt": "2024-01-13T21:41:54.198Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "What is the CockroachDB Cloud API and why should you use It?",
"tags": [
"Next.js",
"React",
"React Query",
"Tailwind",
"NextAuth",
"CockroachDB",
"CockroachDB Cloud API"
],
"date": "2023-04-06T00:00:00.000Z",
"url": "https://www.cockroachlabs.com/blog/what-is-the-cockroachdb-cloud-api/",
"publication": "Cockroach Labs",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1676626221/paulie.dev/Logos/cockroach-logo_g89u6r.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "7J5Z4cAvHs8LqhQbiP8wJG",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.896Z",
"updatedAt": "2024-01-13T21:41:53.896Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "The Art of Data Residency and Application Architecture",
"tags": [
"Next.js",
"React",
"React Query",
"Tailwind",
"CockroachDB",
"AWS Lambda"
],
"date": "2023-05-17T00:00:00.000Z",
"url": "https://www.cockroachlabs.com/demos/demo-data-residency/",
"publication": "Cockroach Labs",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1676626221/paulie.dev/Logos/cockroach-logo_g89u6r.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "7wgT9U7xakTSOWKLu6WsWm",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.818Z",
"updatedAt": "2024-01-13T21:41:53.818Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "SPAs and React: You Don’t Always Need Server-Side Rendering",
"tags": [
"React",
"Vite"
],
"date": "2023-11-01T00:00:00.000Z",
"url": "https://thenewstack.io/spas-and-react-you-dont-always-need-server-side-rendering/",
"publication": "The New Stack",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1665235257/paulie.dev/Logos/tns-logo_miu6qk.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "WDiz26NM8E8mXBBjqG8lG",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.800Z",
"updatedAt": "2024-01-13T21:41:53.800Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How to Build a Server-Side React App Using Vite and Express",
"tags": [
"React",
"Vite",
"Express"
],
"date": "2023-11-06T00:00:00.000Z",
"url": "https://thenewstack.io/how-to-build-a-server-side-react-app-using-vite-and-express/",
"publication": "The New Stack",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1665235257/paulie.dev/Logos/tns-logo_miu6qk.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "42uUQrZwrzUQIFHk5hfGNy",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.780Z",
"updatedAt": "2024-01-13T21:41:53.780Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How Qwik’s Astro Integration Beats Both React and Vanilla JS",
"tags": [
"Astro",
"JavaScript",
"React",
"Qwik"
],
"date": "2023-11-23T00:00:00.000Z",
"url": "https://thenewstack.io/how-quiks-astro-integration-beats-both-react-and-vanilla-js/",
"publication": "The New Stack",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1665235257/paulie.dev/Logos/tns-logo_miu6qk.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "5zue4w0zyPaFRI9Nl1UrPn",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.763Z",
"updatedAt": "2024-01-13T21:41:53.763Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How to Create Animated GIFs from GSAP Animations",
"tags": [
"GSAP",
"modern-gif"
],
"date": "2023-11-30T00:00:00.000Z",
"url": "https://www.sitepoint.com/create-animated-gifs-from-gsap-animations/",
"publication": "SitePoint",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1701473095/paulie.dev/Logos/sitepoint-logo_vtomod.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "5UsLOL7E3Rv2MfVfntm9k0",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.744Z",
"updatedAt": "2024-01-13T21:41:53.744Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How to use Postgres at the Edge",
"tags": [
"Neon",
"Edge Functions"
],
"date": "2023-09-19T00:00:00.000Z",
"url": "https://neon.tech/blog/how-to-use-postgres-at-the-edge",
"publication": "Neon",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1695653167/paulie.dev/Logos/neon-logo_ymrzrs.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4p932xYMFVHcPznKYfuVAh",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.724Z",
"updatedAt": "2024-01-13T21:41:53.724Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "I’m in an Open Relationship with Remix",
"tags": [
"React",
"Remix",
"Vite"
],
"date": "2023-11-21T00:00:00.000Z",
"url": "https://thenewstack.io/im-in-an-open-relationship-with-remix/",
"publication": "The New Stack",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1665235257/paulie.dev/Logos/tns-logo_miu6qk.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "5G3ns2LIWUk0nBCGckcWq1",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.707Z",
"updatedAt": "2024-01-13T21:41:53.707Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How to Create a Multi-Region Node.js Lambda API",
"tags": [
"Serverless",
"CockroachDB",
"AWS Lambda"
],
"date": "2023-06-17T00:00:00.000Z",
"url": "https://thenewstack.io/tutorial-how-to-create-a-multi-region-node-js-lambda-api/",
"publication": "The New Stack",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1665235257/paulie.dev/Logos/tns-logo_miu6qk.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4L64eTqbLLUTjLB6WqNdJO",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.674Z",
"updatedAt": "2024-01-13T21:41:53.674Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Roll Your Own Analytics With Astro, Vercel Edge Functions and Neon",
"tags": [
"Astro",
"Edge Functions",
"Neon"
],
"date": "2023-10-03T00:00:00.000Z",
"url": "https://neon.tech/blog/roll-your-own-analytics-with-astro-vercel-edge-functions-and-neon",
"publication": "Neon",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1695653167/paulie.dev/Logos/neon-logo_ymrzrs.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "3CpyCVWQDU0nIbKmtP6wkg",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.655Z",
"updatedAt": "2024-01-13T21:41:53.655Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Getting Started With Neon Branching",
"tags": [
"Neon",
"Edge Functions"
],
"date": "2023-09-19T00:00:00.000Z",
"url": "https://www.smashingmagazine.com/2023/09/getting-started-with-neon-branching/",
"publication": "Smashing Magazine",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1658077182/paulie.dev/Logos/smashing-magazine-logo_rhvh4j.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "7pRG4g0pZDjgju6uMLSfMl",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.638Z",
"updatedAt": "2024-01-13T21:41:53.638Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "How to Use Astro with a Sprinkling of React",
"tags": [
"Astro",
"React",
"Netlify"
],
"date": "2023-10-24T00:00:00.000Z",
"url": "https://thenewstack.io/how-to-use-astro-with-a-sprinkling-of-react/",
"publication": "The New Stack",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1665235257/paulie.dev/Logos/tns-logo_miu6qk.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "50ecrRMA8JjmEJGEE626R0",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.618Z",
"updatedAt": "2024-01-13T21:41:53.618Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "article",
"title": "Recreating Shopify’s BFCM Globe Using react-globe.gl",
"tags": [
"JavaScript",
"React",
"three.js"
],
"date": "2023-12-15T00:00:00.000Z",
"url": "https://thenewstack.io/recreating-shopifys-bfcm-globe-using-react-globe-gl/",
"publication": "The New Stack",
"author": "Paul Scanlon",
"logo": "https://res.cloudinary.com/www-paulie-dev/image/upload/v1665235257/paulie.dev/Logos/tns-logo_miu6qk.png"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "7eISwO4DfzkmaFsZhktUwn",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.601Z",
"updatedAt": "2024-01-13T21:41:53.601Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "demo",
"title": "Paulie API",
"tags": [
"Gatsby",
"React",
"JavaScript",
"Gatsby Serverless Functions",
"Tailwind"
],
"date": "2021-06-11T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4HsFftx1dvHD4h0db5z8zf",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.583Z",
"updatedAt": "2024-01-13T21:41:53.583Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "demo",
"title": "500 Bottles",
"tags": [
"Gatsby",
"React",
"JavaScript",
"three.js",
"react-three-fiber",
"Shopify"
],
"date": "2021-07-07T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "2xUbGziXHRaXsFcOHZRhai",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.562Z",
"updatedAt": "2024-01-13T21:41:53.562Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "demo",
"title": "GatsbyConf 2022",
"tags": [
"Gatsby",
"React",
"JavaScript",
"three.js",
"react-three-fiber",
"Motion One",
"SVG"
],
"date": "2022-03-02T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4Xb6GeXXx9bCcI3dDmwNjn",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.545Z",
"updatedAt": "2024-01-13T21:41:53.545Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "demo",
"title": "Edge",
"tags": [
"Next.js",
"React",
"three.js",
"react-three-fiber",
"React Query",
"Tailwind",
"NextAuth",
"pg-promise",
"CockroachDB"
],
"date": "2023-03-19T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4sDcwxkQmW0CTRIE4M36KA",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.526Z",
"updatedAt": "2024-01-13T21:41:53.526Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "demo",
"title": "Rise of the Robots",
"tags": [
"Gatsby",
"React",
"JavaScript",
"Rive",
"Tailwind"
],
"date": "2022-06-01T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "5G12nMLj999Bco1ccYGIkY",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.505Z",
"updatedAt": "2024-01-13T21:41:53.505Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "opensource",
"title": "MDX Embed",
"tags": [
"React",
"JavaScript",
"MDX"
],
"date": "2020-04-30T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "7y0MRGYIauNKrpgcupNr3n",
"type": "Entry",
"createdAt": "2024-01-13T21:41:53.478Z",
"updatedAt": "2024-01-13T21:41:53.478Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "demo",
"title": "The Art of Data Residency and Application Architecture",
"tags": [
"Next.js",
"React",
"React Query",
"Tailwind",
"CockroachDB",
"AWS"
],
"date": "2023-05-16T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "33e7xHXYaFHJooVFG1BVvh",
"type": "Entry",
"createdAt": "2024-01-13T21:41:44.154Z",
"updatedAt": "2024-01-13T21:41:44.154Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "gatsby-theme-gatstats",
"tags": [
"Gatsby",
"Gatsby Themes"
],
"date": "2019-11-12T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "6vcWlvnTYjQMfDVztSlxTd",
"type": "Entry",
"createdAt": "2024-01-13T21:41:44.137Z",
"updatedAt": "2024-01-13T21:41:44.137Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "demo",
"title": "How to use Postgres at the Edge",
"tags": [
"Next.js",
"React",
"React Query",
"Tailwind",
"Neon",
"Edge Functions",
"three.js",
"react-three-fiber"
],
"date": "2023-09-19T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "73pJekbTAoZbTV6Pi3LhOc",
"type": "Entry",
"createdAt": "2024-01-13T21:41:44.119Z",
"updatedAt": "2024-01-13T21:41:44.119Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "opensource",
"title": "Cloud Regions Country Flags",
"tags": [
"JavaScript"
],
"date": "2023-02-07T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4scDKq68cwEuP1FbKoyifh",
"type": "Entry",
"createdAt": "2024-01-13T21:41:44.100Z",
"updatedAt": "2024-01-13T21:41:44.100Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "demo",
"title": "What Is the CockroachDB Cloud API?",
"tags": [
"Next.js",
"React",
"React Query",
"Tailwind",
"NextAuth",
"CockroachDB",
"CockroachDB Cloud API"
],
"date": "2023-04-06T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4GYlfIqFLzFSt1bIPgACkl",
"type": "Entry",
"createdAt": "2024-01-13T21:41:44.083Z",
"updatedAt": "2024-01-13T21:41:44.083Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "gatsby-remark-sticky-table",
"tags": [
"Gatsby",
"Gatsby Plugins"
],
"date": "2019-12-14T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "iRxuzqVJbo1AF4FStvj0R",
"type": "Entry",
"createdAt": "2024-01-13T21:41:44.064Z",
"updatedAt": "2024-01-13T21:41:44.064Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "gatsby-mdx-routes",
"tags": [
"Gatsby",
"Gatsby Plugins",
"MDX"
],
"date": "2019-12-24T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "934Q3AIjCTz9T6ln1xIyd",
"type": "Entry",
"createdAt": "2024-01-13T21:41:44.047Z",
"updatedAt": "2024-01-13T21:41:44.047Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "gatsby-recipe-storybook-js",
"tags": [
"Gatsby",
"Gatsby Recipes",
"Storybook",
"JavaScript"
],
"date": "2020-04-26T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "2qNfQ2gtWkcBuPd0b0to4A",
"type": "Entry",
"createdAt": "2024-01-13T21:41:44.029Z",
"updatedAt": "2024-01-13T21:41:44.029Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "gatsby-mdx-embed",
"tags": [
"Gatsby",
"Gatsby Plugins",
"MDX"
],
"date": "2020-01-06T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "2KrcDkzl0iQZ8czC4jcnG5",
"type": "Entry",
"createdAt": "2024-01-13T21:41:44.011Z",
"updatedAt": "2024-01-13T21:41:44.011Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Intersection Observer",
"tags": [
"React",
"JavaScript"
],
"date": "2020-04-15T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "27MZ6VAOPkM7vG5fkzH0KG",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.992Z",
"updatedAt": "2024-01-13T21:41:43.992Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "gatsby-remark-grid-system",
"tags": [
"Gatsby",
"Gatsby Plugins"
],
"date": "2019-12-27T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "69kgd5zHBazT0nonLg0YYi",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.972Z",
"updatedAt": "2024-01-13T21:41:43.972Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "gatsby-plugin-prop-shop",
"tags": [
"Gatsby",
"Gatsby Plugins",
"React",
"JavaScript"
],
"date": "2020-02-15T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4m8tE29ArtUn6rhagdpzzm",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.955Z",
"updatedAt": "2024-01-13T21:41:43.955Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Gatsby or Theme UI Link",
"tags": [
"React",
"Gatsby",
"JavaScript",
"Theme UI"
],
"date": "2020-04-17T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4yTty9yTIopyvijobhGy5K",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.939Z",
"updatedAt": "2024-01-13T21:41:43.939Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "100DaysOfGatsby",
"tags": [
"Gatsby"
],
"date": "2020-01-01T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "6pwznK52uBnR22OXkF0PUo",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.874Z",
"updatedAt": "2024-01-13T21:41:43.874Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "100DaysOfGatsby - The Roundup",
"tags": [
"Gatsby"
],
"date": "2020-04-09T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "HqWKlxuTtVrM1BMpT1QhZ",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.854Z",
"updatedAt": "2024-01-13T21:41:43.854Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "gatsby-theme-terminal",
"tags": [
"Gatsby",
"Gatsby Themes"
],
"date": "2020-02-28T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4zVZzCy3FDInskaP86nqz4",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.838Z",
"updatedAt": "2024-01-13T21:41:43.838Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "MDX Embedded Images",
"tags": [
"React",
"Gatsby",
"JavaScript",
"MDX"
],
"date": "2020-04-20T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4mIYINT6qlKK4tdC8afFBK",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.732Z",
"updatedAt": "2024-01-13T21:41:43.732Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Officially published",
"tags": [
"Gatsby"
],
"date": "2020-04-21T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "2Z7LkRxRSX8jvxDsQ8nDuT",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.347Z",
"updatedAt": "2024-01-13T21:41:43.347Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Gatsby CLI Recipes",
"tags": [
"Gatsby",
"Gatsby Recipes",
"Storybook",
"JavaScript",
"TypeScript"
],
"date": "2020-05-08T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "Ww8SGIsRJ3bJ0uQv2o5vC",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.329Z",
"updatedAt": "2024-01-13T21:41:43.329Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Skin UI",
"tags": [
"Gatsby",
"Theme UI",
"Fauna"
],
"date": "2020-04-01T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4LXoKXz24YZCDHWOj2o2HD",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.310Z",
"updatedAt": "2024-01-13T21:41:43.310Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "MDX Embed Intersection Observer",
"tags": [
"React",
"JavaScript",
"Gatsby",
"Gatsby Plugins",
"MDX"
],
"date": "2020-05-07T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "2HKBzOPAVcKwWUPo8bzLi4",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.288Z",
"updatedAt": "2024-01-13T21:41:43.288Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "gatsby-recipe-storybook-ts",
"tags": [
"Gatsby",
"Gatsby Recipes",
"Storybook",
"TypeScript"
],
"date": "2020-05-04T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4adQHoFJk5IoJgZhiRBh7z",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.270Z",
"updatedAt": "2024-01-13T21:41:43.270Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "First Ever Donation",
"tags": [
"Gatsby",
"Gatsby Plugins",
"MDX"
],
"date": "2020-06-04T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "6fYbZRi8FzuJso8G4OwmU5",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.253Z",
"updatedAt": "2024-01-13T21:41:43.253Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "SVG Icon Systems",
"tags": [
"React",
"JavaScript",
"SVG"
],
"date": "2020-04-17T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4BJwSyjPssGNv7LKhhuBhz",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.233Z",
"updatedAt": "2024-01-13T21:41:43.233Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "TypeScript Theme UI Link",
"tags": [
"React",
"Gatsby",
"TypeScript",
"Theme UI"
],
"date": "2020-04-24T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "74rvado6Ym8hbfi06e26N3",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.217Z",
"updatedAt": "2024-01-13T21:41:43.217Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Everything's a box",
"tags": [
"React",
"Theme UI"
],
"date": "2020-07-06T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "6YNhY3S4H9zgD78UnOs41L",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.199Z",
"updatedAt": "2024-01-13T21:41:43.199Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Roll Your Own Comments",
"tags": [
"React",
"JavaScript",
"Gatsby",
"Fauna",
"Apollo",
"GraphQL",
"Netlify"
],
"date": "2020-05-21T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4IPs8nO7jpybo36wGZwRnQ",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.179Z",
"updatedAt": "2024-01-13T21:41:43.179Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "React SVG Bubble Slider",
"tags": [
"React",
"GSAP",
"SVG"
],
"date": "2020-06-16T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4oq4v68AmdfKe7AVqhFSVl",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.161Z",
"updatedAt": "2024-01-13T21:41:43.161Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Gatsby SEO Component",
"tags": [
"Gatsby",
"JavaScript"
],
"date": "2020-08-24T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "2Ny6AYODgyElm6UIUtcOKt",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.145Z",
"updatedAt": "2024-01-13T21:41:43.145Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "React hooks and matter.js",
"tags": [
"React",
"JavaScript",
"matter.js"
],
"date": "2020-08-03T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "3rMf0l40gal7SzKJRcBpyC",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.128Z",
"updatedAt": "2024-01-13T21:41:43.128Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Use Netlify Functions and the GitHub REST API to add Data Visualization to your Gatsby blog",
"tags": [
"JavaScript",
"React",
"Gatsby",
"SVG",
"Netlify Functions",
"GitHub REST"
],
"date": "2021-01-06T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4VURLr3DIBPriyQbjFdMeq",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.109Z",
"updatedAt": "2024-01-13T21:41:43.109Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Understanding Theme UI: 1 - Jsx Pragma",
"tags": [
"JavaScript",
"React",
"Theme UI"
],
"date": "2021-01-12T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "1QykKAN56vbo60jpBlWXcE",
"type": "Entry",
"createdAt": "2024-01-13T21:41:43.091Z",
"updatedAt": "2024-01-13T21:41:43.091Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Create an SVG Doughnut Chart from scratch for your Gatsby blog",
"tags": [
"JavaScript",
"React",
"SVG",
"Gatsby",
"CSS"
],
"date": "2021-01-11T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "4KsxrBkVrhx6LxaCEW6894",
"type": "Entry",
"createdAt": "2024-01-13T21:41:42.999Z",
"updatedAt": "2024-01-13T21:41:42.999Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Use Netlify Functions and the Twitter API v2 as a CMS for your Gatsby blog",
"tags": [
"JavaScript",
"React",
"Gatsby",
"Netlify Functions",
"Twitter API v2"
],
"date": "2020-11-17T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "7p0vYEJsK1gZQcjIpOwdOf",
"type": "Entry",
"createdAt": "2024-01-13T21:41:06.200Z",
"updatedAt": "2024-01-13T21:41:06.200Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Styled Components Style Objects",
"tags": [
"React",
"JavaScript",
"Styled Components"
],
"date": "2020-08-13T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "3cLXy2pv9X6fgoa03XZnVo",
"type": "Entry",
"createdAt": "2024-01-13T21:41:00.605Z",
"updatedAt": "2024-01-13T21:41:00.605Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Best Bits 2020 ...",
"tags": [
"React",
"Gatsby",
"Gatsby Cloud",
"JavaScript",
"TypeScript",
"Shopify",
"Styled Components",
"Storybook",
"Jest",
"Enzyme",
"Testing Library"
],
"date": "2020-08-05T00:00:00.000Z",
"author": "Paul Scanlon"
}
},
{
"metadata": {
"tags": []
},
"sys": {
"space": {
"sys": {
"type": "Link",
"linkType": "Space",
"id": "6kxk1w7tuvtj"
}
},
"id": "1o78bqPdXv5JuWwvT9fyGp",
"type": "Entry",
"createdAt": "2024-01-13T21:40:56.057Z",
"updatedAt": "2024-01-13T21:40:56.057Z",
"environment": {
"sys": {
"id": "master",
"type": "Link",
"linkType": "Environment"
}
},
"revision": 1,
"contentType": {
"sys": {
"type": "Link",
"linkType": "ContentType",
"id": "blogPost"
}
},
"locale": "en-US"
},
"fields": {
"type": "post",
"title": "Storybook - An alternative approach",
"tags": [
"Storybook",
"JavaScript",
"React"
],
"date": "2020-10-27T00:00:00.000Z",
"author": "Paul Scanlon"
}
}
]