<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Connor Reilly</title>
    <description>The latest articles on DEV Community by Connor Reilly (@connorrreilly).</description>
    <link>https://dev.to/connorrreilly</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F343881%2F8c61fadf-f2f3-47e2-8ba5-6d4ea93a61b5.jpg</url>
      <title>DEV Community: Connor Reilly</title>
      <link>https://dev.to/connorrreilly</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/connorrreilly"/>
    <language>en</language>
    <item>
      <title>Building a website + blog with Gridsome, Tailwindcss, and Contentful Pt. 2 of 2</title>
      <dc:creator>Connor Reilly</dc:creator>
      <pubDate>Sat, 23 May 2020 02:55:18 +0000</pubDate>
      <link>https://dev.to/connorrreilly/building-a-website-blog-with-gridsome-tailwindcss-and-contentful-pt-2-of-2-3p2i</link>
      <guid>https://dev.to/connorrreilly/building-a-website-blog-with-gridsome-tailwindcss-and-contentful-pt-2-of-2-3p2i</guid>
      <description>&lt;p&gt;You've found your way to part 2. If you've landed here by mistake, make sure you check out part one first. Next we will get to the fun part of building the actual pages, write our GraphQL queries, and styling with Tailwind.&lt;/p&gt;

&lt;h1&gt;
  
  
  Steps
&lt;/h1&gt;




&lt;ul&gt;
&lt;li&gt;Spin up our dev server&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To see what we've built thus far, run the following command in the terminal (make sure you're in your project directory):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    $ gridsome develop
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Going to &lt;a href="http://localhost:8080/"&gt;http://localhost:8080/&lt;/a&gt; should pull up our site (or at least what will be our site :)) &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Creating our Blog page&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Under the pages folder, add a file called Blog.vue.&lt;br&gt;
In the new Blog.vue file add the following code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    &amp;lt;template&amp;gt;
      &amp;lt;Layout&amp;gt;
      &amp;lt;div class="container grid grid-cols-1 justify-center px-auto mx-auto flex flex-wrap flex-col md:flex-row items-center "&amp;gt;
       &amp;lt;div class="mx-0 px-auto max-w-xl mx-auto"&amp;gt;
    &amp;lt;h1 class="text-2xl font-bold leading-tight mb-6 mt-4 text-center text-primary"&amp;gt;Blog&amp;lt;/h1&amp;gt;
    &amp;lt;ul&amp;gt;
      &amp;lt;li v-for="{ node } in $page.posts.edges" :key="node.id"&amp;gt;
    &amp;lt;g-link :to="node.path"&amp;gt;
       &amp;lt;div class=" border-solid border-2 border-primary max-auto-sm overflow-hidden shadow-lg p-20 m-4 rounded-md"&amp;gt;
    &amp;lt;h1 class="text-2xl text-primary font-bold"&amp;gt;  {{node.title}}  &amp;lt;/h1&amp;gt;
    &amp;lt;p class="pt-5 text-darkgray"&amp;gt; {{node.description}} &amp;lt;/p&amp;gt;
    &amp;lt;p class="font-normal text-sm pt-5 text-primary"&amp;gt; Posted on {{node.date}} &amp;lt;/p&amp;gt;
    &amp;lt;/div&amp;gt;
    &amp;lt;/g-link&amp;gt;
      &amp;lt;/li&amp;gt;

    &amp;lt;/ul&amp;gt;

    &amp;lt;/div&amp;gt;
    &amp;lt;/div&amp;gt;
      &amp;lt;/Layout&amp;gt;
    &amp;lt;/template&amp;gt;

    &amp;lt;page-query&amp;gt;
    query Posts {
      posts: allContentfulBlogPost {
    edges {
      node {
        id,
        title,
        description,
        date (format: "MMMM DD, YYYY"),
        path

      }
    }
      }
    }
    &amp;lt;/page-query&amp;gt;

    &amp;lt;script&amp;gt;
    export default {
      metaInfo: {
    title: 'Blog'
      }
    }
    &amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;In the URL, add /blog at the end of localhost:8080. You should see a listing of our blogs (assuming you've added a published at least one in Contentful). Clicking on any of the blogs will yield no results just yet. This is because we need a way for gridsome to read our markdown from Contentful. We also need to create our blog template. To do this, we will first add a tool called "Markdown-It." Run the following in the terminal: &lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;yarn add markdown-it
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;Creating the blog template&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We first need to add a template file in the src/templates directory called ContentfulBlogPost.vue. Within our new file, add the following code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    &amp;lt;template&amp;gt;
      &amp;lt;Layout&amp;gt;
    &amp;lt;div class="container justify-center content-center grid grid-cols-1 py-10 px-auto markdown px-6 xl:px-12 w-full max-w-3xl mx-auto xl:w-3/4"&amp;gt;
    &amp;lt;h1 class="text-2xl mb-2 text-center text-primary"&amp;gt;{{$page.post.title}}&amp;lt;/h1&amp;gt;
    &amp;lt;p class="font-light text-sm text-center text-gray mb-6"&amp;gt; Posted on {{$page.post.date}} &amp;lt;/p&amp;gt;
    &amp;lt;div id="body" class="max-auto-sm text-left" v-html="body" /&amp;gt;
    &amp;lt;/div&amp;gt;
      &amp;lt;/Layout&amp;gt;
    &amp;lt;/template&amp;gt;

    &amp;lt;page-query&amp;gt;
    query Post ($path: String!) {
      post: contentfulBlogPost (path: $path) {
        id,
        title,
        body,
        date (format: "MMMM DD, YYYY"),
        path
      }
    }
    &amp;lt;/page-query&amp;gt;

    &amp;lt;script&amp;gt;
      import MarkdownIt from "markdown-it";

      export default {
      computed: {
      body() {
        const md = new MarkdownIt();

        return md.render(this.$page.post.body);
        }
        }
      };
    &amp;lt;/script&amp;gt;

    &amp;lt;style&amp;gt;
    #body{
      color: #2d3748;
    }
    #body h1 {
      font-size: 20px;
      padding-bottom: 10px;
      padding-top: 10px;
    }

    #body hr{
      padding-bottom: 10px;
    }

    #body pre{
      background-color: #2d3748;
      color: #a0aec0;
      margin: 20px;
      padding: 20px;
      border-radius: 20px;
      display: flex;
      flex-wrap: wrap;

    }

    #body pre code{ 
      overflow: scroll;

    }
    #body ul li{
      list-style-position: inside;
      list-style-type: square;
    }
    #body ol{
      padding-top: 10px;
      padding-bottom:  10px ;
      font-size: 20px;
      list-style-type: decimal;
      list-style-position: inside;
    }
    &amp;lt;/style&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Great! Let's quickly recap some of what we've completed thus far: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Created a new girdsome project&lt;/li&gt;
&lt;li&gt;Signed up and created a Contentful account and blog&lt;/li&gt;
&lt;li&gt;Configured our Contentful connection to our website&lt;/li&gt;
&lt;li&gt;Added markdown-it so our website can read the markdown that Contentful sends it&lt;/li&gt;
&lt;li&gt;Created a Blog.vue page to view a list of all blogs&lt;/li&gt;
&lt;li&gt;Created a ContentfulBlogPost.vue template to see the individual blog posts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now we're going to add the finishing touches to our website. We're going to modify our Default.vue layout, update the Index.vue page (aka, the home page), and we will add an About.vue page. Let's get started.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Customizing our Header and Footer (Default.vue layout)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Our Default.vue layout is injected into every page on our site. So rather than having to code our header and footer on each page, we're going to add the code once in the Default.vue layout. This also makes it easy to maintain, should we want to make edits later on. Add the following code to your Default.vue layout file: &lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;template&amp;gt;
  &amp;lt;div class="layout"&amp;gt;
  &amp;lt;header class="md:flex md:items-center md:justify-around p-4 pb-0 shadow-lg md:pb-4"&amp;gt;

  &amp;lt;!-- Global navigation --&amp;gt;
  &amp;lt;nav class="flex flex-wrap items-center justify-around text-primary font-bold"&amp;gt;
&amp;lt;div class=""&amp;gt;
&amp;lt;ul class="list-reset md:flex md:items-center"&amp;gt;
  &amp;lt;li class="md:ml-4"&amp;gt;
    &amp;lt;g-link class="nav__link block no-underline py-2 hover:text-darkgray md:border-none md:p-0" to="/"&amp;gt;Home&amp;lt;/g-link&amp;gt;

  &amp;lt;/li&amp;gt;
  &amp;lt;li class="md:ml-4"&amp;gt;
    &amp;lt;g-link class="nav__link  block no-underline hover:text-darkgray py-2 text-grey-darkest md:border-none md:p-0" to="/about/"&amp;gt;About&amp;lt;/g-link&amp;gt;

  &amp;lt;/li&amp;gt;
  &amp;lt;li class="md:ml-4 inline-block leading-none invisible hover:text-darkgray lg:visible sm:invisible"&amp;gt;
    &amp;lt;a class="nav_link hover:text-2xl" href="your github url"&amp;gt; &amp;lt;font-awesome :icon="['fab', 'github']"/&amp;gt; &amp;lt;/a&amp;gt;
  &amp;lt;/li&amp;gt;
  &amp;lt;li class="md:ml-4 inline-block leading-none hover:text-darkgray invisible lg:visible sm:invisible "&amp;gt;
     &amp;lt;a class="nav_link" href="your twitter url"&amp;gt;&amp;lt;font-awesome :icon="['fab', 'twitter']"/&amp;gt;&amp;lt;/a&amp;gt;
  &amp;lt;/li&amp;gt;
&amp;lt;/ul&amp;gt;
&amp;lt;/div&amp;gt;

  &amp;lt;/nav&amp;gt;

  &amp;lt;!-- END Global navigation --&amp;gt;

  &amp;lt;/header&amp;gt;

&amp;lt;slot/&amp;gt;
 &amp;lt;footer class="mt-20 font-light text-gray w-full text-center border-grey p-4 pin-b text-primary"&amp;gt;
        &amp;lt;p class="text-sm"&amp;gt;Copyright © ADD YOUR NAME HERE 2020&amp;lt;/p&amp;gt;
        &amp;lt;div class="justify-between hover-blue space-x-3"&amp;gt;
        &amp;lt;a href="your github"&amp;gt; &amp;lt;font-awesome :icon="['fab', 'github']"/&amp;gt; &amp;lt;/a&amp;gt;
        &amp;lt;a href="your twitter url"&amp;gt;&amp;lt;font-awesome :icon="['fab', 'twitter']"/&amp;gt;&amp;lt;/a&amp;gt;
        &amp;lt;/div&amp;gt;
        &amp;lt;div&amp;gt;
          &amp;lt;p class="font-light text-sm"&amp;gt;Developed using Gridsome, Tailwindcss, and Contentful&amp;lt;/p&amp;gt;
        &amp;lt;/div&amp;gt;
    &amp;lt;/footer&amp;gt;
&amp;lt;/div&amp;gt;

&amp;lt;/template&amp;gt;

&amp;lt;static-query&amp;gt;
  query {
    metadata {
      siteName
  }
}
&amp;lt;/static-query&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;Coding our Index.vue page&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now, let's update our index.vue page so we have something nice to greet our visitors with. Add the following code to the Index.vue page: &lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;template&amp;gt;
  &amp;lt;Layout&amp;gt;
&amp;lt;g-image alt="" src="" width="" /&amp;gt;
&amp;lt;div class="pt-24"&amp;gt;

&amp;lt;div class="container pb-20 px-3 mx-auto flex flex-wrap flex-col md:flex-row items-center"&amp;gt;
    &amp;lt;!--Left Col--&amp;gt;
    &amp;lt;div class="flex flex-col w-full md:w-2/5 justify-center justify-between text-center md:text-left pb-10"&amp;gt;
        &amp;lt;p class="uppercase tracking-loose w-full text-primary"&amp;gt;Headline text&amp;lt;/p&amp;gt;
        &amp;lt;h1 class="py-4 text-5xl font-bold leading-tight w-full text-primary"&amp;gt;My Blog Site!!&amp;lt;/h1&amp;gt;
        &amp;lt;p class="leading-normal text-2xl pb-8 w-full text-primary"&amp;gt;Subtitle&amp;lt;/p&amp;gt;
        &amp;lt;g-link class="text-2xl justify-center" to="/blog"&amp;gt;&amp;lt;button class="bg-primary text-white font-bold  hover:bg-darkgray rounded-full my-6 py-4 px-8 shadow-lg "&amp;gt;Blog&amp;lt;/button&amp;gt;&amp;lt;/g-link&amp;gt;
    &amp;lt;/div&amp;gt;
    &amp;lt;!--Right Col--&amp;gt;
    &amp;lt;div class="w-full md:w-3/5 py-6 text-center"&amp;gt;
        &amp;lt;img class="w-full md:w-5/5 z-50" src="../images/undraw_feeling_proud_qne1.svg"&amp;gt;

    &amp;lt;/div&amp;gt;
&amp;lt;/div&amp;gt;
&amp;lt;/div&amp;gt;
  &amp;lt;section class="container mx-auto pt-6"&amp;gt;
&amp;lt;h1 class="text-2xl font-bold text-primary text-center"&amp;gt;Projects&amp;lt;/h1&amp;gt;

  &amp;lt;/section&amp;gt;    



  &amp;lt;/Layout&amp;gt;
&amp;lt;/template&amp;gt;

&amp;lt;script&amp;gt;
export default {
  metaInfo: {
title: 'Home'
  }
}
&amp;lt;/script&amp;gt;

&amp;lt;style&amp;gt;
.home-links a {
  margin-right: 1rem;
}
&amp;lt;/style&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;Coding our About.vue page&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Create a new file called About.vue under src/pages. Add in the following code, making sure to add information relevant to you in the spaces provided: &lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;template&amp;gt;
  &amp;lt;Layout&amp;gt;
  &amp;lt;div class="container justify-center px-auto mx-auto flex flex-wrap items-center"&amp;gt;
  &amp;lt;div class="justify-center px-auto mx-auto text-center"&amp;gt;
&amp;lt;h1 class="text-2xl leading-tight mb-6 mt-4 text-primary"&amp;gt;About Me&amp;lt;/h1&amp;gt;
&amp;lt;!--
--&amp;gt;
&amp;lt;div class=" text-darkgray"&amp;gt; 
&amp;lt;p&amp;gt;Add your info here
&amp;lt;/p&amp;gt;
&amp;lt;br&amp;gt;
&amp;lt;p&amp;gt;Add your info here
&amp;lt;/p&amp;gt;
&amp;lt;br&amp;gt;
&amp;lt;p&amp;gt;Add your info here
&amp;lt;/p&amp;gt;
&amp;lt;/div&amp;gt;
  &amp;lt;/div&amp;gt;
  &amp;lt;/div&amp;gt;
  &amp;lt;/Layout&amp;gt;
&amp;lt;/template&amp;gt;

&amp;lt;script&amp;gt;
export default {
  metaInfo: {
title: 'About'
  }
}
&amp;lt;/script&amp;gt;

&amp;lt;page-query&amp;gt;
query Person {
 person: allContentfulPerson {
  edges {
    node {
      id,
      shortBio

      }
    }
  }
}
&amp;lt;/page-query&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Congratulations! You've made it all the way through. At this point you should have all the parts needed to have a personal blog/resume site up and running with Gridsome and Contentful. With a few modifications and styling to your own brand, you can have it in tip top shape!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;To view the production version, go &lt;a href="https://connorreilly.netlify.app/"&gt;HERE&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;To view the Github repo, go &lt;a href="https://github.com/reillyc3/blog"&gt;HERE&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>gridsome</category>
      <category>contentful</category>
      <category>tailwindcss</category>
      <category>graphql</category>
    </item>
    <item>
      <title>Building a website + blog with Gridsome, Tailwindcss, and Contentful Pt. 1 of 2</title>
      <dc:creator>Connor Reilly</dc:creator>
      <pubDate>Sat, 23 May 2020 02:55:03 +0000</pubDate>
      <link>https://dev.to/connorrreilly/building-a-website-blog-with-gridsome-tailwindcss-and-contentful-pt-1-of-2-3370</link>
      <guid>https://dev.to/connorrreilly/building-a-website-blog-with-gridsome-tailwindcss-and-contentful-pt-1-of-2-3370</guid>
      <description>&lt;h1&gt;
  
  
  What We're Building
&lt;/h1&gt;




&lt;p&gt;In this two part tutorial, I'll be walking you through how to build a blog site. The technologies we will be utilizing include Gridsome, Tailwindcss, and Contentful (our headless CMS). We will get up and running in part one, complete with our connection with Contentful. Part two dives into the pages, templates, layouts, and finally, the styling with Tailwind.  &lt;/p&gt;

&lt;h1&gt;
  
  
  Steps
&lt;/h1&gt;




&lt;p&gt;Tools Needed: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Yarn &lt;/li&gt;
&lt;li&gt;Code editor (I use Visual Studio Code) &lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Install the Gridsome CLI with the following command:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ yarn global add @gridsome/cli
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Create our Gridsome project&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Run the following commands in your terminal:&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ gridsome create my-blog
$ cd my-blog
$ yarn install
$ yarn develop
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;ol&gt;
&lt;li&gt;Set up Contentful account&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Contentful is our headless CMS that we will be using to store our content. Head over to &lt;a href="//www.contentful.com"&gt;Contentful&lt;/a&gt; and create an account. Once your account is created, create a new space. For this, you can create a new blank space, or use the "Blog" example space. For ease of use, I'll be choosing the blog example space. &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Integrating Contentful with our Gridsome project&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Let's install the Contenful Gridsome plugin: &lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ yarn add @gridsome/source-contentful
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;In the root of the project, add a file called &lt;code&gt;.env&lt;/code&gt;. Within that file, paste the following contents:&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;CONTENTFUL_SPACE="&amp;lt;YOUR_CONTENTFUL_SPACE&amp;gt;"
CONTENTFUL_TOKEN="&amp;lt;YOUR_CONTENTFUL_TOKEN&amp;gt;"
CONTENTFUL_ENVIRONMENT="&amp;lt;YOUR_CONTENTFUL_ENVIRONMENT&amp;gt;"
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;You'll notice that there are environmental variables that are specific to your Contentful space. To find these, log into Contentful and under settings, click "API Keys." Here, you will find your Space ID, Access Token, and Environment (defaults to "master"). &lt;/p&gt;

&lt;p&gt;Open your gridsome.config.js file and paste in the following code: &lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;module.exports = {
  siteName: 'YOUR NAME HERE',
  templates: {
   ContentfulBlogPost: '/blog/:slug'
  },
  plugins: [
    {
    use: "@gridsome/source-contentful",
      options: {
      space: process.env.CONTENTFUL_SPACE,
      accessToken: process.env.CONTENTFUL_TOKEN,
      host: "cdn.contentful.com",
      environment: process.env.CONTENTFUL_ENVIRONMENT,
      typename: "Contentful"
    }
}
],
 css: {
  loaderOptions: {
    postcss: {
      plugins: [
        tailwindcss
      ],
    },
  },
 }
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;ol&gt;
&lt;li&gt;Installing Tailwindcss and adding the Tailwind config file&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;First let's add Tailwindcss: &lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm i tailwindcss
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Add the config file: &lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx tailwind init
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Now create a new folder under src called /assets/css and a file in the css folder called global.css. In global.css add the following: &lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@tailwind base;
@tailwind components;
@tailwind utilities;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;We now need to import the .css file to our /main.js file. &lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import "./assets/css/global.css";
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Lastly, we will require tailwind in our gridsome.config.js file. Add the following to the very top of the file:&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const tailwindcss = require("tailwindcss")
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Congrats, you've completed part one! Cheers to that. Now lets get to the pages, layouts, and styling in &lt;a href="https://dev.to/connorrreilly/building-a-website-blog-with-gridsome-tailwindcss-and-contentful-pt-2-of-2-3p2i"&gt;&lt;strong&gt;part two&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>gridsome</category>
      <category>tailwindcss</category>
      <category>netlify</category>
      <category>vue</category>
    </item>
  </channel>
</rss>
