<?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: SRMKZILLA</title>
    <description>The latest articles on DEV Community by SRMKZILLA (@srmkzilla).</description>
    <link>https://dev.to/srmkzilla</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%2Forganization%2Fprofile_image%2F2843%2F36f18b18-08f7-4c08-9ba8-7fc3585e1ca9.png</url>
      <title>DEV Community: SRMKZILLA</title>
      <link>https://dev.to/srmkzilla</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/srmkzilla"/>
    <language>en</language>
    <item>
      <title>Getting to know Vim</title>
      <dc:creator>Aniruddha Chatterjee</dc:creator>
      <pubDate>Tue, 11 Aug 2020 12:39:13 +0000</pubDate>
      <link>https://dev.to/srmkzilla/getting-to-know-vim-2jpk</link>
      <guid>https://dev.to/srmkzilla/getting-to-know-vim-2jpk</guid>
      <description>&lt;p&gt;If I am to answer the question “What is Vim?”, I would like to quote the &lt;a href="https://www.vim.org/"&gt;official website&lt;/a&gt; of Vim,&lt;/p&gt;

&lt;p&gt;&lt;em&gt;“Vim is a highly configurable text editor for efficiently creating and changing any kind of text. It is included as “vi” with most UNIX systems and with Apple OS X.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Vim is a &lt;strong&gt;ubiquitous&lt;/strong&gt; text editor, that is it is available for all operating systems such as Windows, Macintosh and various distributions of Linux. And as you may have guessed (or might not!), Vim is a text editor, that is, it is used to edit text.&lt;br&gt;
​&lt;br&gt;
Let us see how we can use Vim to create and edit a simple text file. For the demonstration, I will be using Vim on my Windows 10 laptop.&lt;br&gt;
​&lt;/p&gt;

&lt;h3&gt;
  
  
  Installing Vim
&lt;/h3&gt;

&lt;p&gt;​&lt;br&gt;
Vim can be download from their official website (click here for the downloads page).&lt;br&gt;
​&lt;br&gt;
There is a self-installing executable file for Windows which we shall use. Click on the link to download the setup.&lt;br&gt;
​&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xs1-jiq---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/3840/1%2AvTxuaPWU0eb_IkJlM4FjdQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xs1-jiq---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/3840/1%2AvTxuaPWU0eb_IkJlM4FjdQ.png" alt=""&gt;&lt;/a&gt;&lt;br&gt;
​&lt;br&gt;
After the file has been downloaded, run the setup. We shall not be changing any settings in the installer as of now. The installer will now install Vim with the default settings.&lt;br&gt;
​&lt;br&gt;
If you are greeted with an installation finished message, voila! You have successfully installed Vim on Windows.&lt;br&gt;
​&lt;/p&gt;

&lt;h3&gt;
  
  
  Starting Vim
&lt;/h3&gt;

&lt;p&gt;​&lt;br&gt;
Starting Vim is pretty easy. Open up a Command Prompt window and enter “vim”. You will be greeted with the Vim welcome screen.&lt;br&gt;
​&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MGm2kNjI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/3802/1%2AlV6BqFCLcZWghdN_ovjY5A.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MGm2kNjI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/3802/1%2AlV6BqFCLcZWghdN_ovjY5A.png" alt=""&gt;&lt;/a&gt;&lt;br&gt;
​&lt;br&gt;
If you are getting an error that “vim is not recognised as an internal or external command”, you need to add Vim to your Path Variable. This is a &lt;a href="https://helpdeskgeek.com/windows-10/add-windows-path-environment-variable/"&gt;handy tutorial&lt;/a&gt; on how to do so. You need to mention the path where &lt;em&gt;vim.exe&lt;/em&gt; was installed. If you went with the default installation, it should be “&lt;em&gt;C:\Program Files (x86)\Vim\vim82” *where *vim82&lt;/em&gt; can change depending on your Vim version. Restart the Command Prompt terminal and all Vim commands should now work.&lt;br&gt;
​&lt;br&gt;
Vim has an inbuilt tutorial to get started. Type in “&lt;strong&gt;&lt;em&gt;vimtutor&lt;/em&gt;&lt;/strong&gt;” and hit enter to start the tutorial.&lt;br&gt;
​&lt;br&gt;
We shall now be learning how to create, edit and save a simple text file with Vim.&lt;br&gt;
​&lt;/p&gt;

&lt;h3&gt;
  
  
  Working with a Simple Text File
&lt;/h3&gt;

&lt;p&gt;​&lt;br&gt;
To create a new file, we follow the syntax “&lt;strong&gt;&lt;em&gt;vim &lt;/em&gt;&lt;/strong&gt;”&lt;br&gt;
​&lt;br&gt;
So to create a new text file, open up your command prompt and navigate to the location where you want your file to be created. Now type “&lt;strong&gt;&lt;em&gt;vim helloWorld.txt&lt;/em&gt;&lt;/strong&gt;” and hit enter.&lt;br&gt;
​&lt;br&gt;
Vim will now create a text file with the name &lt;em&gt;HelloWorld&lt;/em&gt; and will open the Vim editor for you to write your content. Vim has many &lt;em&gt;modes&lt;/em&gt; in which we can work. Vim will now open in &lt;em&gt;Normal Mode&lt;/em&gt;, which is used for simple editing purposes. We need to switch to &lt;em&gt;Insert Mode&lt;/em&gt;, where we can insert/edit data in the file. Press “&lt;strong&gt;&lt;em&gt;i&lt;/em&gt;&lt;/strong&gt;” to switch to* Insert Mode.*&lt;br&gt;
​&lt;br&gt;
We will just write in the line “This is a Hello World Text Document.”&lt;br&gt;
​&lt;br&gt;
Now that we have our file ready, we need to save the contents and quit the editor.&lt;br&gt;
​&lt;br&gt;
To do this, we first need to switch to &lt;em&gt;Command Line Mode&lt;/em&gt; to be able to issue instructions to the editor. Pressing colon (:) in the &lt;em&gt;Normal Mode&lt;/em&gt; switches to the &lt;em&gt;Command Line Mode&lt;/em&gt;.&lt;br&gt;
​&lt;br&gt;
To switch from &lt;em&gt;Insert Mode *into *Normal Mode&lt;/em&gt;, press “&lt;strong&gt;&lt;em&gt;Esc&lt;/em&gt;&lt;/strong&gt;”. Now to move to &lt;em&gt;Command Line Mode&lt;/em&gt;, we shall use the colon (:).&lt;br&gt;
​&lt;br&gt;
To save a file and quit, we use the command “&lt;strong&gt;&lt;em&gt;:wq&lt;/em&gt;&lt;/strong&gt;”. And to quit the editor without saving the file, we use “&lt;strong&gt;&lt;em&gt;:q!&lt;/em&gt;&lt;/strong&gt;”.&lt;br&gt;
​&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BXq4Uyeb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/3786/1%2AdERSCeVfAIZ3xxfW6rM5AQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BXq4Uyeb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/3786/1%2AdERSCeVfAIZ3xxfW6rM5AQ.png" alt=""&gt;&lt;/a&gt;&lt;br&gt;
​&lt;br&gt;
We shall save this file. So type in “&lt;strong&gt;&lt;em&gt;:wq&lt;/em&gt;&lt;/strong&gt;” and press enter. And you have successfully created your first text file with Vim!&lt;br&gt;
​&lt;/p&gt;

&lt;h3&gt;
  
  
  A Bit about Vim Modes
&lt;/h3&gt;

&lt;p&gt;​&lt;br&gt;
If you are a bit confused about modes in Vim, don’t worry. Let us summarise what we learnt about modes.&lt;br&gt;
​&lt;br&gt;
Modes are the various states of Vim editor which have their own purposes. In this demonstration, we learnt about three modes-&lt;br&gt;
​&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Normal Mode&lt;/strong&gt;: It is used for navigation around the file and for simple edits. Vim focuses heavily on &lt;em&gt;editing&lt;/em&gt; than &lt;em&gt;writing&lt;/em&gt;. Since Vim is used a lot by programmers who do more of &lt;em&gt;editing&lt;/em&gt; as compared to &lt;em&gt;writing&lt;/em&gt;, Vim opens up in the Normal Mode by default.
​&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Insert Mode: **This mode is used for text editing. Every keystroke in this mode is displayed on the editor screen. To enter into this use, we can use the key “&lt;/strong&gt;&lt;em&gt;i&lt;/em&gt;&lt;strong&gt;”. To switch back to Normal Mode, we can use the “&lt;/strong&gt;&lt;em&gt;Esc&lt;/em&gt;**” key.
​&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Command Line Mode: **This mode is used for operations like saving the file and quitting the editor. Pressing the colon “&lt;/strong&gt;&lt;em&gt;:&lt;/em&gt;**” key in Normal Mode takes us to the Command Line Mode.
​
There are other modes in Vim, which we shall not be discussing at this time.
​
### Doing More with Vim
​&lt;/li&gt;
&lt;li&gt;You can learn more about Vim with their inbuilt tutorial. It can be accessed by typing “&lt;strong&gt;&lt;em&gt;vimtutor&lt;/em&gt;&lt;/strong&gt;” from your Command Prompt Terminal.
​&lt;/li&gt;
&lt;li&gt;There is an interactive tutorial to learn Vim. It can be found at &lt;a href="https://vim-adventures.com/"&gt;VIM Adventures&lt;/a&gt;.
​&lt;/li&gt;
&lt;li&gt;To know more about Vim Modes and how to work with them, there is a &lt;a href="https://guide.freecodecamp.org/vim/modes/"&gt;handy guide from FreeCodeCamp&lt;/a&gt;.
​
That is it. You learnt how to install Vim on Windows, learnt a bit about Modes and created your first text file in Vim. Vim is a very powerful editor and is used by a large number of programmers. Since Vim focuses more on editing than writing, learning Vim would definitely prove to be useful for you. Happy learning!&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>vim</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Create a Medium like Lazy Image Loading Effect Using Gatsby.js in 5 minutes</title>
      <dc:creator>Shrey Sachdeva</dc:creator>
      <pubDate>Tue, 11 Aug 2020 07:56:03 +0000</pubDate>
      <link>https://dev.to/srmkzilla/create-a-medium-like-lazy-image-loading-effect-using-gatsby-js-in-5-minutes-9d</link>
      <guid>https://dev.to/srmkzilla/create-a-medium-like-lazy-image-loading-effect-using-gatsby-js-in-5-minutes-9d</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Ensuring that users get the best experience with images on the web can be a tedious task. However, with Gatsby, we can leverage the power of &lt;a href="https://www.gatsbyjs.org/packages/gatsby-image/"&gt;gatsby-image&lt;/a&gt; to get these speedy, optimised images with a little setup and a rich toolset.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You probably already saw this effect here on Medium, the blurry images with a nice “fade in” animation being changed by their respective originals. This effect is called Progressive/Lazy Image Loading.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;What is Lazy Image Loading?&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Lazy Image Loading is a practice that’s been around for a decade and for good reason: images are usually the heaviest downloads on a given webpage and avoiding unloading images that are never seen saves the user bandwidth. With this technique, you can sharply load the images on your website when required, and use blurred placeholders while the original image is being lazy-loaded. And when it finishes loading, you can do a smooth transition to the original image. It’ll help you shave-off hours of work, use fewer resources, improve performance and build a meaningful experience for the user.&lt;/p&gt;

&lt;p&gt;Gatsby does a great job optimizing images. With plugins and some configuration, you can setup image preloading and the blur-up effect in just a matter of minutes. This helps with a smoother user experience that is faster and way, way better!&lt;/p&gt;

&lt;h2&gt;
  
  
  Let’s code right in!
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Step 1: Install Dependencies
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;If you used the CLI, you’ll have to install these packages withyarn. If you used npm install, then continue to use npm so you don't mix the package installers. I'll be using npm for the rest of this demo.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;To install &lt;a href="https://www.gatsbyjs.org/packages/gatsby-image/"&gt;gatsby-image &lt;/a&gt;with npm run:&lt;/p&gt;

&lt;p&gt;npm install gatsby-image&lt;/p&gt;

&lt;p&gt;We’ll also need to install two more npm packages that are required to process the images.&lt;/p&gt;

&lt;p&gt;npm install gatsby-transformer-sharp gatsby-plugin-sharp&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;You can read more about how these packages work, &lt;a href="https://www.gatsbyjs.org/packages/gatsby-transformer-sharp/"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Step 2: Configure Gatsby
&lt;/h3&gt;

&lt;p&gt;Once these packages are installed we need to include them manually in our gatsby-config.js file.&lt;/p&gt;

&lt;p&gt;Include the following snippet to the file:&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;module.exports = {
  siteMetadata: {
    title: 'Gatsby Default Starter'
  },
  plugins: [
    **{
      resolve: `gatsby-source-filesystem`,
      options: {
        path: `${__dirname}/src/images`,
        name: 'images'
      }
    },**
    {
      resolve: `gatsby-source-filesystem`,
      options: {
        name: `pages`,
        path: `${__dirname}/src/pages`,
      }
     },

    **'gatsby-transformer-sharp',
    'gatsby-plugin-sharp',
 **],
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;This snippet will also allow us to create file nodes from our images that can be used later to query the /images folder inside the /src directory using GraphQL.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 3: Writing queries in GraphQL
&lt;/h3&gt;

&lt;p&gt;You can navigate to GraphiQL which is an integrated development environment (IDE). It’s a powerful (and all-around awesome) tool you’ll use often while building Gatsby websites.&lt;/p&gt;

&lt;p&gt;You can access it when your site’s development server is running — normally at &lt;a href="http://GraphiQL%20is%20the%20GraphQL%20integrated%20development%20environment%20(IDE).%20It%E2%80%99s%20a%20powerful%20(and%20all-around%20awesome)%20tool%20you%E2%80%99ll%20use%20often%20while%20building%20Gatsby%20websites.%20%20You%20can%20access%20it%20when%20your%20site%E2%80%99s%20development%20server%20is%20running%E2%80%94normally%20at%20http://localhost:8000/___graphql"&gt;http://localhost:8000/___graphql&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I have added 4 &lt;a href="https://www.dropbox.com/sh/xmvkmcronshzis0/AABanbmtca-8e9Ef0LcghAz-a?dl=0"&gt;images&lt;/a&gt; inside my /src/images directory and I will write the following query to get the contents of the /images folder.&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{
  images: allFile {
    edges {
      node {
        relativePath
        name
        childImageSharp {
          fluid {
            srcSet
            src
            srcWebp
            base64
            originalImg
            originalName
            presentationHeight
            presentationWidth
            sizes
            srcSetWebp
            tracedSVG
            aspectRatio
          }
        }
      }
    }
  }
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Writing this query will return a string that you can see in the response column. This essentially means that Gatsby is able to find your image and process it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2VqJDWrn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/3840/1%2AZCNyJCaecfk-203XjIf0dA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2VqJDWrn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://cdn-images-1.medium.com/max/3840/1%2AZCNyJCaecfk-203XjIf0dA.png" alt="http://localhost:8000/__graphql"&gt;&lt;/a&gt;&lt;em&gt;&lt;a href="http://localhost:8000/__graphql"&gt;http://localhost:8000/__graphql&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;You can read more about how Gastby uses GraphQL &lt;a href="https://www.gatsbyjs.org/docs/graphql/"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Step 4: Creating Components
&lt;/h3&gt;

&lt;p&gt;Now that we have the query string, we can use it in our component. I will create a image.js component inside /src/components directory.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Here, we need to import &lt;em&gt;StaticQuery&lt;/em&gt; as well as &lt;em&gt;graphql&lt;/em&gt; from &lt;em&gt;gatsby&lt;/em&gt; and &lt;em&gt;Img *from *gatsby-image&lt;/em&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { StaticQuery, graphql } from "gatsby"
import Img from "gatsby-image"
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;We’ll now add the query that we made earlier to this component. Our React component should return a  tag, which has a query property and a render property.&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;StaticQuery 
  query={
    graphql`{
      query {        
        images: allFile {
          edges {
            node {
              relativePath
              name
              childImageSharp {
                fluid {
                  ...GatsbyImageSharpFluid
                }
              }
            }
          }
        }
      }
  `} 
  render={(data) =&amp;gt; (
    &amp;lt;&amp;gt;
      {*/* our JSX will go in here */*}
    &amp;lt;/&amp;gt;
  )}
/&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;blockquote&gt;
&lt;p&gt;Notice how we are using &lt;a href="https://www.gatsbyjs.org/docs/gatsby-image/#fluid-images"&gt;...GatsbyImageSharpFluid&lt;/a&gt; here, which is a fragment that replaces all the fields inside the fluid property.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Now, we need to include our image inside the render property which has to be passed down two props — a fluid and an alt prop.&lt;/p&gt;

&lt;p&gt;The final result looks like this:&lt;/p&gt;

&lt;h2&gt;
  
  
  We’re almost done!
&lt;/h2&gt;

&lt;p&gt;Let’s create a new page that will accept these props to load the images.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 5: Putting it together
&lt;/h3&gt;

&lt;p&gt;I’ll name this pagegallery.js and place it in the/src/pages folder. And import the Image component we created earlier.&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import Image from "../components/Image"
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Let’s pass down the props and here’s how our Gallery page should look like:&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;*const* Gallery = () *=&amp;gt;* (
  &amp;lt;div&amp;gt;  
     &amp;lt;*Image* alt="image_1" filename="image_1.jpg" /&amp;gt;
     &amp;lt;*Image* alt="image_2" filename="image_2.jpg" /&amp;gt;
     &amp;lt;*Image* alt="image_3" filename="image_3.jpg" /&amp;gt;
     &amp;lt;*Image* alt="image_4" filename="image_4.jpg" /&amp;gt;
  &amp;lt;/div&amp;gt;
)

export Gallery
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;It’s all done! Open up &lt;a href="http://localhost:8000/gallery/"&gt;http://localhost:8000/gallery/&lt;/a&gt; after running gatsby develop on your command line and…&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Ii32Zbwu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://cdn-images-1.medium.com/max/2000/1%2AtOV6k1mvm1IJkGS67jY04w.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ii32Zbwu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://cdn-images-1.medium.com/max/2000/1%2AtOV6k1mvm1IJkGS67jY04w.gif" alt="[https://gist.github.com/shrey-sachdeva2000/07a6b8ef822f2b385a15f186c933fcd6](https://gist.github.com/shrey-sachdeva2000/07a6b8ef822f2b385a15f186c933fcd6)"&gt;&lt;/a&gt;&lt;em&gt;&lt;a href="https://gist.github.com/shrey-sachdeva2000/07a6b8ef822f2b385a15f186c933fcd6"&gt;https://gist.github.com/shrey-sachdeva2000/07a6b8ef822f2b385a15f186c933fcd6&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;em&gt;Voila!&lt;/em&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;There you have it. A really cool Lazy Loading Image Effect. Oh, by the way, I really wish I could lazy-load the image of the black hole too if only we had it in better pixels(a sincere astrophilia).&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Gatsby does a great job at processing and handling images and by leveraging the power of Gatsby, optimizing images is easy as pie. You can also try out generating a traced SVG of your image while it processes by applying a traceSVG argument and the appropriate &lt;a href="https://www.gatsbyjs.org/packages/gatsby-image/#fragments"&gt;fragment&lt;/a&gt;. Let me know how did that go for you!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you liked this article, don’t forget to give it a 👏 and share it with your friends! And subscribe for more geeky and cool articles in the future.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>gatsby</category>
      <category>react</category>
      <category>tutorial</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
