<?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>Forem: Rahul Jain</title>
    <description>The latest articles on Forem by Rahul Jain (@rahuldkjain).</description>
    <link>https://forem.com/rahuldkjain</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%2F252500%2Fe4b011a4-363a-48cf-97ee-4df12fccc868.png</url>
      <title>Forem: Rahul Jain</title>
      <link>https://forem.com/rahuldkjain</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/rahuldkjain"/>
    <language>en</language>
    <item>
      <title>Have you seen this sexy button?</title>
      <dc:creator>Rahul Jain</dc:creator>
      <pubDate>Sat, 09 Jul 2022 13:46:52 +0000</pubDate>
      <link>https://forem.com/rahuldkjain/have-you-seen-this-sexy-button-2ijn</link>
      <guid>https://forem.com/rahuldkjain/have-you-seen-this-sexy-button-2ijn</guid>
      <description>&lt;p&gt;CRED recently open-sourced its NeoPOP design system. &lt;/p&gt;

&lt;p&gt;NeoPOP, is inspired by the philosophy and aesthetic principles of the Neo-pop movement - something that played a transformational role in the progress of art beyond the conventional milieu.&lt;/p&gt;

&lt;p&gt;We at CRED believe in sharing our work and our learnings for the benefit of the larger community.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;because art belongs to everyone.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;NeoPOP design system includes hell lot of sexy components like ScoreMeter, Checkbox, ElevatedCard, &amp;amp; Button etc.&lt;/p&gt;

&lt;p&gt;Checkout the sexy NeoPOP button&lt;/p&gt;

&lt;p&gt;&lt;iframe src="https://codesandbox.io/embed/neopop-button-s8kgt7"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;This is too sexy, isn't it?&lt;/p&gt;

&lt;h2&gt;
  
  
  Foundation
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/foundation-colors--page"&gt;Colors&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/foundation-typography--heading"&gt;Typography&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/foundation-layout--row"&gt;Layouts &amp;amp; Spacing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/foundation-miscellaneous--cross"&gt;Miscellaneous&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Components List
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-bottomsheet--default-story"&gt;Bottomsheet&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-button--sample-button"&gt;Button&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-checkbox--single-checkbox-with-label"&gt;Checkbox&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-elevatedcard--basic-card"&gt;ElevatedCard&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-header--header-with-heading"&gt;Header&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-inputfield--input-field"&gt;InputField&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-radio--basic-radio"&gt;Radio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-scoremeter--score-meter-dark"&gt;ScoreMeter&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-searchbar--search-with-icon"&gt;SearchBar&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-slider--slider"&gt;Slider&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-tags--success"&gt;Tags&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-toasts--error-toast"&gt;Toasts&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://playground.cred.club/?path=/docs/components-toggle--toggle-on"&gt;Toggle&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--566lAguM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/CRED-CLUB"&gt;
        CRED-CLUB
      &lt;/a&gt; / &lt;a href="https://github.com/CRED-CLUB/neopop-web"&gt;
        neopop-web
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      NeoPOP components library based on CRED's design system
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div&gt;
    &lt;a rel="noopener noreferrer" href="https://github.com/CRED-CLUB/neopop-webneopop-land.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JC-EyUq3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/CRED-CLUB/neopop-webneopop-land.png" alt="NeoPop Banner"&gt;&lt;/a&gt;
    &lt;h1&gt;
NeoPOP&lt;/h1&gt;
    &lt;strong&gt;NeoPOP is CRED's inbuilt library for using NeoPOP components in your web app.&lt;/strong&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;div&gt;
    &lt;a href="https://github.com/CRED-CLUB/neopop-web/blob/main/LICENSE"&gt;
        &lt;img src="https://camo.githubusercontent.com/27d2389831d5ea6aa05df3ab7578a6f907ba807199d0e67d6b2922eba300d184/68747470733a2f2f62616467656e2e6e65742f6769746875622f6c6963656e73652f637265642d636c75622f6e656f706f702d776562" alt="License"&gt;
    &lt;/a&gt;
    &lt;a href="https://twitter.com/cred_club" rel="nofollow"&gt;
        &lt;img src="https://camo.githubusercontent.com/34b326dbbe50c939c77f2c3b55619945208dcc08e84e9e64a7976b37361108e8/68747470733a2f2f696d672e736869656c64732e696f2f747769747465722f666f6c6c6f772f637265645f636c75623f6c6162656c3d54776974746572267374796c653d666c6174266c6f676f3d7477697474657226636f6c6f723d314441314632" alt="CRED Twitter"&gt;
    &lt;/a&gt;
&lt;/div&gt;
&lt;div&gt;
    &lt;br&gt;
    &lt;a href="https://playground.cred.club" rel="nofollow"&gt;&lt;b&gt;Playground/Docs »&lt;/b&gt;&lt;/a&gt;
    &lt;br&gt;&lt;br&gt;
&lt;/div&gt;
&lt;h2&gt;
what is NeoPOP?&lt;/h2&gt;
&lt;p&gt;NeoPOP was created with one simple goal, to create the next generation of the next beautiful, more affirmative, design system. neopop stays true to everything that design at CRED stands for.&lt;/p&gt;
&lt;h2&gt;
what this library features?&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Easy to use and beautifully designed React components based on NeoPOP design system.&lt;/li&gt;
&lt;li&gt;Flexible and composable components which accepts custom configurations.&lt;/li&gt;
&lt;li&gt;Commonly used utility methods and functions.&lt;/li&gt;
&lt;li&gt;Fluid and highly optimized animations.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;note: currently the components in this library are optimized for mobile views, we will soon release support for desktop views.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;
how to install?&lt;/h2&gt;
&lt;p&gt;to use NeoPOP library, all you need to do is install the &lt;code&gt;@cred/neopop-web&lt;/code&gt; package and its peer dependencies:&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;yarn add @cred/neopop-web react react-dom styled-components
&lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; or&lt;/span&gt;

npm i @cred/neopop-web react react-dom styled-components&lt;/pre&gt;

&lt;/div&gt;
&lt;h2&gt;
how to use?&lt;/h2&gt;
&lt;p&gt;to start using the library you…&lt;/p&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/CRED-CLUB/neopop-web"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Storybook Playground: &lt;a href="https://playground.cred.club"&gt;https://playground.cred.club&lt;/a&gt;&lt;br&gt;
Reference: &lt;a href="https://cred.club/neopop"&gt;https://cred.club/neopop&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>opensource</category>
      <category>showdev</category>
    </item>
    <item>
      <title>How I improved my GitHub profile?</title>
      <dc:creator>Rahul Jain</dc:creator>
      <pubDate>Thu, 21 Oct 2021 03:00:08 +0000</pubDate>
      <link>https://forem.com/rahuldkjain/how-i-improved-my-github-profile-480c</link>
      <guid>https://forem.com/rahuldkjain/how-i-improved-my-github-profile-480c</guid>
      <description>&lt;p&gt;Hey there, I am glad you landed here to learn more about how to improve your GitHub profile and build trust. A good GitHub profile behaves as an effective marketing tool in selling yourself to potential clients or employers. I will try to explain all the ins and outs of having a good GitHub profile from my own experience.&lt;/p&gt;

&lt;p&gt;First, I will walk you through my college journey so that you guys can easily relate, then I will try to answer all the related questions and inspirations that can come to your mind.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Journey
&lt;/h2&gt;

&lt;p&gt;I am a 2020 graduate who didn't get the chance to attend the farewell and the convocation. My college started back in 2016. I had no clue of what I'll be doing in the next 4 years. I went there like a kora kagaz (blank sheet). I chose Physical Education in +2, so had no idea about programming. C, C++, Java &amp;amp; Python were just fancy creatures to me. As a result, I secured C grade in the C Programming course of 1st Semester 😝. Now you can picturize me as a young dumb kid who has no clue why he chose Computer Science &amp;amp; Engineering.&lt;/p&gt;

&lt;p&gt;I saw some fancy hostel videos of IIT Bombay FilmMaking Club before joining the college and got excited to join the FilmMaking club. When I joined the club, the dean stopped giving funds. Our club has no camera and no future of course. Then I realized the importance of money. Coming from a low middle class background and an underdeveloped town of Rajasthan, I dropped the fancy idea of pursuing filmmaking. Let's get some money in the bank first 💰.&lt;/p&gt;

&lt;p&gt;Just like everybody else, I started learning programming to get an internship. During the 2nd year summer break, I applied to a lot of companies from Internshala. Didn't get even a single response from the recruiters. I hated the idea of competitive programming and got really scared about cracking interviews without any CP. Desperate, I opened my account on &lt;a href="https://freelancer.com" rel="noopener noreferrer"&gt;Freelancer&lt;/a&gt; to get any project of any domain. Developed &amp;amp; hosted a basic portfolio on GitHub pages and after struggling for about one week, I closed a deal to design a website for a US based client (\$3 per page). You can read the whole experience &lt;a href="https://dev.to/rahuldkjain/how-i-got-my-first-freelance-project-49c8"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;From here onwards, I didn't stop exploring. I applied for Eklavya IIT Bombay program by completing the animation assignments using &lt;a href="https://threejs.org/" rel="noopener noreferrer"&gt;three.js&lt;/a&gt; , but didn't make it because of the pointers(grades).&lt;/p&gt;

&lt;p&gt;I participated in all the hackathons organized by college's programming club and that's how they went:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Hackathon&lt;/th&gt;
&lt;th&gt;Year&lt;/th&gt;
&lt;th&gt;Experience&lt;/th&gt;
&lt;th&gt;Result&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Vassar Lab's Hackathon&lt;/td&gt;
&lt;td&gt;2nd Year&lt;/td&gt;
&lt;td&gt;Registered only for the free Maggi &amp;amp; coffee.&lt;/td&gt;
&lt;td&gt;Participant&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;IBM Watson Hackathon&lt;/td&gt;
&lt;td&gt;3rd Year&lt;/td&gt;
&lt;td&gt;Participated along with 3 batch-mates, contributed in documentation&lt;/td&gt;
&lt;td&gt;1st Place&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Chatbot Hackathon&lt;/td&gt;
&lt;td&gt;3rd Year&lt;/td&gt;
&lt;td&gt;All India Level Hackathon organized by &lt;a href="https://www.swaniti.com/" rel="noopener noreferrer"&gt;Swaniti&lt;/a&gt; on HackerEarth. Built a &lt;a href="https://github.com/jainsomya972/jaano-india-chatbot" rel="noopener noreferrer"&gt;chatbot&lt;/a&gt; with &lt;a href="https://github.com/jainsomya972" rel="noopener noreferrer"&gt;Somya&lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;AIR 2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;IBM AI/ML Hackathon&lt;/td&gt;
&lt;td&gt;4th Year&lt;/td&gt;
&lt;td&gt;Registered with the mindset of winning&lt;/td&gt;
&lt;td&gt;Runner Up&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;I was able to secure an on-campus internship offer from &lt;a href="https://www.quinbay.com/" rel="noopener noreferrer"&gt;Coviam&lt;/a&gt; (now Quinbay). This happened because of the confidence in myself that I can grab the offer without doing any competitive programming. That confidence came from doing projects, and exploring different things.&lt;/p&gt;

&lt;p&gt;I cracked the on-campus placements while working in Coviam (7th semester) and got the full time offer from &lt;a href="https://zolostays.com/" rel="noopener noreferrer"&gt;Zolo&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Then lockdown happened. All the big plans of hanging out with friends in the last semester didn't happen.&lt;/p&gt;

&lt;p&gt;I graduated in May 2020 and my joining was from September 2020. The period from May to September was where the magic happened.&lt;/p&gt;

&lt;p&gt;I started learning React.js and became a regular user of twitter. I followed all the famous personalities on tech twitter whom I admire and started reading their tweets on a day to day basis.&lt;/p&gt;

&lt;p&gt;On one fine day in the second-last week of May 2020, GitHub launched a new feature of creating your profiles in markdown like &lt;a href="https://github.com/rahuldkjain" rel="noopener noreferrer"&gt;this&lt;/a&gt;. I saw several developers made some really cool addons like adding github-stats, visitors count etc. &lt;a href="https://github.com/anuraghazra/github-readme-stats" rel="noopener noreferrer"&gt;GitHub Readme Stats&lt;/a&gt; developed by &lt;a href="https://github.com/anuraghazra" rel="noopener noreferrer"&gt;Anurag Hazra&lt;/a&gt; went viral in just couple of days. Then the idea of creating &lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator" rel="noopener noreferrer"&gt;GitHub Profile README Generator&lt;/a&gt; came to my mind.&lt;/p&gt;

&lt;p&gt;I started working on the MVP(Minimum Viable Product) without even thinking about how good or bad the idea is.&lt;/p&gt;

&lt;p&gt;I coded the project in just 2 days and hosted it on GitHub pages. I started writing articles on how to use the amazing tool to create beautiful GitHub profile READMEs in few minutes with cool addons. In just couple of weeks, people started noticing and liking the project. I didn't stop. I cross-linked the repository on various popular articles in the comments. You can learn more about how to promote your open-source project &lt;a href="https://rahuldkjain.github.io/blog/how-github-profile-readme-generator-reached-200+-stars-on-github/" rel="noopener noreferrer"&gt;here&lt;/a&gt;. My post on Linkedin about this project gained a lot of tractions and in just couple of weeks, the project had 1000+ stars.&lt;/p&gt;

&lt;p&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Frahuldkjain.github.io%2Fblog%2Fstatic%2Faba0d373cb69251b03a10ae095bf9891%2Fc83ae%2Flinkedin-marketing.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Frahuldkjain.github.io%2Fblog%2Fstatic%2Faba0d373cb69251b03a10ae095bf9891%2Fc83ae%2Flinkedin-marketing.png" alt="rahuldkjain linkedin"&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;I didn't stop.&lt;/p&gt;

&lt;p&gt;I subscribed to free 6 months &lt;a href="https://frontendmasters.com/" rel="noopener noreferrer"&gt;FrontendMasters&lt;/a&gt; courses using GitHub pro. Learned "SVG Animations" from &lt;a href="https://twitter.com/sarah_edo" rel="noopener noreferrer"&gt;Sarah Drasner's&lt;/a&gt; course and wrote a few articles about GSAP Animations on my blog and dev[.]to .&lt;/p&gt;

&lt;p&gt;I created an account on Fiverr to sell &lt;code&gt;SVG Animations&lt;/code&gt;. I researched about this particular keyword on Fiverr and found out a huge potential in the gigs. So I created few gigs and started getting orders.&lt;br&gt;
From charging $10 per animation to $75 per animation, I became a level 2 seller in just couple of months. You can checkout some of my animations &lt;a href="https://rahuldkjain-animations.vercel.app/" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;On a very good day, a client from Sweden reached out to me on Fiverr to create a website for his product (&lt;a href="https://dosemedbox.com/" rel="noopener noreferrer"&gt;DoseMedbox&lt;/a&gt;) to sell online. I closed the deal, worked for 1.5 months and launched it.&lt;/p&gt;

&lt;p&gt;I didn't stop.&lt;/p&gt;

&lt;p&gt;I realized that I need to &lt;code&gt;surround myself with people who are way better than me&lt;/code&gt; to grow rapidly. So here I am working as a Frontend Engineer at CRED who is known for their design, app-dev and marketing.&lt;/p&gt;

&lt;p&gt;Phew! That was a long story isn't it. Thanks for bearing me. Now I assume that you already have the answers to the perks of having a good GitHub profile.&lt;/p&gt;

&lt;h2&gt;
  
  
  Perks of a good GitHub profile
&lt;/h2&gt;

&lt;p&gt;To simplify things, I am listing down the things again for you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Trust&lt;/li&gt;
&lt;li&gt;Freelance Projects&lt;/li&gt;
&lt;li&gt;Higher chances of landing a job interview&lt;/li&gt;
&lt;li&gt;Passive Income through GitHub sponsors, BuyMeACoffee, &amp;amp; Paypal etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How to improve GitHub profile?
&lt;/h2&gt;

&lt;p&gt;I hope you are convinced now to improve your GitHub profile that opens up a huge world of opportunities. So I am listing down the things that helped me improving my GitHub profile:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Good profile picture&lt;/strong&gt;: It gives a sense of authenticity.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Good bio&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;Twitter handle&lt;/li&gt;
&lt;li&gt;Portfolio link&lt;/li&gt;
&lt;li&gt;Email (Optional)&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;strong&gt;Good profile README&lt;/strong&gt;: You can use &lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator" rel="noopener noreferrer"&gt;GitHub Profile README Generator&lt;/a&gt;
&lt;/li&gt;

&lt;li&gt;

&lt;strong&gt;Good projects&lt;/strong&gt;: The most important part of the profile&lt;/li&gt;

&lt;li&gt;

&lt;strong&gt;Good contributions&lt;/strong&gt;: merge commits on popular projects work as wonder&lt;/li&gt;

&lt;/ul&gt;

&lt;h2&gt;
  
  
  Tips &amp;amp; Tricks
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Create beautiful READMEs of your projects&lt;/li&gt;
&lt;li&gt;Lookout for issues on the open-source projects that you like&lt;/li&gt;
&lt;li&gt;Write and publish articles on your favourite topics&lt;/li&gt;
&lt;li&gt;Participate in hackathons and start building projects&lt;/li&gt;
&lt;li&gt;Participate in Hackoberfest ofcourse&lt;/li&gt;
&lt;li&gt;Join a community&lt;/li&gt;
&lt;li&gt;Follow good developers on GitHub&lt;/li&gt;
&lt;li&gt;Enhance your online presence&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Important Links
&lt;/h2&gt;

&lt;p&gt;I am sharing a list of resource that helped me:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://javascript.info/" rel="noopener noreferrer"&gt;Javascript.info&lt;/a&gt;: best JS tutorials on the internet(opinion)&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/rahuldkjain/rahuldkjain.github.io" rel="noopener noreferrer"&gt;My Portfolio Source code&lt;/a&gt;: portfolio helped me landing a job at CRED&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/rahuldkjain/awesome-frontendmasters" rel="noopener noreferrer"&gt;Awesome FrontendMasters List&lt;/a&gt;: best resources from great educators&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://learngitbranching.js.org/" rel="noopener noreferrer"&gt;Learn Git&lt;/a&gt;: gamified git tutorials&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://rahuldkjain.github.io/blog/promote-open-source-project/" rel="noopener noreferrer"&gt;How to market your open-source project?&lt;/a&gt;: to know more about how I marketed GitHub profile readme generator.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/poteto/hiring-without-whiteboards" rel="noopener noreferrer"&gt;hiring-without-whiteboards&lt;/a&gt;: very helpful while looking out for jobs&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.youtube.com/watch?v=pN6jk0uUrD8&amp;amp;list=PLlasXeu85E9cQ32gLCvAvr9vNaUccPVNP&amp;amp;ab_channel=AkshaySaini" rel="noopener noreferrer"&gt;Namaste Javascript Playlist&lt;/a&gt;: to understand the fundamentals of JS and crack interviews&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;&lt;code&gt;You are just a project away from your big break&lt;/code&gt;&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>github</category>
      <category>webdev</category>
      <category>motivation</category>
    </item>
    <item>
      <title>Awesome FrontendMasters course resources</title>
      <dc:creator>Rahul Jain</dc:creator>
      <pubDate>Sun, 22 Nov 2020 04:54:59 +0000</pubDate>
      <link>https://forem.com/rahuldkjain/awesome-frontendmasters-course-resources-1gj2</link>
      <guid>https://forem.com/rahuldkjain/awesome-frontendmasters-course-resources-1gj2</guid>
      <description>&lt;p&gt;I used my GitHub Student Developer Pack to redeem FrontendMasters' 6-month membership. I fell in love with the quality of their courses and all of them are created by top-notch professionals around the globe. Beautifully designed course material (documentation, code, and slides) is the cherry on top.&lt;/p&gt;

&lt;p&gt;I learned Reactjs, Nextjs, SVG Animations, and React-Native from FrontendMasters courses, and I always refer to the course documentation instead of official documentation whenever needed. One day when I got stuck with &lt;em&gt;how to do dynamic routing in nextjs&lt;/em&gt;, I referred to the course documentation of &lt;strong&gt;Intro to Nextjs course by Scott Moss&lt;/strong&gt; and got the answer in just a couple of seconds. &lt;/p&gt;

&lt;p&gt;There is no need to go through the course videos if you are comfortable with reading the documentation. Although the courses are paid, you can refer to the course material (documentation, slides, and code) for free.&lt;/p&gt;

&lt;p&gt;My membership is about to expire so I collected all the course resources and created an awesome list to help developers like me to get access to these gems. &lt;/p&gt;

&lt;h4&gt;
  
  
  Introduction to Next.js
&lt;/h4&gt;

&lt;p&gt;Material: &lt;a href="https://hendrixer.github.io/nextjs-course/" rel="noopener noreferrer"&gt;Introduction to Next.js&lt;/a&gt;&lt;br&gt;
Repository: &lt;a href="https://github.com/Hendrixer/nextjs-course-app" rel="noopener noreferrer"&gt;nextjs-course-app&lt;/a&gt;&lt;br&gt;
Instructor: &lt;a href="https://github.com/Hendrixer" rel="noopener noreferrer"&gt;Scott Moss&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Getting The Front End Job
&lt;/h4&gt;

&lt;p&gt;Material: &lt;a href="https://getting-the-front-end-job.surge.sh/" rel="noopener noreferrer"&gt;Getting The Front End Job&lt;/a&gt;&lt;br&gt;
Repository: &lt;a href="https://github.com/jeromehardaway/hot-to-get-front-end-job" rel="noopener noreferrer"&gt;hot-to-get-front-end-job&lt;/a&gt;&lt;br&gt;
Instructor: &lt;a href="https://github.com/jeromehardaway" rel="noopener noreferrer"&gt;Jerome Hardaway&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Introduction to Vue.js
&lt;/h4&gt;

&lt;p&gt;Material: &lt;a href="https://github.com/sdras/intro-to-vue#slides" rel="noopener noreferrer"&gt;Introduction to Vue.js&lt;/a&gt;&lt;br&gt;
Repository: &lt;a href="https://github.com/sdras/intro-to-vue" rel="noopener noreferrer"&gt;intro-to-vue&lt;/a&gt;&lt;br&gt;
Instructor: &lt;a href="https://github.com/sdras" rel="noopener noreferrer"&gt;Sarah Drasner&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Introduction to Svelte
&lt;/h4&gt;

&lt;p&gt;Material: &lt;a href="https://svelte-workshop.netlify.app/introduction/" rel="noopener noreferrer"&gt;Introduction to Svelte&lt;/a&gt;&lt;br&gt;
Repository: &lt;a href="https://github.com/Rich-Harris/svelte-workshop" rel="noopener noreferrer"&gt;svelte-workshop&lt;/a&gt;&lt;br&gt;
Instructor: &lt;a href="https://github.com/Rich-Harris" rel="noopener noreferrer"&gt;Rich Harris&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Angular 9 Fundamentals
&lt;/h4&gt;

&lt;p&gt;Material: &lt;a href="https://static.frontendmasters.com/resources/2020-05-28-angular-9/angular-9-fundamentals.pdf" rel="noopener noreferrer"&gt;Angular 9 Fundamentals&lt;/a&gt;&lt;br&gt;
Repository: &lt;a href="https://github.com/onehungrymind/angular9-fundamentals-workshop" rel="noopener noreferrer"&gt;angular9-fundamentals-workshop&lt;/a&gt;&lt;br&gt;
Instructor: &lt;a href="https://github.com/onehungrymind" rel="noopener noreferrer"&gt;One Hungry Mind&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  React Native: Building mobile applications
&lt;/h4&gt;

&lt;p&gt;Material: &lt;a href="https://kadikraman.github.io/react-native-v2/" rel="noopener noreferrer"&gt;React Native: Building mobile applications&lt;/a&gt;&lt;br&gt;
Repository: &lt;a href="https://github.com/kadikraman/react-native-v2" rel="noopener noreferrer"&gt;react-native-v2&lt;/a&gt;&lt;br&gt;
Instructor: &lt;a href="https://github.com/kadikraman" rel="noopener noreferrer"&gt;Kadi Kraman&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Practical Guide to Deep Learning with TensorFlow 2.0 and Keras
&lt;/h4&gt;

&lt;p&gt;Material: &lt;a href="https://github.com/Vadikus/practicalDL" rel="noopener noreferrer"&gt;Practical Guide to Deep Learning with TensorFlow 2.0 and Keras&lt;/a&gt;&lt;br&gt;
Repository: &lt;a href="https://github.com/Vadikus/practicalDL" rel="noopener noreferrer"&gt;practicalDL&lt;/a&gt;&lt;br&gt;
Instructor: &lt;a href="https://github.com/Vadikus" rel="noopener noreferrer"&gt;Vadim Karpusenko&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Advanced GraphQL
&lt;/h4&gt;

&lt;p&gt;Material: &lt;a href="https://docs.google.com/presentation/d/1DaTDx2Jdolkws2xPx44ee6WuQYMiIAyaaEmN-IBaW1s/edit#slide=id.p" rel="noopener noreferrer"&gt;Advanced GraphQL&lt;/a&gt;&lt;br&gt;
Repository: &lt;a href="https://github.com/FrontendMasters/advanced-gql-v2" rel="noopener noreferrer"&gt;advanced-gql-v2&lt;/a&gt;&lt;br&gt;
Instructor: &lt;a href="https://github.com/Hendrixer" rel="noopener noreferrer"&gt;Scott Moss&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Full Stack for Front-End Engineers
&lt;/h4&gt;

&lt;p&gt;Material: &lt;a href="https://docs.google.com/presentation/d/1Mvf_rOFz1wZeH1irajJqhRQgzid7BkqJBd8wigpz39M/edit" rel="noopener noreferrer"&gt;Full Stack for Front-End Engineers&lt;/a&gt;&lt;br&gt;
Repository: &lt;a href="https://github.com/young/Full-Stack-For-Frontend" rel="noopener noreferrer"&gt;Full-Stack-For-Frontend&lt;/a&gt;&lt;br&gt;
Instructor: &lt;a href="https://github.com/young" rel="noopener noreferrer"&gt;Jem Young&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Visual Studio Code Can Do That?
&lt;/h4&gt;

&lt;p&gt;Material: &lt;a href="https://burkeholland.gitbook.io/vs-code-can-do-that/" rel="noopener noreferrer"&gt;Visual Studio Code Can Do That?&lt;/a&gt;&lt;br&gt;
Repository: &lt;a href="https://github.com/burkeholland/workshop-vs-code-can-do-that" rel="noopener noreferrer"&gt;workshop-vs-code-can-do-that&lt;/a&gt;&lt;br&gt;
Instructor: &lt;a href="https://github.com/burkeholland" rel="noopener noreferrer"&gt;Burke Holland&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There are &lt;strong&gt;75+&lt;/strong&gt; such course resources in this list and it's not a good idea to make this article big. &lt;/p&gt;

&lt;p&gt;You can find the list of all courses materials in the below &lt;a href="https://github.com/rahuldkjain/awesome-frontendmasters" rel="noopener noreferrer"&gt;awesome-frontendmasters&lt;/a&gt; list on GitHub&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/rahuldkjain" rel="noopener noreferrer"&gt;
        rahuldkjain
      &lt;/a&gt; / &lt;a href="https://github.com/rahuldkjain/awesome-frontendmasters" rel="noopener noreferrer"&gt;
        awesome-frontendmasters
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      📚 List of awesome frontendmasters course resources
    &lt;/h3&gt;
  &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;I hope you find the list useful and please do share with your developer friends.&lt;/p&gt;

&lt;p&gt;Happy Coding!&lt;/p&gt;

</description>
      <category>codenewbie</category>
      <category>beginners</category>
      <category>opensource</category>
    </item>
    <item>
      <title>How to start and promote your open-source project?</title>
      <dc:creator>Rahul Jain</dc:creator>
      <pubDate>Wed, 26 Aug 2020 05:57:48 +0000</pubDate>
      <link>https://forem.com/rahuldkjain/how-to-start-and-promote-your-open-source-project-3ebp</link>
      <guid>https://forem.com/rahuldkjain/how-to-start-and-promote-your-open-source-project-3ebp</guid>
      <description>&lt;p&gt;I was listening to &lt;em&gt;Blinding Lights by The Weeknd&lt;/em&gt; when I got the idea of an open-source project. In just 45 days the project got &lt;strong&gt;1000+ stars&lt;/strong&gt;, &lt;strong&gt;120+ forks&lt;/strong&gt;, and &lt;strong&gt;30+ PRs&lt;/strong&gt; on GitHub. It received sponsorships from two experienced developers. Google Analytics reads that it got 10,000+ visitors so far. Got featured in several YouTube videos and blogs.&lt;/p&gt;

&lt;p&gt;I believe that sharing the process followed by me will help you to get the gist of the same. Go through the following steps sequentially to understand the whole process.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Wireframe the IDEA 🖊
&lt;/h2&gt;

&lt;p&gt;Take a pen &amp;amp; a paper and just draw whatever comes in your mind related to the idea. Don't worry about your drawing ability and just jot it down. It will give you more realistic view about the idea.&lt;/p&gt;

&lt;p&gt;Once you have it on paper, start drawing how it should work. Brainstorm every possible workflow you have in mind.&lt;/p&gt;

&lt;p&gt;I was seeing a lot of addons for GitHub profile README coming up, so I came up with the idea of &lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator"&gt;GitHub Profile README Generator&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I brainstormed several ideas on how should make it simple, useful, and elegant for users.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/ame1y0MJNqUPC/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/ame1y0MJNqUPC/giphy.gif" alt="idea"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once you get the holistic picture of what you are thinking, pick the best one, and freeze it.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Execute 👨‍💻
&lt;/h2&gt;

&lt;p&gt;Almost every one of us usually loses interest to develop the project after coming up with an IDEA. Is it really worth it? People really gonna use it or am I just wasting my time? etc questions like these start haunting the mind.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/ZQrVQtav6gnzG/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/ZQrVQtav6gnzG/giphy.gif" alt="confused"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This happened to me too and I said it to myself that &lt;strong&gt;Who cares?&lt;/strong&gt;. Yep, it's true who cares.&lt;/p&gt;

&lt;p&gt;So stop thinking about it and just execute it. It doesn't matter whether people will like it or not, but the experience of going from an idea in the mind to the idea online is simply worth doing.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Promote 🚀
&lt;/h2&gt;

&lt;p&gt;Let the world know about the masterpiece you've developed. To reach a wider audience for feedback, promotion is very important. This step will make you realize the power of platforms like &lt;strong&gt;DEV&lt;/strong&gt;, &lt;strong&gt;Reddit&lt;/strong&gt;, &lt;strong&gt;Twitter&lt;/strong&gt;, and &lt;strong&gt;YouTube&lt;/strong&gt;, etc.&lt;br&gt;
I've posted a separate blog on &lt;a href="https://dev.to/rahuldkjain/how-my-project-repo-reached-200-stars-in-less-than-36-hours-on-github-2l15"&gt;how to promote your project online?&lt;/a&gt;. Go check and read it out.&lt;/p&gt;

&lt;p&gt;I am telling you that having a cool open-source project is an amazing feeling. So don't think and wait, just execute it. Let the world know about your crazy ideas, don't hesitate.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/kEKcOWl8RMLde/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/kEKcOWl8RMLde/giphy.gif" alt="happy"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Wish you very good luck on your upcoming journey.&lt;/p&gt;

&lt;p&gt;Happy Coding 👨‍💻👩‍💻!&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>webdev</category>
      <category>career</category>
    </item>
    <item>
      <title>How to gain 1000+ stars on an open-source project quickly?</title>
      <dc:creator>Rahul Jain</dc:creator>
      <pubDate>Mon, 20 Jul 2020 13:55:58 +0000</pubDate>
      <link>https://forem.com/rahuldkjain/how-my-project-repo-reached-200-stars-in-less-than-36-hours-on-github-2l15</link>
      <guid>https://forem.com/rahuldkjain/how-my-project-repo-reached-200-stars-in-less-than-36-hours-on-github-2l15</guid>
      <description>&lt;p&gt;My open-source project &lt;strong&gt;Github profile README generator&lt;/strong&gt; reached 1000+ ⭐️ in less than 45 days 🥳.&lt;/p&gt;

&lt;p&gt;It was trending on Github under javascript category🚀&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--RSRmPcBt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/f6wxs4wo9fxb4bctrf0o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--RSRmPcBt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/f6wxs4wo9fxb4bctrf0o.png" alt="github-profile-readme-generator"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I was scrolling the twitter feed and listening to &lt;strong&gt;Blinding Lights&lt;/strong&gt; when I got the idea of this tool. Never thought that so many developers will find it useful.&lt;/p&gt;

&lt;p&gt;The open-source community is amazing. The project on GitHub received two pull requests without even opening an issue.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://twitter.com/natfriedman?lang=en"&gt;Nat Friedman&lt;/a&gt; &lt;strong&gt;CEO of GitHub&lt;/strong&gt; followed me on twitter.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://twitter.com/linus_borg?lang=en"&gt;Thorsten Lünborg&lt;/a&gt;, a member of the Vuejs core team even starred the repository🙇.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Psm2gGTx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/659mdvod4dq11bjmckt3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Psm2gGTx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/659mdvod4dq11bjmckt3.png" alt="github-profile-readme-generator"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  How I achieved it?
&lt;/h2&gt;

&lt;p&gt;Now the question is How I did it. The strategy I followed is a mix of a few steps which are as follows&lt;/p&gt;
&lt;h4&gt;
  
  
  1. Cool project README
&lt;/h4&gt;

&lt;p&gt;Project README on Github puts the first impression of the project. To win the battle i.e to gain attention I designed a visually interesting README using &lt;strong&gt;gifs&lt;/strong&gt;, &lt;strong&gt;badges&lt;/strong&gt;, and &lt;strong&gt;emojis&lt;/strong&gt;. It looks like this&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TNpNzN_8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3eelbp0qua074rnu2det.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TNpNzN_8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3eelbp0qua074rnu2det.png" alt="github-profile-readme-generator README"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  2. Post about project on Dev.to using #showdev
&lt;/h4&gt;

&lt;p&gt;I am quite active on dev.to and understands the power of it. So I wrote this article for the same&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/rahuldkjain" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--49YmWKTa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://res.cloudinary.com/practicaldev/image/fetch/s--3LMDFnQc--/c_fill%2Cf_auto%2Cfl_progressive%2Ch_150%2Cq_auto%2Cw_150/https://dev-to-uploads.s3.amazonaws.com/uploads/user/profile_image/252500/e4b011a4-363a-48cf-97ee-4df12fccc868.png" alt="rahuldkjain"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/rahuldkjain/github-profile-readme-generator-with-addons-like-visitors-count-github-stats-etc-44bg" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Github profile README generator with addons like visitors-count, github-stats etc&lt;/h2&gt;
      &lt;h3&gt;Rahul Jain ・ Jul 16 '20 ・ 1 min read&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#showdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#react&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;
&lt;br&gt;
Guess what, it got 1400+ views. Organic reach is pretty amazing on dev.to.&lt;br&gt;
You blog post must display the capabilities and uniqueness about the project.
&lt;h4&gt;
  
  
  3. Promote the project on other platforms(LinkedIn/Reddit/Discord/Twitter)
&lt;/h4&gt;

&lt;p&gt;I am quite active on LinkedIn too. So I took advantage of this and wrote a post regarding the tool. Organic reach of LinkedIn is amazing too and the post was reaching 1000+ people per hour for the first 12 hours. The post became a hit and reached 24000+ people on LinkedIn.&lt;/p&gt;

&lt;p&gt;That's it! Dev.to and LinkedIn proved out to be a super awesome platform to reach the targetted audience organically.&lt;/p&gt;

&lt;p&gt;PS: If you haven't checked out the tool yet, go check it out&lt;br&gt;
🚀 Try the tool - &lt;a href="https://rahuldkjain.github.io/gh-profile-readme-generator/"&gt;live demo&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--i3JOwpme--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev.to/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/rahuldkjain"&gt;
        rahuldkjain
      &lt;/a&gt; / &lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator"&gt;
        github-profile-readme-generator
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      🚀 Generate GitHub profile README easily with the latest add-ons like visitors count, GitHub stats, etc using minimal UI.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;p&gt;
  &lt;a href="https://rahuldkjain.github.io/gh-profile-readme-generator" rel="nofollow"&gt;
    &lt;img alt="GitHub Profile Readme Generator" src="https://res.cloudinary.com/practicaldev/image/fetch/s--EC_OH5RQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/rahuldkjain/github-profile-readme-generator./src/images/mdg.png" width="60"&gt;
  &lt;/a&gt;
&lt;/p&gt;

&lt;h1&gt;
  GitHub Profile README Generator
&lt;/h1&gt;

&lt;p&gt;
&lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/blob/master/LICENSE"&gt;
&lt;img src="https://camo.githubusercontent.com/7289df1cee7be0311caedd5aa86d1e9de8d7da7bcf58c489e8084f658de2f1cd/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f726168756c646b6a61696e2f6769746875622d70726f66696c652d726561646d652d67656e657261746f723f7374796c653d666c61742d737175617265" alt="github-profile-readme-generator license"&gt;
&lt;/a&gt;
&lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/fork"&gt;
&lt;img src="https://camo.githubusercontent.com/ac1c5c04d0969b512cbe5f0f1bdf75b8862cfaa4bdc4fb218008c596a903bdff/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f666f726b732f726168756c646b6a61696e2f6769746875622d70726f66696c652d726561646d652d67656e657261746f723f7374796c653d666c61742d737175617265" alt="github-profile-readme-generator forks"&gt;
&lt;/a&gt;
&lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/stargazers"&gt;
&lt;img src="https://camo.githubusercontent.com/32ea27e31953ea635484ed5602b60d0991d57520c50c49132e71d58b7a651e8a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f726168756c646b6a61696e2f6769746875622d70726f66696c652d726561646d652d67656e657261746f723f7374796c653d666c61742d737175617265" alt="github-profile-readme-generator stars"&gt;
&lt;/a&gt;
&lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/issues"&gt;
&lt;img src="https://camo.githubusercontent.com/346619a3050c2df6f5ef83ee4dfe733327478c371658c7e3a982855b68a5b191/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f726168756c646b6a61696e2f6769746875622d70726f66696c652d726561646d652d67656e657261746f723f7374796c653d666c61742d737175617265" alt="github-profile-readme-generator issues"&gt;
&lt;/a&gt;
&lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/pulls"&gt;
&lt;img src="https://camo.githubusercontent.com/595eecc99764209ee7c0f6642467d53cf37fce1dfd330d755204b37b9d5a4374/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732d70722f726168756c646b6a61696e2f6769746875622d70726f66696c652d726561646d652d67656e657261746f723f7374796c653d666c61742d737175617265" alt="github-profile-readme-generator pull-requests"&gt;
&lt;/a&gt;
&lt;a href="https://discord.gg/HHMs7Eg" rel="nofollow"&gt;
&lt;img src="https://camo.githubusercontent.com/5d0e933dfeedc3b1f1858c90e747b6e384e5ffd7fd3d51b89d23eba613eb3a9b/68747470733a2f2f696d672e736869656c64732e696f2f646973636f72642f3733353330333139353130353935313736343f6c6162656c3d4a6f696e253230436f6d6d756e697479266c6f676f3d646973636f7264267374796c653d666c61742d737175617265" alt="join discord community of github profile readme generator"&gt;
&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://github.com/rahuldkjain/github-profile-readme-generator./src/images/github-profile-readme-generator.gif"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uJrvihS1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://github.com/rahuldkjain/github-profile-readme-generator./src/images/github-profile-readme-generator.gif" alt="github-profile-readme-generator gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;
    &lt;a href="https://rahuldkjain.github.io/gh-profile-readme-generator" rel="nofollow"&gt;View Demo&lt;/a&gt;
    ·
    &lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/issues/new/choose"&gt;Report Bug&lt;/a&gt;
    ·
    &lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/issues/new/choose"&gt;Request Feature&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;i&gt;Loved the tool? Please consider &lt;a href="https://paypal.me/rahuldkjain/10" rel="nofollow"&gt;donating&lt;/a&gt;  💸 to help it improve!&lt;/i&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;a href="https://www.paypal.me/rahuldkjain" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/8e89d20419f7babe62aff7e14fca01635ff807cacc549e2a94baabadc4d77349/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f737570706f72742d50617950616c2d626c75653f6c6f676f3d50617950616c267374796c653d666c61742d737175617265266c6162656c3d446f6e617465" alt="sponsor github profile readme generator"&gt;
&lt;/a&gt;
&lt;a href="https://ko-fi.com/A0A81XXSX" rel="nofollow"&gt;&lt;img height="23" width="100" src="https://camo.githubusercontent.com/e0e856ceacf98cab39de00dff46353adc1b5f7675b4d4beca0d3fffd6621aa5c/68747470733a2f2f63646e2e6b6f2d66692e636f6d2f63646e2f6b6f6669332e706e673f763d32" alt="Buy Coffee for rahuldkjain"&gt;
&lt;/a&gt;
&lt;a href="https://www.buymeacoffee.com/rahuldkjain" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/3ba8042b343d12b84b85d2e6563376af4150f9cd09e72428349c1656083c8b5a/68747470733a2f2f63646e2e6275796d6561636f666665652e636f6d2f627574746f6e732f64656661756c742d6f72616e67652e706e67" alt="Buy Me A Coffee" height="23" width="100"&gt;
&lt;/a&gt;&lt;/p&gt;
&lt;a href="https://www.buymeacoffee.com/rahuldkjain" rel="nofollow"&gt;
&lt;/a&gt;&lt;h4&gt;
Tired of editing GitHub Profile README with new features?&lt;/h4&gt;
&lt;p&gt;This tool provides an easy way to create a GitHub profile readme with the latest add-ons such as &lt;code&gt;visitors count&lt;/code&gt;, &lt;code&gt;github stats&lt;/code&gt;, etc.&lt;/p&gt;
&lt;h2&gt;
🚀 Demo&lt;/h2&gt;
&lt;a href="https://rahuldkjain.github.io/gh-profile-readme-generator" rel="nofollow"&gt;
&lt;img src="https://camo.githubusercontent.com/b95ce5f27a58c2e482c4366e63f9dc33d024f78b799dfd9bc47a57e10de6b50d/68747470733a2f2f696d672e736869656c64732e696f2f776562736974653f75726c3d6874747073253341253246253246726168756c646b6a61696e2e6769746875622e696f25324667682d70726f66696c652d726561646d652d67656e657261746f72266c6f676f3d676974687562267374796c653d666c61742d737175617265"&gt;
&lt;/a&gt;
&lt;p&gt;Try the tool: &lt;a href="https://rahuldkjain.github.io/gh-profile-readme-generator" rel="nofollow"&gt;GitHub Profile README Generator&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
🧐 Features&lt;/h2&gt;
&lt;p&gt;Just fill in the details such as &lt;code&gt;Name&lt;/code&gt;, &lt;code&gt;Tagline&lt;/code&gt;, &lt;code&gt;Dev Platforms Username&lt;/code&gt;, &lt;code&gt;Current Work&lt;/code&gt;, &lt;code&gt;Portfolio&lt;/code&gt;, &lt;code&gt;Blog&lt;/code&gt;, etc. with a minimal UI.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Uniform Dev Icons&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Uniform Social Icons&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Visitors Counter Badge&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;GitHub Profile Stats Card&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;GitHub Top Skills&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;GitHub Streak Stats&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Dynamic Dev(.)to Blogs&lt;/strong&gt; (GitHub Action)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Dynamic Medium Blogs&lt;/strong&gt; (GitHub Action)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Dynamic Personal Blogs from RSS Feed&lt;/strong&gt; (GitHub Action)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Wakatime Stats&lt;/strong&gt; &lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/issues/115"&gt;contribute&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Buy Me A Coffee button&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Click on &lt;code&gt;Generate README&lt;/code&gt; to get your README in &lt;code&gt;markdown&lt;/code&gt;…&lt;/p&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/rahuldkjain/github-profile-readme-generator"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


</description>
      <category>showdev</category>
      <category>github</category>
    </item>
    <item>
      <title>Github profile README generator with addons like visitors-count, github-stats etc</title>
      <dc:creator>Rahul Jain</dc:creator>
      <pubDate>Thu, 16 Jul 2020 13:51:42 +0000</pubDate>
      <link>https://forem.com/rahuldkjain/github-profile-readme-generator-with-addons-like-visitors-count-github-stats-etc-44bg</link>
      <guid>https://forem.com/rahuldkjain/github-profile-readme-generator-with-addons-like-visitors-count-github-stats-etc-44bg</guid>
      <description>&lt;p&gt;Github recently released profile README feature, which became a hit among developers. As it provides good place to showcase current projects and skills, many addons like &lt;code&gt;visitors-count&lt;/code&gt;, &lt;code&gt;github-stats&lt;/code&gt; has been developed.&lt;/p&gt;

&lt;p&gt;I got tired of updating my github profile README again and again to get:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;uniformity in dev/social icons&lt;/li&gt;
&lt;li&gt;cool and minimal look&lt;/li&gt;
&lt;li&gt;new features like visitors-count or github-stats&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So I came up with an amazing tool to make this an easy experience. &lt;strong&gt;Github Profile README Generator&lt;/strong&gt; tool provides a beautiful UI to create the same.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Tx1-nPZ2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/rlxrzf3yjd2pbnp18nme.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Tx1-nPZ2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/rlxrzf3yjd2pbnp18nme.gif" alt="Github Profile README Generator"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It lets you add the latest add-ons like visitors count, shields, dev icons, github stats, etc to your README in just one click.&lt;/p&gt;

&lt;p&gt;Just fill the details like &lt;code&gt;Name&lt;/code&gt;, &lt;code&gt;Tagline&lt;/code&gt;, &lt;code&gt;Dev Platforms Username&lt;/code&gt;, &lt;code&gt;Current Work&lt;/code&gt;, &lt;code&gt;Portfolio&lt;/code&gt;, &lt;code&gt;Blog&lt;/code&gt; etc using minimal UI.&lt;/p&gt;

&lt;p&gt;Try the tool: &lt;a href="https://rahuldkjain.github.io/gh-profile-readme-generator/"&gt;live demo&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Click on &lt;code&gt;Generate README&lt;/code&gt; button after filling the form, to get your README in markdown. You can preview the README too.&lt;/p&gt;

&lt;p&gt;This project is developed using Gatsby and can be found on github&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--i3JOwpme--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev.to/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/rahuldkjain"&gt;
        rahuldkjain
      &lt;/a&gt; / &lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator"&gt;
        github-profile-readme-generator
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      🚀 Generate GitHub profile README easily with the latest add-ons like visitors count, GitHub stats, etc using minimal UI.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;p&gt;
  &lt;a href="https://rahuldkjain.github.io/gh-profile-readme-generator" rel="nofollow"&gt;
    &lt;img alt="GitHub Profile Readme Generator" src="https://res.cloudinary.com/practicaldev/image/fetch/s--EC_OH5RQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/rahuldkjain/github-profile-readme-generator./src/images/mdg.png" width="60"&gt;
  &lt;/a&gt;
&lt;/p&gt;

&lt;h1&gt;
  GitHub Profile README Generator
&lt;/h1&gt;

&lt;p&gt;
&lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/blob/master/LICENSE"&gt;
&lt;img src="https://camo.githubusercontent.com/7289df1cee7be0311caedd5aa86d1e9de8d7da7bcf58c489e8084f658de2f1cd/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f726168756c646b6a61696e2f6769746875622d70726f66696c652d726561646d652d67656e657261746f723f7374796c653d666c61742d737175617265" alt="github-profile-readme-generator license"&gt;
&lt;/a&gt;
&lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/fork"&gt;
&lt;img src="https://camo.githubusercontent.com/ac1c5c04d0969b512cbe5f0f1bdf75b8862cfaa4bdc4fb218008c596a903bdff/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f666f726b732f726168756c646b6a61696e2f6769746875622d70726f66696c652d726561646d652d67656e657261746f723f7374796c653d666c61742d737175617265" alt="github-profile-readme-generator forks"&gt;
&lt;/a&gt;
&lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/stargazers"&gt;
&lt;img src="https://camo.githubusercontent.com/32ea27e31953ea635484ed5602b60d0991d57520c50c49132e71d58b7a651e8a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f726168756c646b6a61696e2f6769746875622d70726f66696c652d726561646d652d67656e657261746f723f7374796c653d666c61742d737175617265" alt="github-profile-readme-generator stars"&gt;
&lt;/a&gt;
&lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/issues"&gt;
&lt;img src="https://camo.githubusercontent.com/346619a3050c2df6f5ef83ee4dfe733327478c371658c7e3a982855b68a5b191/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f726168756c646b6a61696e2f6769746875622d70726f66696c652d726561646d652d67656e657261746f723f7374796c653d666c61742d737175617265" alt="github-profile-readme-generator issues"&gt;
&lt;/a&gt;
&lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/pulls"&gt;
&lt;img src="https://camo.githubusercontent.com/595eecc99764209ee7c0f6642467d53cf37fce1dfd330d755204b37b9d5a4374/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732d70722f726168756c646b6a61696e2f6769746875622d70726f66696c652d726561646d652d67656e657261746f723f7374796c653d666c61742d737175617265" alt="github-profile-readme-generator pull-requests"&gt;
&lt;/a&gt;
&lt;a href="https://discord.gg/HHMs7Eg" rel="nofollow"&gt;
&lt;img src="https://camo.githubusercontent.com/5d0e933dfeedc3b1f1858c90e747b6e384e5ffd7fd3d51b89d23eba613eb3a9b/68747470733a2f2f696d672e736869656c64732e696f2f646973636f72642f3733353330333139353130353935313736343f6c6162656c3d4a6f696e253230436f6d6d756e697479266c6f676f3d646973636f7264267374796c653d666c61742d737175617265" alt="join discord community of github profile readme generator"&gt;
&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://github.com/rahuldkjain/github-profile-readme-generator./src/images/github-profile-readme-generator.gif"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uJrvihS1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://github.com/rahuldkjain/github-profile-readme-generator./src/images/github-profile-readme-generator.gif" alt="github-profile-readme-generator gif"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;
    &lt;a href="https://rahuldkjain.github.io/gh-profile-readme-generator" rel="nofollow"&gt;View Demo&lt;/a&gt;
    ·
    &lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/issues/new/choose"&gt;Report Bug&lt;/a&gt;
    ·
    &lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/issues/new/choose"&gt;Request Feature&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;i&gt;Loved the tool? Please consider &lt;a href="https://paypal.me/rahuldkjain/10" rel="nofollow"&gt;donating&lt;/a&gt;  💸 to help it improve!&lt;/i&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;a href="https://www.paypal.me/rahuldkjain" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/8e89d20419f7babe62aff7e14fca01635ff807cacc549e2a94baabadc4d77349/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f737570706f72742d50617950616c2d626c75653f6c6f676f3d50617950616c267374796c653d666c61742d737175617265266c6162656c3d446f6e617465" alt="sponsor github profile readme generator"&gt;
&lt;/a&gt;
&lt;a href="https://ko-fi.com/A0A81XXSX" rel="nofollow"&gt;&lt;img height="23" width="100" src="https://camo.githubusercontent.com/e0e856ceacf98cab39de00dff46353adc1b5f7675b4d4beca0d3fffd6621aa5c/68747470733a2f2f63646e2e6b6f2d66692e636f6d2f63646e2f6b6f6669332e706e673f763d32" alt="Buy Coffee for rahuldkjain"&gt;
&lt;/a&gt;
&lt;a href="https://www.buymeacoffee.com/rahuldkjain" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/3ba8042b343d12b84b85d2e6563376af4150f9cd09e72428349c1656083c8b5a/68747470733a2f2f63646e2e6275796d6561636f666665652e636f6d2f627574746f6e732f64656661756c742d6f72616e67652e706e67" alt="Buy Me A Coffee" height="23" width="100"&gt;
&lt;/a&gt;&lt;/p&gt;
&lt;a href="https://www.buymeacoffee.com/rahuldkjain" rel="nofollow"&gt;
&lt;/a&gt;&lt;h4&gt;
Tired of editing GitHub Profile README with new features?&lt;/h4&gt;
&lt;p&gt;This tool provides an easy way to create a GitHub profile readme with the latest add-ons such as &lt;code&gt;visitors count&lt;/code&gt;, &lt;code&gt;github stats&lt;/code&gt;, etc.&lt;/p&gt;
&lt;h2&gt;
🚀 Demo&lt;/h2&gt;
&lt;a href="https://rahuldkjain.github.io/gh-profile-readme-generator" rel="nofollow"&gt;
&lt;img src="https://camo.githubusercontent.com/b95ce5f27a58c2e482c4366e63f9dc33d024f78b799dfd9bc47a57e10de6b50d/68747470733a2f2f696d672e736869656c64732e696f2f776562736974653f75726c3d6874747073253341253246253246726168756c646b6a61696e2e6769746875622e696f25324667682d70726f66696c652d726561646d652d67656e657261746f72266c6f676f3d676974687562267374796c653d666c61742d737175617265"&gt;
&lt;/a&gt;
&lt;p&gt;Try the tool: &lt;a href="https://rahuldkjain.github.io/gh-profile-readme-generator" rel="nofollow"&gt;GitHub Profile README Generator&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
🧐 Features&lt;/h2&gt;
&lt;p&gt;Just fill in the details such as &lt;code&gt;Name&lt;/code&gt;, &lt;code&gt;Tagline&lt;/code&gt;, &lt;code&gt;Dev Platforms Username&lt;/code&gt;, &lt;code&gt;Current Work&lt;/code&gt;, &lt;code&gt;Portfolio&lt;/code&gt;, &lt;code&gt;Blog&lt;/code&gt;, etc. with a minimal UI.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Uniform Dev Icons&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Uniform Social Icons&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Visitors Counter Badge&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;GitHub Profile Stats Card&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;GitHub Top Skills&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;GitHub Streak Stats&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Dynamic Dev(.)to Blogs&lt;/strong&gt; (GitHub Action)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Dynamic Medium Blogs&lt;/strong&gt; (GitHub Action)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Dynamic Personal Blogs from RSS Feed&lt;/strong&gt; (GitHub Action)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Wakatime Stats&lt;/strong&gt; &lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator/issues/115"&gt;contribute&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Buy Me A Coffee button&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Click on &lt;code&gt;Generate README&lt;/code&gt; to get your README in &lt;code&gt;markdown&lt;/code&gt;…&lt;/p&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/rahuldkjain/github-profile-readme-generator"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Give it a try if it sounds interesting.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you like the tool, show some love by leaving a star on &lt;a href="https://github.com/rahuldkjain/github-profile-readme-generator"&gt;github repository&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>react</category>
    </item>
    <item>
      <title>windmill animation in 10KB</title>
      <dc:creator>Rahul Jain</dc:creator>
      <pubDate>Sun, 12 Jul 2020 09:11:29 +0000</pubDate>
      <link>https://forem.com/rahuldkjain/windmill-animation-in-10kb-51m8</link>
      <guid>https://forem.com/rahuldkjain/windmill-animation-in-10kb-51m8</guid>
      <description>&lt;p&gt;The monsoon has started in India and I am from Rajasthan(India) which is the abundant source of renewable energies like &lt;code&gt;Solar &amp;amp; Wind Energy&lt;/code&gt;. Thought of animation related to wind energy came to my mind because of the ongoing windy season.&lt;/p&gt;

&lt;p&gt;So I present to you the 7th post for &lt;strong&gt;#10daysofanimation&lt;/strong&gt; series. I am doing this series because of the reason that it enables me to develop interesting animations of small size(~ 10-20KB) to make it feasible for web animations. I followed &lt;code&gt;gsap&lt;/code&gt; library over &lt;code&gt;css-animations&lt;/code&gt; by taking inspiration from a course on &lt;strong&gt;frontend masters&lt;/strong&gt;. If you want to know about the course, leave a comment. &lt;/p&gt;

&lt;h2&gt;
  
  
  Challenge
&lt;/h2&gt;

&lt;p&gt;Today's challenge is to animate the windmill in such a way that it looks more real and interesting.&lt;/p&gt;

&lt;h2&gt;
  
  
  Solution Journey
&lt;/h2&gt;

&lt;p&gt;Let's see the journey to understand the cycle.&lt;/p&gt;

&lt;h4&gt;
  
  
  1. Wireframing the animation
&lt;/h4&gt;

&lt;p&gt;This step involves drawing the animation ideas(at least 3 ideas) on a piece of paper. The sketches need not be perfect, it is only meant for evolving to a good idea. I came up with 4 ideas that involve elements like windmill, birds, clouds, and wind. Then after a lot of thinking and playing, I locked the idea and decided to go with it.&lt;/p&gt;

&lt;h4&gt;
  
  
  2. SVG Image with proper &lt;code&gt;ids&lt;/code&gt; and &lt;code&gt;classes&lt;/code&gt;
&lt;/h4&gt;

&lt;p&gt;The basic element of the animation is the windmill. I googled &lt;code&gt;windmill svg&lt;/code&gt; and found nothing cool that suits my idea. So, I designed the SVG(&lt;strong&gt;size ~5KB&lt;/strong&gt;) using illustrator. The reason why I manually designed it is the size and the ease of assigning &lt;code&gt;ids&lt;/code&gt; to the elements.&lt;/p&gt;

&lt;h4&gt;
  
  
  3. Animate elements using gsap
&lt;/h4&gt;

&lt;p&gt;I divided the animation into three sub animations as&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;RotateBlades&lt;/strong&gt;: to rotate the blades of windmill&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;FlowingWind&lt;/strong&gt;: show wind to add a natural touch&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;FlyingBirds&lt;/strong&gt;: show birds to make it interesting&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Then I compiled all the three into one using &lt;code&gt;gsap.timeline()&lt;/code&gt;.&lt;br&gt;
The animation looks like this&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/rahuldkjain/embed/MWKXNvv?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Looks cool right! The best part of developing such animations is the &lt;strong&gt;size&lt;/strong&gt;. Anyone can easily add such animations into their website/web-app to enhance the UX(User Experience).&lt;/p&gt;

&lt;p&gt;Happy Animating!&lt;/p&gt;

</description>
      <category>10daysofanimation</category>
      <category>gsap</category>
      <category>javascript</category>
    </item>
    <item>
      <title>animated banner for repository README</title>
      <dc:creator>Rahul Jain</dc:creator>
      <pubDate>Thu, 09 Jul 2020 15:58:41 +0000</pubDate>
      <link>https://forem.com/rahuldkjain/animated-banner-for-repository-readme-1ong</link>
      <guid>https://forem.com/rahuldkjain/animated-banner-for-repository-readme-1ong</guid>
      <description>&lt;p&gt;In the last blog, I talked about free TextPlugin of gsap. There is another plugin as &lt;code&gt;MorphSVG&lt;/code&gt; of gsap available only to Greensock club members. I saw its usecases and fell in love with it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Challenge
&lt;/h2&gt;

&lt;p&gt;Develop an animated gif banner for &lt;a href="https://github.com/rahuldkjain/minimal-portfolio"&gt;portfolio&lt;/a&gt; readme.&lt;/p&gt;

&lt;h2&gt;
  
  
  Solution
&lt;/h2&gt;

&lt;p&gt;I really want to use &lt;code&gt;MorphSVG&lt;/code&gt; for this. Greensock made this possible as its premium plugins are accessible on codepen. &lt;br&gt;
So, I thought of a plan that, I will develop the animation in codepen, then record it to convert into gif.&lt;/p&gt;

&lt;p&gt;So I came up with this.&lt;br&gt;
&lt;iframe height="600" src="https://codepen.io/rahuldkjain/embed/BajxYQr?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Please look into the code to understand how I did it.&lt;/p&gt;

&lt;p&gt;Let's see how to use the &lt;code&gt;MorphSVG&lt;/code&gt; Plugin.&lt;/p&gt;

&lt;h3&gt;
  
  
  Installation
&lt;/h3&gt;

&lt;p&gt;Follow this &lt;a href="https://codepen.io/GreenSock/full/23d3979528b262cb07da37f6a7c7dd76"&gt;link&lt;/a&gt; to get the cdn link to be used in codepen. Copy the cdn link.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// otherwise include the cdn link &lt;/span&gt;
&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;script&lt;/span&gt; &lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;https://s3-us-west-2.amazonaws.com/s.cdpn.io/16327/MorphSVGPlugin3.min.js&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/script&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;or you can import it if you are using npm module.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// use this only when you are using webpack&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;gsap&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;gsap&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;MorphSVGPlugin&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;gsap/MorphSVGPlugin&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;then register the Plugin as&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;gsap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;registerPlugin&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;MorphSVGPlugin&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now you are ready to use the plugin.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;MorphSVGPlugin&lt;/code&gt; morphs SVG paths by animating the data inside the &lt;strong&gt;d&lt;/strong&gt; attribute.&lt;/p&gt;

&lt;p&gt;Remember that it only works with &lt;code&gt;path&lt;/code&gt; data values, so you need to convert the primitive shapes to path. There’s a utility function, &lt;code&gt;MorphSVGPlugin.convertToPath()&lt;/code&gt;, that can convert primitive shapes like &lt;code&gt;&amp;lt;circle&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;rect&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;ellipse&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;polygon&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;polyline&amp;gt;&lt;/code&gt;, and &lt;code&gt;&amp;lt;line&amp;gt;&lt;/code&gt; directly into the equivalent &lt;code&gt;&amp;lt;path&amp;gt;&lt;/code&gt; that looks identical to the original and is swapped right into the DOM.&lt;/p&gt;

&lt;p&gt;Now follow the &lt;a href="https://greensock.com/docs/v3/Plugins/MorphSVGPlugin"&gt;official documentation&lt;/a&gt; to understand how to use it in a better way.&lt;/p&gt;

&lt;p&gt;After developing the animation, record the animation. I would recommend &lt;a href="https://chrome.google.com/webstore/detail/screen-recorder/dhopldobnfjeckokfjimfcdagmlhjdce?hl=en"&gt;Screen Recorder&lt;/a&gt; chrome extension to record the animation.&lt;br&gt;
Then you can convert the video using &lt;a href="https://ezgif.com/video-to-gif"&gt;EZGif&lt;/a&gt; converter to convert it in gif.&lt;/p&gt;

&lt;p&gt;I hope you liked this one. More cool animations to come soon, stay tuned!&lt;/p&gt;

&lt;p&gt;Happy Animating!&lt;/p&gt;

</description>
      <category>10daysofanimation</category>
      <category>gsap</category>
      <category>javascript</category>
    </item>
    <item>
      <title>typing text animation in terminal using gsap </title>
      <dc:creator>Rahul Jain</dc:creator>
      <pubDate>Wed, 08 Jul 2020 14:57:22 +0000</pubDate>
      <link>https://forem.com/rahuldkjain/typing-text-animation-in-terminal-using-gsap-512j</link>
      <guid>https://forem.com/rahuldkjain/typing-text-animation-in-terminal-using-gsap-512j</guid>
      <description>&lt;p&gt;The cool thing about gsap is that you can create animations as small as &lt;code&gt;~20kb&lt;/code&gt;. Yes you read it right. You can create and embed your animations to your website which is less than size of an image. SVG Animations using gsap make this possible.&lt;/p&gt;

&lt;p&gt;I am a huge fan of text animations, but didn't developed any because of the fear of dealing with CSS keyframes. But now I can proudly animation such animations within 10-15 minutes.&lt;/p&gt;

&lt;p&gt;Today, I'll be talking about &lt;strong&gt;TextPlugin&lt;/strong&gt; of gsap to create typing effect. &lt;/p&gt;

&lt;h2&gt;
  
  
  Challenge
&lt;/h2&gt;

&lt;p&gt;Create an animation showing typing commands in the terminal&lt;/p&gt;

&lt;h2&gt;
  
  
  Solution
&lt;/h2&gt;

&lt;p&gt;TextPlugin came to rescue to make the life easy. You can easily manipulate the text with typing effect in &lt;strong&gt;1 line of code&lt;/strong&gt;. Sounds great right.&lt;/p&gt;

&lt;p&gt;See what I came up with&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/rahuldkjain/embed/dyGeGWb?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;If you feel to create your own, follow the instructions&lt;/p&gt;

&lt;h3&gt;
  
  
  Installation
&lt;/h3&gt;

&lt;p&gt;GSAP do not provide this functionality in its core code. So you need to register this plugin by importing it.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// using cdn&lt;/span&gt;
&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;script&lt;/span&gt; &lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;https://cdnjs.cloudflare.com/ajax/libs/gsap/3.3.4/gsap.min.js&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/script&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;script&lt;/span&gt; &lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;https://cdnjs.cloudflare.com/ajax/libs/gsap/3.3.4/TextPlugin.min.js&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/script&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then register the plugin&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// only if you are using webpack&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;gsap&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;gsap&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;TextPlugin&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;TextPlugin&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="c1"&gt;// Registering the plugin in gsap&lt;/span&gt;
&lt;span class="nx"&gt;gsap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;registerPlugin&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;TextPlugin&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now you're good to go.&lt;/p&gt;

&lt;h3&gt;
  
  
  Syntax
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;//replaces yourElement's text with "This is the new text" over the course of 2 seconds&lt;/span&gt;
&lt;span class="nx"&gt;gsap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;yourElement&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="na"&gt;text&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;This is the new text&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;ease&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nx"&gt;Linear&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;easeNone&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;//replaces word-by-word because the delimiter is " " (a space)&lt;/span&gt;
&lt;span class="nx"&gt;gsap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;yourElement&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="na"&gt;text&lt;/span&gt;&lt;span class="p"&gt;:{&lt;/span&gt;&lt;span class="na"&gt;value&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;This is the new text&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;delimiter&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt; &lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="na"&gt;ease&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nx"&gt;Linear&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;easeNone&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To know more about this plugin, please refer the official documentation(link in the comment section).&lt;/p&gt;

&lt;h3&gt;
  
  
  How I made the above animation
&lt;/h3&gt;

&lt;p&gt;I saved the texts like this&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;TEXT_2&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;cd ~/Documents/Projects/portfolio&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;TEXT_3&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Macbook-Pro:~  Documents/Projects/portfolio$ &lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;TEXT_4&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;npm run dev&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;TEXT_5&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;building project&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;TEXT_6&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;project running on http://localhost:8080/&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then I developed sub-animations to be used in timeline as&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;displayText_2&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;gsap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;#text-2&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="na"&gt;duration&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;2.2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="na"&gt;text&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;TEXT_2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="na"&gt;ease&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;none&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
    &lt;span class="p"&gt;});&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For each and every text lines, I developed such sub-animations.&lt;/p&gt;

&lt;p&gt;Now it's time to complete the animation with the help of labels using timeline&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;master&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nx"&gt;gsap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;timeline&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;&lt;span class="na"&gt;repeat&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;repeatDelay&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;start&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;initial&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;start-=0.2&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayText_2&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;start+=1&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;text-2&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayText_3&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;text-2+=0.5&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;text-3&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayText_4&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;text-3+=0.3&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;text-4&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayText_5&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;text-4+=0.5&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;text-5&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;changePercentage&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;1%&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;text-5+=0.05&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;changePercentage&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;27%&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;p&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;changePercentage&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;49%&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;p+=1.5&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;changePercentage&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;76%&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;changePercentage&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;100%&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;percentage&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayPreText_6&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;percentage+=0.5&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayText_6&lt;/span&gt;&lt;span class="p"&gt;());&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I hope you liked it. Many more cool animations to come. Stay Tuned.&lt;/p&gt;

&lt;p&gt;Happy Animating!&lt;/p&gt;

</description>
      <category>10daysofanimation</category>
      <category>gsap</category>
      <category>javascript</category>
    </item>
    <item>
      <title>let's animate minion using gsap</title>
      <dc:creator>Rahul Jain</dc:creator>
      <pubDate>Tue, 07 Jul 2020 15:23:33 +0000</pubDate>
      <link>https://forem.com/rahuldkjain/let-s-animate-minion-using-gsap-4iem</link>
      <guid>https://forem.com/rahuldkjain/let-s-animate-minion-using-gsap-4iem</guid>
      <description>&lt;p&gt;This is the fourth post of &lt;code&gt;10 Days of Animation&lt;/code&gt; and I am loving it. Today, I'll walk you through &lt;strong&gt;timeline&lt;/strong&gt; functionality of gsap. &lt;br&gt;
As the name suggests, &lt;code&gt;timeline&lt;/code&gt; feature lets you animate in sequence. The flexibility gsap provide makes it even more awesome. &lt;/p&gt;

&lt;p&gt;I used timeline to animate minion like this.&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/rahuldkjain/embed/qBboxqR?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Cool right!&lt;br&gt;
If you are curious to know how to do such stuff, please read the whole article.&lt;/p&gt;

&lt;p&gt;If you look carefully, you'll understand that the animation combines of multiple animations one after the other. Let me make this simple for you. The animations used in sequence to make the animation visually interesting are:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;displayBody()
bringGoggles()
displayGoggleShadow()
displayDungaree()
displayEyes()
moveEyes()
displayHand()
jump()
displayLegs()
displayShadow()
displayMouth()
displayHair()
blinkEyes()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The best part is that you can animate these sub-animations individually and then combine it using timeline.&lt;/p&gt;

&lt;p&gt;The syntax look like this&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;master&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nx"&gt;gsap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;timeline&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;&lt;span class="na"&gt;repeat&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;repeatDelay&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;0.3&lt;/span&gt;&lt;span class="p"&gt;})&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To manage the timings, labels or checkpoints are used. See how I used it.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;checkpoint-1&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayBody&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;checkpoint-1&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;goggle&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;checkpoint-1+=0.2&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;checkpoint-2&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayGoggleShadow&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;checkpoint-2-=0.3&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayDungaree&lt;/span&gt;&lt;span class="p"&gt;()).&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayEyes&lt;/span&gt;&lt;span class="p"&gt;()).&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;moveEyes&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;)).&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayHand&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;.left-hand&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;moveEyes&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;)).&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayHand&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;.right-hand&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)).&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;moveEyes&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;checkpoint-3&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;jump&lt;/span&gt;&lt;span class="p"&gt;()).&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayLegs&lt;/span&gt;&lt;span class="p"&gt;()).&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayShadow&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;checkpoint-3&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayMouth&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;checkpoint-3+=0.8&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;displayHair&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;checkpoint-3+=0.8&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;master&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;blinkEyes&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This looks simple, I am telling you this sole feature takes the animation to a next level.&lt;br&gt;
I am coming with more crazy animations in the coming days. &lt;br&gt;
Stay tuned.&lt;/p&gt;

&lt;p&gt;Happy Animating!&lt;/p&gt;

</description>
      <category>10daysofanimation</category>
      <category>gsap</category>
      <category>javascript</category>
    </item>
    <item>
      <title>using gsap stagger function to make animations more visually interesting</title>
      <dc:creator>Rahul Jain</dc:creator>
      <pubDate>Mon, 06 Jul 2020 12:13:40 +0000</pubDate>
      <link>https://forem.com/rahuldkjain/using-gsap-stagger-function-to-make-animations-more-visually-interesting-4dah</link>
      <guid>https://forem.com/rahuldkjain/using-gsap-stagger-function-to-make-animations-more-visually-interesting-4dah</guid>
      <description>&lt;p&gt;&lt;strong&gt;gsap stagger&lt;/strong&gt; proves out to be an awesome feature when the animation involves multiple elements having same properties or same class to be more precise.&lt;/p&gt;

&lt;p&gt;Tweaking a few options can make your animations much more visually interesting. You may be surprised by just how easy it is to create advanced effects with a tiny amount of code. &lt;/p&gt;

&lt;p&gt;Adding a stagger to a multi-target element basically offsets the starting time of each target's animation.&lt;/p&gt;

&lt;p&gt;All elements(with the same class i.e targetElement) recognize a stagger property which can be a number, an object, or a function.&lt;/p&gt;

&lt;p&gt;Let's understand it better with the help of a simple example.&lt;/p&gt;

&lt;h3&gt;
  
  
  Challenge
&lt;/h3&gt;

&lt;p&gt;Rolling balls animation that looks real(i.e following physics laws).&lt;/p&gt;

&lt;h3&gt;
  
  
  Solution
&lt;/h3&gt;

&lt;p&gt;Create balls in svg and assign &lt;code&gt;class='ball'&lt;/code&gt; to all of them. Align them horizontally with equal distance between them. I'll move the first ball horizontally using &lt;code&gt;x: 70&lt;/code&gt; and rotate along z axis using &lt;code&gt;rotateZ: 360&lt;/code&gt; by transforming the origin as &lt;code&gt;transformOrigin: "50% 50%"&lt;/code&gt;.&lt;br&gt;
As there are 6 balls, I'll set the animation duration to be 3s with stagger delay of 0.5s as &lt;code&gt;stagger: 0.5&lt;/code&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;gsap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;.ball&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="na"&gt;duration&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;x&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;70&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;transformOrigin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;50% 50%&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;rotateZ&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;360&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;ease&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;back.out(1.7)&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;stagger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;0.5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;repeat&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It will look like this&lt;br&gt;
&lt;iframe height="600" src="https://codepen.io/rahuldkjain/embed/oNbEwNa?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Looks real ha! I know the animation is basic, but believe me gsap stagger is really powerful.&lt;/p&gt;

&lt;p&gt;Other animations that I made are as follows&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/rahuldkjain/embed/XWXVPoX?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;br&gt;
&lt;iframe height="600" src="https://codepen.io/rahuldkjain/embed/rNxerEa?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;br&gt;
&lt;iframe height="600" src="https://codepen.io/rahuldkjain/embed/QWyaQmy?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;br&gt;
&lt;iframe height="600" src="https://codepen.io/rahuldkjain/embed/mdVpGpq?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Happy Animating!&lt;/p&gt;

</description>
      <category>10daysofanimation</category>
      <category>javascript</category>
      <category>gsap</category>
    </item>
    <item>
      <title>Getting familiar with gsap.to and gsap.fromTo functions</title>
      <dc:creator>Rahul Jain</dc:creator>
      <pubDate>Sun, 05 Jul 2020 13:10:40 +0000</pubDate>
      <link>https://forem.com/rahuldkjain/day-1-getting-familiar-with-gsap-to-and-gsap-fromto-functions-5bc8</link>
      <guid>https://forem.com/rahuldkjain/day-1-getting-familiar-with-gsap-to-and-gsap-fromto-functions-5bc8</guid>
      <description>

&lt;p&gt;GSAP library comes up with awesome features to create animations with fewer lines of code and great flexibility. Let's cut the crap and start learning with me using simple examples.&lt;/p&gt;

&lt;h2&gt;
  
  
  gsap.to() function
&lt;/h2&gt;

&lt;p&gt;If you are familiar with &lt;code&gt;CSS Keyframes&lt;/code&gt; then it will be a piece of cake for you. It is used to animate the element from current state(in DOM) to the final state(100% keyframe).&lt;/p&gt;

&lt;p&gt;gsap.to() function takes two arguments.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;gsap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;targetElement&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;changes&lt;/span&gt; &lt;span class="nx"&gt;to&lt;/span&gt; &lt;span class="nx"&gt;be&lt;/span&gt; &lt;span class="nx"&gt;made&lt;/span&gt; &lt;span class="p"&gt;})&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Let's say I have a ball element with &lt;code&gt;id="ball"&lt;/code&gt; and I want to bounce this ball. So the code goes like this&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;gsap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;to&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;#ball&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
   &lt;span class="na"&gt;y&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;  &lt;span class="c1"&gt;// to drop the ball i.e transform: translateY(200px)&lt;/span&gt;
   &lt;span class="na"&gt;duration&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;1.5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="c1"&gt;// duration of the animation&lt;/span&gt;
   &lt;span class="na"&gt;repeat&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="c1"&gt;// to repeat infinite times&lt;/span&gt;
   &lt;span class="na"&gt;ease&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;bounce.out&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="c1"&gt;// to give the bounce effect,&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I know you are thinking what the heck &lt;code&gt;ease: bounce.out&lt;/code&gt; is that. Don't panic, it's just an ease function that &lt;strong&gt;gsap&lt;/strong&gt; provides to give bouncing effect. Check out other ease visualizers &lt;a href="https://greensock.com/ease-visualizer/"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;NOTE&lt;/code&gt; Properties to change things in gsap differs from CSS properties. I recommend you to bookmark gsap-cheatsheat for future purpose.&lt;/p&gt;

&lt;p&gt;Let's see the result.&lt;br&gt;
&lt;iframe height="600" src="https://codepen.io/rahuldkjain/embed/OJMQxVB?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  gsap.fromTo() function
&lt;/h2&gt;

&lt;p&gt;As the name suggests, this function is used to animate the element from &lt;code&gt;initial state&lt;/code&gt; to &lt;code&gt;final state&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;gsap.fromTo() takes three arguments.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;gsap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;fromTo&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;targetElement&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;initialState&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;finalState&lt;/span&gt; &lt;span class="p"&gt;})&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Let's say I want to draw user's attention to a specific button using &lt;code&gt;box-shadow&lt;/code&gt; property like this&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/rahuldkjain/embed/KKVZZyE?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;In pure CSS, for button with &lt;code&gt;class="css-button"&lt;/code&gt; I'll do something like this&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nc"&gt;.css-button&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;animation&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;inout&lt;/span&gt; &lt;span class="m"&gt;1s&lt;/span&gt; &lt;span class="n"&gt;ease&lt;/span&gt; &lt;span class="n"&gt;infinite&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="k"&gt;@keyframes&lt;/span&gt; &lt;span class="n"&gt;inout&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="err"&gt;0&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;-webkit-box-shadow&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0px&lt;/span&gt; &lt;span class="n"&gt;rgba&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;0.4&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="nl"&gt;-moz-box-shadow&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0px&lt;/span&gt; &lt;span class="n"&gt;rgba&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;0.4&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="nl"&gt;box-shadow&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0px&lt;/span&gt; &lt;span class="n"&gt;rgba&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;0.4&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="err"&gt;100&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;-webkit-box-shadow&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;20px&lt;/span&gt; &lt;span class="n"&gt;rgba&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="nl"&gt;-moz-box-shadow&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;20px&lt;/span&gt; &lt;span class="n"&gt;rgba&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="nl"&gt;box-shadow&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;20px&lt;/span&gt; &lt;span class="n"&gt;rgba&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;But in gsap, it hardly takes 4-5 lines to do the magic. For a button with &lt;code&gt;class="gsap-button"&lt;/code&gt; I'll do something like this.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;gsap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;fromTo&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;.gsap-button&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;boxShadow&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;0 0 0 0px rgba(130, 195, 3, 0.4)&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;boxShadow&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;0 0 0 20px rgba(130, 195, 3, 0)&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;repeat&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;duration&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That's it! &lt;code&gt;gsap.to()&lt;/code&gt; and &lt;code&gt;gsap.fromTo()&lt;/code&gt; lays the foundation to learn the gsap library.&lt;/p&gt;

&lt;p&gt;Happy Animating!&lt;/p&gt;

</description>
      <category>10daysofanimation</category>
      <category>gsap</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
