<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ashokkumar</title>
    <description>The latest articles on DEV Community by Ashokkumar (@a8hok).</description>
    <link>https://dev.to/a8hok</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%2F149793%2F12241224-ddc0-4824-80e4-bfb18a2ace46.jpeg</url>
      <title>DEV Community: Ashokkumar</title>
      <link>https://dev.to/a8hok</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/a8hok"/>
    <language>en</language>
    <item>
      <title>Study Guide for Full Stack Developer</title>
      <dc:creator>Ashokkumar</dc:creator>
      <pubDate>Sat, 02 Mar 2024 06:37:32 +0000</pubDate>
      <link>https://dev.to/a8hok/study-guide-for-full-stack-developer-41l8</link>
      <guid>https://dev.to/a8hok/study-guide-for-full-stack-developer-41l8</guid>
      <description>&lt;p&gt;Each repository contains a comprehensive study guide with useful links tailored for full stack developers. Explore these resources to enhance your skills and knowledge across various domains.&lt;/p&gt;




&lt;h3&gt;
  
  
  VERSION CONTROL
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt; GIT &amp;amp; GITHUB
&lt;a href="https://github.com/a8hok/Git-Github-Study-Guide" rel="noopener noreferrer"&gt;https://github.com/a8hok/Git-Github-Study-Guide&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  FRONTEND
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;h4&gt;
  
  
  HTML &amp;amp; CSS
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://github.com/a8hok/HTML-CSS-Study-Guide" rel="noopener noreferrer"&gt;https://github.com/a8hok/HTML-CSS-Study-Guide&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;h4&gt;
  
  
  JAVASCRIPT
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://github.com/a8hok/JavaScript-Study-Guide" rel="noopener noreferrer"&gt;https://github.com/a8hok/JavaScript-Study-Guide&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;h4&gt;
  
  
  TYPESCRIPT
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://github.com/a8hok/Typescript-Study-Guide" rel="noopener noreferrer"&gt;https://github.com/a8hok/Typescript-Study-Guide&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;h4&gt;
  
  
  REACTJS
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://github.com/a8hok/JavaScript-Study-Guide" rel="noopener noreferrer"&gt;https://github.com/a8hok/JavaScript-Study-Guide&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;h4&gt;
  
  
  NEXTJS
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://github.com/a8hok/NextJS-Study-Guide" rel="noopener noreferrer"&gt;https://github.com/a8hok/NextJS-Study-Guide&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  BACKEND
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;h4&gt;
  
  
  NODEJS
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://github.com/a8hok/NodeJS-Study-Guide" rel="noopener noreferrer"&gt;https://github.com/a8hok/NodeJS-Study-Guide&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;h4&gt;
  
  
  Python
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://github.com/a8hok/Python-Study-Guide" rel="noopener noreferrer"&gt;https://github.com/a8hok/Python-Study-Guide&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  DATABASE
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;DATABASE
&lt;a href="https://github.com/a8hok/DataBase-Study-Guide" rel="noopener noreferrer"&gt;https://github.com/a8hok/DataBase-Study-Guide&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  CLOUD SERVICES
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt; DEVOPS
&lt;a href="https://github.com/a8hok/DevOps-Study-Guide" rel="noopener noreferrer"&gt;https://github.com/a8hok/DevOps-Study-Guide&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Useful ReactJS links - Study Guide</title>
      <dc:creator>Ashokkumar</dc:creator>
      <pubDate>Sat, 08 Apr 2023 01:26:15 +0000</pubDate>
      <link>https://dev.to/a8hok/useful-reactjs-links-interview-preparation-3o42</link>
      <guid>https://dev.to/a8hok/useful-reactjs-links-interview-preparation-3o42</guid>
      <description>&lt;p&gt;Hey Guys !! &lt;/p&gt;

&lt;p&gt;I have listed some of the useful links which will help you to crack ReactJS interview.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/a8hok/ReactJS-Interview" rel="noopener noreferrer"&gt;ReactJS Github&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Please find the table of contents,&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;React Life cycle
React Road map for beginners
React Performance
React tips and Tricks
React Hooks
React Libraries
React interview questions
React Learn
React Projects
React Unittest
Architecture
React checklist
React with WebPack
Error handling
React with typescript
React with DynamoDB
NextJS
React Resources
Redux
React GraphQL
React Github
React Linkedin
React Router
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;code&gt;React Life cycle&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://medium.com/swlh/react-lifecycle-hooks-71547ef4e7a8" rel="noopener noreferrer"&gt;https://medium.com/swlh/react-lifecycle-hooks-71547ef4e7a8&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.pusher.com/beginners-guide-react-component-lifecycle/" rel="noopener noreferrer"&gt;https://blog.pusher.com/beginners-guide-react-component-lifecycle/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.topcoder.com/thrive/articles/lifecycle-methods-in-react-js" rel="noopener noreferrer"&gt;https://www.topcoder.com/thrive/articles/lifecycle-methods-in-react-js&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React Road map for beginners&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/suhailzone/reactjs-roadmap-for-beginners-2021-14en"&gt;https://dev.to/suhailzone/reactjs-roadmap-for-beginners-2021-14en&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/digvijayjadhav98/roadmap-for-react-js-2022-4ccn"&gt;https://dev.to/digvijayjadhav98/roadmap-for-react-js-2022-4ccn&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dhiwise/advanced-roadmap-for-reactjs-developers-108d"&gt;https://dev.to/dhiwise/advanced-roadmap-for-reactjs-developers-108d&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React Performance&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/optimize-react-apps-using-a-multi-layered-structure/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/optimize-react-apps-using-a-multi-layered-structure/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/react-app-performance-optimization-the-definitive-guide-9b658be3b6e4" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/react-app-performance-optimization-the-definitive-guide-9b658be3b6e4&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://hackernoon.com/top-9-tips-to-improve-react-performance?source=rss" rel="noopener noreferrer"&gt;https://hackernoon.com/top-9-tips-to-improve-react-performance?source=rss&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/asjadanis/optimizing-react-app-performance-16lp"&gt;https://dev.to/asjadanis/optimizing-react-app-performance-16lp&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/@khannapranshu33/react-performance-tips-a74f03efe437" rel="noopener noreferrer"&gt;https://medium.com/@khannapranshu33/react-performance-tips-a74f03efe437&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/@caglayanyanikoglu/react-performance-improvements-356f81b1904f" rel="noopener noreferrer"&gt;https://medium.com/@caglayanyanikoglu/react-performance-improvements-356f81b1904f&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/ahmedgmurtaza/react-performance-optimization-usememo-vs-usecallback-2p2a"&gt;https://dev.to/ahmedgmurtaza/react-performance-optimization-usememo-vs-usecallback-2p2a&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.paulsblog.dev/advanced-react-ui-components-to-optimize-development-process/" rel="noopener noreferrer"&gt;https://www.paulsblog.dev/advanced-react-ui-components-to-optimize-development-process/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/@antoniocastillom78/simple-ways-to-improve-your-react-app-performance-without-usememo-2502a7260d75" rel="noopener noreferrer"&gt;https://medium.com/@antoniocastillom78/simple-ways-to-improve-your-react-app-performance-without-usememo-2502a7260d75&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/rendering-images-the-better-way-f0963c25ef04" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/rendering-images-the-better-way-f0963c25ef04&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://nerdleveltech.com/how-to-be-better-with-performance-optimization-in-react/" rel="noopener noreferrer"&gt;https://nerdleveltech.com/how-to-be-better-with-performance-optimization-in-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dzone.com/articles/how-to-improve-reactjs-website-performance" rel="noopener noreferrer"&gt;https://dzone.com/articles/how-to-improve-reactjs-website-performance&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://nerdleveltech.com/how-to-be-better-in-react-code-reusability-part1/" rel="noopener noreferrer"&gt;https://nerdleveltech.com/how-to-be-better-in-react-code-reusability-part1/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/devland/how-to-optimize-your-react-apps-performance-1045"&gt;https://dev.to/devland/how-to-optimize-your-react-apps-performance-1045&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://howtocrackit.com/mastering-react-memo-for-optimal-performance-tips-and-tricks/" rel="noopener noreferrer"&gt;https://howtocrackit.com/mastering-react-memo-for-optimal-performance-tips-and-tricks/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React tips and Tricks&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/wojtekmaj/optimizing-react-app-hardcore-edition-2h1"&gt;https://dev.to/wojtekmaj/optimizing-react-app-hardcore-edition-2h1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://daily.dev/blog/building-react-micro-components-with-styled-system" rel="noopener noreferrer"&gt;https://daily.dev/blog/building-react-micro-components-with-styled-system&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://betterprogramming.pub/21-best-practices-for-a-clean-react-project-df788a682fb" rel="noopener noreferrer"&gt;https://betterprogramming.pub/21-best-practices-for-a-clean-react-project-df788a682fb&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.infoworld.com/article/3616579/10-tips-for-tuning-react-ui-performance.html" rel="noopener noreferrer"&gt;https://www.infoworld.com/article/3616579/10-tips-for-tuning-react-ui-performance.html&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://luisarbezerra.com/react-clean-code-for-beginners" rel="noopener noreferrer"&gt;https://luisarbezerra.com/react-clean-code-for-beginners&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/react-reference-guide-hooks-api/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/react-reference-guide-hooks-api/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://betterprogramming.pub/21-best-practices-for-a-clean-react-project-df788a682fb" rel="noopener noreferrer"&gt;https://betterprogramming.pub/21-best-practices-for-a-clean-react-project-df788a682fb&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/victorocna/my-secret-trick-for-writing-great-react-components-fb8"&gt;https://dev.to/victorocna/my-secret-trick-for-writing-great-react-components-fb8&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/alexomeyer/10-must-have-react-developer-tools-to-write-clean-code-1808"&gt;https://dev.to/alexomeyer/10-must-have-react-developer-tools-to-write-clean-code-1808&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dzone.com/articles/best-coding-practices-in-reactjs" rel="noopener noreferrer"&gt;https://dzone.com/articles/best-coding-practices-in-reactjs&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/ui-design-best-practices-loading-error-empty-state-react/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/ui-design-best-practices-loading-error-empty-state-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.whereisthemouse.com/good-practices-for-loading-error-and-empty-states-in-react" rel="noopener noreferrer"&gt;https://blog.whereisthemouse.com/good-practices-for-loading-error-and-empty-states-in-react&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devsmitra/react-best-practices-and-patterns-to-reduce-code-part-3-4bh1"&gt;https://dev.to/devsmitra/react-best-practices-and-patterns-to-reduce-code-part-3-4bh1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://tapajyoti-bose.medium.com/7-tips-for-clean-react-typescript-code-you-must-know-3ebd34af343f" rel="noopener noreferrer"&gt;https://tapajyoti-bose.medium.com/7-tips-for-clean-react-typescript-code-you-must-know-3ebd34af343f&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/11-mistakes-to-avoid-when-using-react-in-2022-d93d26c46181" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/11-mistakes-to-avoid-when-using-react-in-2022-d93d26c46181&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/ahmedgmurtaza/react-performance-optimization-usememo-vs-usecallback-2p2a"&gt;https://dev.to/ahmedgmurtaza/react-performance-optimization-usememo-vs-usecallback-2p2a&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dzone.com/articles/5-tips-for-optimizing-your-react-apps-performance" rel="noopener noreferrer"&gt;https://dzone.com/articles/5-tips-for-optimizing-your-react-apps-performance&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/perssondennis/react-anti-patterns-and-best-practices-dos-and-donts-3c2g"&gt;https://dev.to/perssondennis/react-anti-patterns-and-best-practices-dos-and-donts-3c2g&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.joshwcomeau.com/react/common-beginner-mistakes/" rel="noopener noreferrer"&gt;https://www.joshwcomeau.com/react/common-beginner-mistakes/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.devgenius.io/solid-principles-in-reactjs-1d225dd22a3f" rel="noopener noreferrer"&gt;https://blog.devgenius.io/solid-principles-in-reactjs-1d225dd22a3f&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://nerdleveltech.com/how-to-be-better-in-react-code-reusability-part2/" rel="noopener noreferrer"&gt;https://nerdleveltech.com/how-to-be-better-in-react-code-reusability-part2/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://enlear.academy/top-7-ways-to-create-react-app-without-using-create-react-app-eca5625386d7" rel="noopener noreferrer"&gt;https://enlear.academy/top-7-ways-to-create-react-app-without-using-create-react-app-eca5625386d7&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/codeofrelevancy/take-your-code-to-the-other-side-48p3"&gt;https://dev.to/codeofrelevancy/take-your-code-to-the-other-side-48p3&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/how-to-build-a-react-app-different-ways/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/how-to-build-a-react-app-different-ways/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React Hooks&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/react-hooks-the-complete-guide-5c176ca825f6" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/react-hooks-the-complete-guide-5c176ca825f6&lt;/a&gt;
&lt;a href="https://dev.to/ash_bergs/a-quick-guide-to-understanding-react-hooks-4o1"&gt;https://dev.to/ash_bergs/a-quick-guide-to-understanding-react-hooks-4o1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dmitripavlutin.com/react-usememo-hook/" rel="noopener noreferrer"&gt;https://dmitripavlutin.com/react-usememo-hook/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/jonathanrodriguezs/react-design-patterns-33id"&gt;https://dev.to/jonathanrodriguezs/react-design-patterns-33id&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/ishakmohmed/react-hooks-usecontext-useeffect-usestate-useref-summarized-like-crazy-short-concise-article-254k"&gt;https://dev.to/ishakmohmed/react-hooks-usecontext-useeffect-usestate-useref-summarized-like-crazy-short-concise-article-254k&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://brayanarrieta.hashnode.dev/when-to-usecallback-and-usememo-in-our-react-projects-1" rel="noopener noreferrer"&gt;https://brayanarrieta.hashnode.dev/when-to-usecallback-and-usememo-in-our-react-projects-1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/react-hooks-cheatsheet/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/react-hooks-cheatsheet/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/what-is-state-in-react-explained-with-examples/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/what-is-state-in-react-explained-with-examples/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/react-hooks-cheat-sheet-unlock-solutions-to-common-problems-af4caf699e70/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/react-hooks-cheat-sheet-unlock-solutions-to-common-problems-af4caf699e70/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/epic-react-react-hooks-ceb04b8ec513" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/epic-react-react-hooks-ceb04b8ec513&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/how-to-create-react-hooks/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/how-to-create-react-hooks/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/colocodes/6-use-cases-of-the-useeffect-reactjs-hook-282o"&gt;https://dev.to/colocodes/6-use-cases-of-the-useeffect-reactjs-hook-282o&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/@souravsaha101/react-hooks-complete-interview-guide-44dbfe3841b4" rel="noopener noreferrer"&gt;https://medium.com/@souravsaha101/react-hooks-complete-interview-guide-44dbfe3841b4&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://pulackh.medium.com/react-js-summary-on-react-hooks-934bf25c3b2a" rel="noopener noreferrer"&gt;https://pulackh.medium.com/react-js-summary-on-react-hooks-934bf25c3b2a&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://enlear.academy/types-of-react-hooks-best-practices-45c275b55b1f" rel="noopener noreferrer"&gt;https://enlear.academy/types-of-react-hooks-best-practices-45c275b55b1f&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/imrishabh18/simplest-custom-hook-to-persist-data-1odd"&gt;https://dev.to/imrishabh18/simplest-custom-hook-to-persist-data-1odd&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/surajmore98/hooks-in-react-4f6a"&gt;https://dev.to/surajmore98/hooks-in-react-4f6a&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dev117uday/react-hooks-0-to-hero-4b7o"&gt;https://dev.to/dev117uday/react-hooks-0-to-hero-4b7o&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/options-caching-react/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/options-caching-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/real-life-use-cases-for-usecallback-and-usememo-7fa6f787b7e0" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/real-life-use-cases-for-usecallback-and-usememo-7fa6f787b7e0&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.greenroots.info/react-hook-usestate-lazy-initialization-previous-state" rel="noopener noreferrer"&gt;https://blog.greenroots.info/react-hook-usestate-lazy-initialization-previous-state&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.greenroots.info/react-useeffect-hook-usages-you-must-know" rel="noopener noreferrer"&gt;https://blog.greenroots.info/react-useeffect-hook-usages-you-must-know&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.robinwieruch.de/react-uselocalstorage-hook/" rel="noopener noreferrer"&gt;https://www.robinwieruch.de/react-uselocalstorage-hook/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://courses.webdevsimplified.com/view/courses/react-hooks-simplified/1411296-introduction/4376388-00-introduction" rel="noopener noreferrer"&gt;https://courses.webdevsimplified.com/view/courses/react-hooks-simplified/1411296-introduction/4376388-00-introduction&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://ehsangazar.com/best-tutorial-for-11-react-hooks-5acb90463d6f?gi=6351bbe83221" rel="noopener noreferrer"&gt;https://ehsangazar.com/best-tutorial-for-11-react-hooks-5acb90463d6f?gi=6351bbe83221&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/builderio/a-cure-for-react-usestate-hell-1ldi"&gt;https://dev.to/builderio/a-cure-for-react-usestate-hell-1ldi&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/full-guide-to-react-hooks/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/full-guide-to-react-hooks/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/builderio/a-cure-for-react-usestate-hell-1ldi"&gt;https://dev.to/builderio/a-cure-for-react-usestate-hell-1ldi&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://itnext.io/using-usememo-and-usecallback-to-save-history-from-react-langoliers-8eb7bb72c87" rel="noopener noreferrer"&gt;https://itnext.io/using-usememo-and-usecallback-to-save-history-from-react-langoliers-8eb7bb72c87&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.smashingmagazine.com/2020/11/react-useref-hook/" rel="noopener noreferrer"&gt;https://www.smashingmagazine.com/2020/11/react-useref-hook/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/understanding-react-hooks/" rel="noopener noreferrer"&gt;https://blog.openreplay.com/understanding-react-hooks/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/nitinfab/understanding-react-context-a-comprehensive-tutorial-for-beginners-2cpl"&gt;https://dev.to/nitinfab/understanding-react-context-a-comprehensive-tutorial-for-beginners-2cpl&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/stop-using-usememo-now-e5d07d2bbf70" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/stop-using-usememo-now-e5d07d2bbf70&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/@ishahmeer/mastering-reacts-useeffect-hook-a-comprehensive-guide-950f2c7836e6" rel="noopener noreferrer"&gt;https://medium.com/@ishahmeer/mastering-reacts-useeffect-hook-a-comprehensive-guide-950f2c7836e6&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React Libraries&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/coursesity/react-libraries-to-use-in-2021-15-top-picks-37d7"&gt;https://dev.to/coursesity/react-libraries-to-use-in-2021-15-top-picks-37d7&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/react-libraries-you-should-use/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/react-libraries-you-should-use/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/25-hand-picked-react-libraries-you-probably-didnt-know-existed-fbbbfc4bfb8c" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/25-hand-picked-react-libraries-you-probably-didnt-know-existed-fbbbfc4bfb8c&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/undefinedhere/every-react-developer-should-know-these-libraries-17mg"&gt;https://dev.to/undefinedhere/every-react-developer-should-know-these-libraries-17mg&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/raftlabs/best-ui-frameworks-for-react-js-b49"&gt;https://dev.to/raftlabs/best-ui-frameworks-for-react-js-b49&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://cult.honeypot.io/reads/best-react-developer-tools-2021/" rel="noopener noreferrer"&gt;https://cult.honeypot.io/reads/best-react-developer-tools-2021/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/top-7-react-developer-tools-to-use-in-2021-with-bonus-4e29e89c9703" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/top-7-react-developer-tools-to-use-in-2021-with-bonus-4e29e89c9703&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/top-6-react-state-management-libraries-for-2022" rel="noopener noreferrer"&gt;https://blog.openreplay.com/top-6-react-state-management-libraries-for-2022&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/create-custom-debounce-hook-react/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/create-custom-debounce-hook-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/devland/7-tools-and-frameworks-for-faster-development-in-react-5b18"&gt;https://dev.to/devland/7-tools-and-frameworks-for-faster-development-in-react-5b18&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/devland/7-tools-and-frameworks-for-faster-development-in-react-5b18"&gt;https://dev.to/devland/7-tools-and-frameworks-for-faster-development-in-react-5b18&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/this-is-learning/react-query-useisfetching-useismutation-4dkb"&gt;https://dev.to/this-is-learning/react-query-useisfetching-useismutation-4dkb&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React interview questions&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/suprabhasupi/react-redux-interview-questions-with-answers-13ba"&gt;https://dev.to/suprabhasupi/react-redux-interview-questions-with-answers-13ba&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.avneesh.tech/5-react-interview-questions" rel="noopener noreferrer"&gt;https://blog.avneesh.tech/5-react-interview-questions&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/50-react-interview-questions-you-must-prepare-in-2021-faf650f65d36" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/50-react-interview-questions-you-must-prepare-in-2021-faf650f65d36&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://levelup.gitconnected.com/optimizing-react-app-performance-62924bf7eba2" rel="noopener noreferrer"&gt;https://levelup.gitconnected.com/optimizing-react-app-performance-62924bf7eba2&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/a-series-of-reactjs-coding-challenges-with-a-variety-of-difficulties/" rel="noopener noreferrer"&gt;https://reactjsexample.com/a-series-of-reactjs-coding-challenges-with-a-variety-of-difficulties/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/andyrewlee/top-4-mistakes-in-react-interviews-b4i"&gt;https://dev.to/andyrewlee/top-4-mistakes-in-react-interviews-b4i&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/javascriptacademy/react-interview-questions-answered-and-explained-1-1b95"&gt;https://dev.to/javascriptacademy/react-interview-questions-answered-and-explained-1-1b95&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/how-to-stand-out-during-your-react-coding-interview/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/how-to-stand-out-during-your-react-coding-interview/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/bettercodingacademy/senior-react-coding-interview-by-a-professional-react-developer-part-2-201a"&gt;https://dev.to/bettercodingacademy/senior-react-coding-interview-by-a-professional-react-developer-part-2-201a&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/aviyel/300-react-interview-questions-4dag"&gt;https://dev.to/aviyel/300-react-interview-questions-4dag&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.edureka.co/blog/interview-questions/react-interview-questions/" rel="noopener noreferrer"&gt;https://www.edureka.co/blog/interview-questions/react-interview-questions/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.interviewbit.com/react-interview-questions/#" rel="noopener noreferrer"&gt;https://www.interviewbit.com/react-interview-questions/#&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://cult.honeypot.io/reads/react-developer-cheatsheets/" rel="noopener noreferrer"&gt;https://cult.honeypot.io/reads/react-developer-cheatsheets/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/react-interview-questions-and-answers/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/react-interview-questions-and-answers/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/top-30-react-interview-questions-and-concepts/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/top-30-react-interview-questions-and-concepts/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.sahilchandravanshi.com/react-jsx" rel="noopener noreferrer"&gt;https://blog.sahilchandravanshi.com/react-jsx&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/said7388/top-20-reactjs-interview-questions-3a0m"&gt;https://dev.to/said7388/top-20-reactjs-interview-questions-3a0m&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://levelup.gitconnected.com/7-interview-questions-every-senior-react-developer-should-know-d85730fb04d5" rel="noopener noreferrer"&gt;https://levelup.gitconnected.com/7-interview-questions-every-senior-react-developer-should-know-d85730fb04d5&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/sudheerj/reactjs-interview-questions#what-are-controlled-components" rel="noopener noreferrer"&gt;https://github.com/sudheerj/reactjs-interview-questions#what-are-controlled-components&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/Devinterview-io/react-interview-questions" rel="noopener noreferrer"&gt;https://github.com/Devinterview-io/react-interview-questions&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/complete-vite-course-for-beginners/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/complete-vite-course-for-beginners/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React Learn&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/react-props-cheatsheet/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/react-props-cheatsheet/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.smashingmagazine.com/2020/01/introduction-react-context-api/" rel="noopener noreferrer"&gt;https://www.smashingmagazine.com/2020/01/introduction-react-context-api/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://flaviocopes.com/react-unidirectional-data-flow/" rel="noopener noreferrer"&gt;https://flaviocopes.com/react-unidirectional-data-flow/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://codeburst.io/react-anti-pattern-prop-drilling-54474d5236bd" rel="noopener noreferrer"&gt;https://codeburst.io/react-anti-pattern-prop-drilling-54474d5236bd&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.smashingmagazine.com/2020/06/higher-order-components-react/" rel="noopener noreferrer"&gt;https://www.smashingmagazine.com/2020/06/higher-order-components-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/epic-react-react-fundamentals-cf76b6cedaf1" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/epic-react-react-fundamentals-cf76b6cedaf1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://learnwithparam.com/blog/basic-routing-in-react-router/" rel="noopener noreferrer"&gt;https://learnwithparam.com/blog/basic-routing-in-react-router/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/comparing-react-tree-components/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/comparing-react-tree-components/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/projectkenneth/modular-routing-in-react-2ab1"&gt;https://dev.to/projectkenneth/modular-routing-in-react-2ab1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://upmostly.com/tutorials/event-bubbling-in-react" rel="noopener noreferrer"&gt;https://upmostly.com/tutorials/event-bubbling-in-react&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/sm0ke/react-user-authentication-using-jwt-json-web-tokens-4f81"&gt;https://dev.to/sm0ke/react-user-authentication-using-jwt-json-web-tokens-4f81&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/adapter-design-in-react/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/adapter-design-in-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/sankalpswami1122/tools-that-have-made-react-documentation-a-piece-of-cake-2kp3"&gt;https://dev.to/sankalpswami1122/tools-that-have-made-react-documentation-a-piece-of-cake-2kp3&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://rehansattar.hashnode.dev/react-you-should-know" rel="noopener noreferrer"&gt;https://rehansattar.hashnode.dev/react-you-should-know&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/hareom284/javascript-fundamentals-before-learning-react-1mkl"&gt;https://dev.to/hareom284/javascript-fundamentals-before-learning-react-1mkl&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://btholt.github.io/complete-intro-to-react-v6/" rel="noopener noreferrer"&gt;https://btholt.github.io/complete-intro-to-react-v6/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://h.daily-dev-tips.com/react-basics-passing-data-between-components" rel="noopener noreferrer"&gt;https://h.daily-dev-tips.com/react-basics-passing-data-between-components&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/muratcanyuksel/using-websockets-with-react-50pi"&gt;https://dev.to/muratcanyuksel/using-websockets-with-react-50pi&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/javascript-developer-guide-browser-cookies/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/javascript-developer-guide-browser-cookies/&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/fundamentals-functional-programming-react/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/fundamentals-functional-programming-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/how-to-use-props-in-react/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/how-to-use-props-in-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/harishash/react-practices-for-beginners-djn"&gt;https://dev.to/harishash/react-practices-for-beginners-djn&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/javinpaul/10-best-websites-to-learn-reactjs-in-2022-1o6d"&gt;https://dev.to/javinpaul/10-best-websites-to-learn-reactjs-in-2022-1o6d&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/learn-all-about-micro-frontends/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/learn-all-about-micro-frontends/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://levelup.gitconnected.com/what-is-new-in-react-router-v6-5c7d1f8de143" rel="noopener noreferrer"&gt;https://levelup.gitconnected.com/what-is-new-in-react-router-v6-5c7d1f8de143&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/where-to-learn-react-js-in-2022-a-list-of-resources-for-new-developers" rel="noopener noreferrer"&gt;https://blog.openreplay.com/where-to-learn-react-js-in-2022-a-list-of-resources-for-new-developers&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;[&lt;a href="https://medium.com/javarevisited/5-best-react-js-books-for-beginners-and-experienced-web-developers-e7b90b1ab9d2" rel="noopener noreferrer"&gt;https://medium.com/javarevisited/5-best-react-js-books-for-beginners-and-experienced-web-developers-e7b90b1ab9d2&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.telerik.com/blogs/react-developers-top-10-topics-2021" rel="noopener noreferrer"&gt;https://www.telerik.com/blogs/react-developers-top-10-topics-2021&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/react-fundamentals-for-beginners/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/react-fundamentals-for-beginners/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.syncfusion.com/blogs/post/everything-you-should-know-about-react-18.aspx" rel="noopener noreferrer"&gt;https://www.syncfusion.com/blogs/post/everything-you-should-know-about-react-18.aspx&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/8-best-react-books-for-beginners-in-2022/" rel="noopener noreferrer"&gt;https://reactjsexample.com/8-best-react-books-for-beginners-in-2022/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://how-to.dev/how-to-write-unit-tests" rel="noopener noreferrer"&gt;https://how-to.dev/how-to-write-unit-tests&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/react-18-new-features/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/react-18-new-features/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/a-dive-into-react-storybook" rel="noopener noreferrer"&gt;https://blog.openreplay.com/a-dive-into-react-storybook&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.thoughtspile.tech/2022/01/17/jsx-conditionals/" rel="noopener noreferrer"&gt;https://blog.thoughtspile.tech/2022/01/17/jsx-conditionals/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://girlwhocodes.hashnode.dev/memoization-in-react" rel="noopener noreferrer"&gt;https://girlwhocodes.hashnode.dev/memoization-in-react&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.robinwieruch.de/react-element-component/" rel="noopener noreferrer"&gt;https://www.robinwieruch.de/react-element-component/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://cult.honeypot.io/reads/react-developer-cheatsheets/" rel="noopener noreferrer"&gt;https://cult.honeypot.io/reads/react-developer-cheatsheets/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://andrewbaisden.hashnode.dev/the-complete-modern-react-developer-2022" rel="noopener noreferrer"&gt;https://andrewbaisden.hashnode.dev/the-complete-modern-react-developer-2022&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.developerway.com/posts/react-elements-children-parents" rel="noopener noreferrer"&gt;https://www.developerway.com/posts/react-elements-children-parents&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://towardsdev.com/the-reconciliation-mechanism-in-react-how-it-works-and-how-to-optimize-it-with-function-components-9c9f1b234f7f" rel="noopener noreferrer"&gt;https://towardsdev.com/the-reconciliation-mechanism-in-react-how-it-works-and-how-to-optimize-it-with-function-components-9c9f1b234f7f&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/how-to-learn-react-in-2023/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/how-to-learn-react-in-2023/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/how-to-use-react-dev-tools/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/how-to-use-react-dev-tools/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://wundergraph.com/blog/introducing_react_query_client" rel="noopener noreferrer"&gt;https://wundergraph.com/blog/introducing_react_query_client&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/flashohq/open-source-react-courses" rel="noopener noreferrer"&gt;https://github.com/flashohq/open-source-react-courses&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://ui.dev/react-router-protected-routes-authentication" rel="noopener noreferrer"&gt;https://ui.dev/react-router-protected-routes-authentication&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/react-js-for-web-development/" rel="noopener noreferrer"&gt;https://blog.openreplay.com/react-js-for-web-development/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://itspp.hashnode.dev/how-to-fix-the-404-notfound-error-in-the-static-react-website" rel="noopener noreferrer"&gt;https://itspp.hashnode.dev/how-to-fix-the-404-notfound-error-in-the-static-react-website&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/deep-dive-mutations-tanstack-query/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/deep-dive-mutations-tanstack-query/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://react.dev/blog/2023/03/16/introducing-react-dev" rel="noopener noreferrer"&gt;https://react.dev/blog/2023/03/16/introducing-react-dev&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.robinwieruch.de/react-starter/" rel="noopener noreferrer"&gt;https://www.robinwieruch.de/react-starter/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/5-tools-for-building-react-component-libraries-in-2023-d8fb8e4c13b4" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/5-tools-for-building-react-component-libraries-in-2023-d8fb8e4c13b4&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/codeofrelevancy/what-is-strict-mode-in-react-3p5b"&gt;https://dev.to/codeofrelevancy/what-is-strict-mode-in-react-3p5b&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://frontendmastery.com/posts/rethinking-react-best-practices/" rel="noopener noreferrer"&gt;https://frontendmastery.com/posts/rethinking-react-best-practices/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://enlear.academy/understanding-service-workers-in-react-js-a90dc6fbec02" rel="noopener noreferrer"&gt;https://enlear.academy/understanding-service-workers-in-react-js-a90dc6fbec02&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/@ishahmeer/beginners-walkthrough-of-react-framework-2023-f29a0f17828b" rel="noopener noreferrer"&gt;https://medium.com/@ishahmeer/beginners-walkthrough-of-react-framework-2023-f29a0f17828b&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/@ishahmeer/reactjs-vs-vuejs-which-is-better-for-your-project-bfc1eb48a0db" rel="noopener noreferrer"&gt;https://medium.com/@ishahmeer/reactjs-vs-vuejs-which-is-better-for-your-project-bfc1eb48a0db&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React Projects&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/a-collection-of-some-big-projects-codebases-built-with-reactjs/" rel="noopener noreferrer"&gt;https://reactjsexample.com/a-collection-of-some-big-projects-codebases-built-with-reactjs/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/build-a-search-filter-using-react-and-react-hooks/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/build-a-search-filter-using-react-and-react-hooks/&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/a-video-conferencing-application-build-with-react/" rel="noopener noreferrer"&gt;https://reactjsexample.com/a-video-conferencing-application-build-with-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/netflix-clone-with-react-styled-components-axios/" rel="noopener noreferrer"&gt;https://reactjsexample.com/netflix-clone-with-react-styled-components-axios/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/youtube-clone-build-using-react-js/" rel="noopener noreferrer"&gt;https://reactjsexample.com/youtube-clone-build-using-react-js/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/nas5w/creating-a-todo-list-app-in-react-using-typescript-2h00"&gt;https://dev.to/nas5w/creating-a-todo-list-app-in-react-using-typescript-2h00&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://typeofnan.dev/your-first-react-typescript-project-todo-app/" rel="noopener noreferrer"&gt;https://typeofnan.dev/your-first-react-typescript-project-todo-app/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/how-to-build-a-todo-app-with-react-typescript-nodejs-and-mongodb/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/how-to-build-a-todo-app-with-react-typescript-nodejs-and-mongodb/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/exwhyzed/15-free-reactjs-templates-for-your-next-project-313m"&gt;https://dev.to/exwhyzed/15-free-reactjs-templates-for-your-next-project-313m&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/react-crud-app-how-to-create-a-book-management-app-from-scratch/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/react-crud-app-how-to-create-a-book-management-app-from-scratch/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/using-react-hooks-to-create-sticky-headers/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/using-react-hooks-to-create-sticky-headers/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/react-budget-tracker-app/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/react-budget-tracker-app/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://hashnode.com/post/35-free-react-templates-and-themes-you-should-use-in-2021-cklw9iu7c022b56s1ezgz033j" rel="noopener noreferrer"&gt;https://hashnode.com/post/35-free-react-templates-and-themes-you-should-use-in-2021-cklw9iu7c022b56s1ezgz033j&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/larswaechter/how-i-structure-my-react-projects-jii"&gt;https://dev.to/larswaechter/how-i-structure-my-react-projects-jii&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.devgenius.io/7-projects-you-can-build-to-learn-react-in-2021-246122ffbd6f" rel="noopener noreferrer"&gt;https://blog.devgenius.io/7-projects-you-can-build-to-learn-react-in-2021-246122ffbd6f&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/iyashsoni/building-web-extensions-with-reactjs-from-0-to-publish-54no"&gt;https://dev.to/iyashsoni/building-web-extensions-with-reactjs-from-0-to-publish-54no&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/wolzcodelife/how-to-build-a-music-playlist-with-react-spotify-and-fauna-40k6"&gt;https://dev.to/wolzcodelife/how-to-build-a-music-playlist-with-react-spotify-and-fauna-40k6&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/build-robust-react-app-husky-pre-commit-hooks-github-actions/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/build-robust-react-app-husky-pre-commit-hooks-github-actions/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/a-full-stack-e-commerce-app-built-with-react-and-stripe-api/" rel="noopener noreferrer"&gt;https://reactjsexample.com/a-full-stack-e-commerce-app-built-with-react-and-stripe-api/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/geraldmuvengei06/cool-projects-to-help-you-learn-react-js-part-2-1f7a"&gt;https://dev.to/geraldmuvengei06/cool-projects-to-help-you-learn-react-js-part-2-1f7a&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/seven/building-a-client-database-of-people-in-react-55oe"&gt;https://dev.to/seven/building-a-client-database-of-people-in-react-55oe&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.risingstack.com/stripe-payments-integration-tutorial-javascript/" rel="noopener noreferrer"&gt;https://blog.risingstack.com/stripe-payments-integration-tutorial-javascript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/sm0ke/react-node-js-open-source-fullstack-starters-5192"&gt;https://dev.to/sm0ke/react-node-js-open-source-fullstack-starters-5192&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/a-minimal-game-of-candy-crush-in-react/" rel="noopener noreferrer"&gt;https://reactjsexample.com/a-minimal-game-of-candy-crush-in-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/building-an-encyclopedia-with-react-and-wikipedia-search-api" rel="noopener noreferrer"&gt;https://blog.openreplay.com/building-an-encyclopedia-with-react-and-wikipedia-search-api&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/react-tutorial-build-a-movie-list-generator-with-react-and-harperdb/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/react-tutorial-build-a-movie-list-generator-with-react-and-harperdb/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/marvel-heroes-app-using-react-and-bootstrap/" rel="noopener noreferrer"&gt;https://reactjsexample.com/marvel-heroes-app-using-react-and-bootstrap/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/responsive-portfolio-template-made-with-reactjs/" rel="noopener noreferrer"&gt;https://reactjsexample.com/responsive-portfolio-template-made-with-reactjs/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/youtube-clone-built-with-react-and-sass/" rel="noopener noreferrer"&gt;https://reactjsexample.com/youtube-clone-built-with-react-and-sass/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/franciscomendes10866/how-to-create-modern-cards-using-react-and-tailwind-2ded"&gt;https://dev.to/franciscomendes10866/how-to-create-modern-cards-using-react-and-tailwind-2ded&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.section.io/engineering-education/react-swipe-application/" rel="noopener noreferrer"&gt;https://www.section.io/engineering-education/react-swipe-application/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/react-websockets-project-build-real-time-order-book-app/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/react-websockets-project-build-real-time-order-book-app/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://betterprogramming.pub/a-complete-guide-to-implementing-dark-mode-in-react-47af893b22eb" rel="noopener noreferrer"&gt;https://betterprogramming.pub/a-complete-guide-to-implementing-dark-mode-in-react-47af893b22eb&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;[&lt;a href="https://www.freecodecamp.org/news/learn-react-from-three-all-star-instructors/(https://www.freecodecamp.org/news/learn-react-from-three-all-star-instructors/)" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/learn-react-from-three-all-star-instructors/(https://www.freecodecamp.org/news/learn-react-from-three-all-star-instructors/)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/novu/building-a-notion-like-system-with-socketio-and-react-1hjg"&gt;https://dev.to/novu/building-a-notion-like-system-with-socketio-and-react-1hjg&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/ib-sundeep/amazon-clone/tree/master-class" rel="noopener noreferrer"&gt;https://github.com/ib-sundeep/amazon-clone/tree/master-class&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/documatic/building-a-music-player-in-react-2aa4"&gt;https://dev.to/documatic/building-a-music-player-in-react-2aa4&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/free-react-course-2022/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/free-react-course-2022/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/react-projects-for-beginners-easy-ideas-with-code/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/react-projects-for-beginners-easy-ideas-with-code/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/novu/creating-a-resume-builder-with-react-nodejs-and-ai-4k6l"&gt;https://dev.to/novu/creating-a-resume-builder-with-react-nodejs-and-ai-4k6l&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/haszankauna/building-scalable-web-applications-with-react-and-firebase-2di4"&gt;https://dev.to/haszankauna/building-scalable-web-applications-with-react-and-firebase-2di4&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.robinwieruch.de/react-trpc/" rel="noopener noreferrer"&gt;https://www.robinwieruch.de/react-trpc/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/frontendweb/how-to-read-local-json-file-in-react-js-564125235fc7" rel="noopener noreferrer"&gt;https://medium.com/frontendweb/how-to-read-local-json-file-in-react-js-564125235fc7&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.robinwieruch.de/react-drag-and-drop/" rel="noopener noreferrer"&gt;https://www.robinwieruch.de/react-drag-and-drop/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/build-react-forms-with-formik-library/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/build-react-forms-with-formik-library/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.greenroots.info/how-to-create-a-self-clicking-button-with-reactjs" rel="noopener noreferrer"&gt;https://blog.greenroots.info/how-to-create-a-self-clicking-button-with-reactjs&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://code.tutsplus.com/tutorials/creating-a-blogging-app-using-reactjs-add-post--cms-28579" rel="noopener noreferrer"&gt;https://code.tutsplus.com/tutorials/creating-a-blogging-app-using-reactjs-add-post--cms-28579&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React Unittest&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.syncfusion.com/blogs/post/unit-testing-in-react-with-jest-and-enzyme-frameworks.aspx" rel="noopener noreferrer"&gt;https://www.syncfusion.com/blogs/post/unit-testing-in-react-with-jest-and-enzyme-frameworks.aspx&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.valentinog.com/blog/jest/#bonus-es-modules-with-jest" rel="noopener noreferrer"&gt;https://www.valentinog.com/blog/jest/#bonus-es-modules-with-jest&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.smashingmagazine.com/2020/06/practical-guide-testing-react-applications-jest/" rel="noopener noreferrer"&gt;https://www.smashingmagazine.com/2020/06/practical-guide-testing-react-applications-jest/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.robinwieruch.de/react-testing-library" rel="noopener noreferrer"&gt;https://www.robinwieruch.de/react-testing-library&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://testing-library.com/docs/react-testing-library/intro" rel="noopener noreferrer"&gt;https://testing-library.com/docs/react-testing-library/intro&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/mbarzeev/creating-a-react-component-with-tdd-2jn8"&gt;https://dev.to/mbarzeev/creating-a-react-component-with-tdd-2jn8&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://upmostly.com/tutorials/getting-started-testing-react" rel="noopener noreferrer"&gt;https://upmostly.com/tutorials/getting-started-testing-react&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://vijayt.com/post/functional-testing-using-react-testing-library-and-jest/" rel="noopener noreferrer"&gt;https://vijayt.com/post/functional-testing-using-react-testing-library-and-jest/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://giftea.hashnode.dev/how-to-test-react-applications-with-react-testing-library-and-jest" rel="noopener noreferrer"&gt;https://giftea.hashnode.dev/how-to-test-react-applications-with-react-testing-library-and-jest&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;[&lt;a href="https://dev.to/refine/mocking-api-calls-in-react-tests-with-nock-41if(https://dev.to/refine/mocking-api-calls-in-react-tests-with-nock-41if)"&gt;https://dev.to/refine/mocking-api-calls-in-react-tests-with-nock-41if(https://dev.to/refine/mocking-api-calls-in-react-tests-with-nock-41if)&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/how-to-write-unit-tests-in-react/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/how-to-write-unit-tests-in-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://itnext.io/make-your-react-tests-easier-to-write-understand-and-maintain-9fa769381d62" rel="noopener noreferrer"&gt;https://itnext.io/make-your-react-tests-easier-to-write-understand-and-maintain-9fa769381d62&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.infoq.com/news/2023/03/sentry-enzyme-migration-rtl/?utm_campaign=infoq_content&amp;amp;utm_source=infoq&amp;amp;utm_medium=feed&amp;amp;utm_term=global" rel="noopener noreferrer"&gt;https://www.infoq.com/news/2023/03/sentry-enzyme-migration-rtl/?utm_campaign=infoq_content&amp;amp;utm_source=infoq&amp;amp;utm_medium=feed&amp;amp;utm_term=global&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.builder.io/blog/3-react-testing-library-tips" rel="noopener noreferrer"&gt;https://www.builder.io/blog/3-react-testing-library-tips&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/unit-testing-with-the-react-testing-library/" rel="noopener noreferrer"&gt;https://blog.openreplay.com/unit-testing-with-the-react-testing-library/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Architecture&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/implementing-atomic-design-in-modern-react-development-d58d743a0f0b" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/implementing-atomic-design-in-modern-react-development-d58d743a0f0b&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://levelup.gitconnected.com/how-i-structure-my-react-projects-34b35e18f91e" rel="noopener noreferrer"&gt;https://levelup.gitconnected.com/how-i-structure-my-react-projects-34b35e18f91e&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/a-react-example-app-built-using-the-clean-architecture/" rel="noopener noreferrer"&gt;https://reactjsexample.com/a-react-example-app-built-using-the-clean-architecture/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/clean-architecture-for-react/" rel="noopener noreferrer"&gt;https://reactjsexample.com/clean-architecture-for-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://itnext.io/react-project-architecture-641da390ebe7" rel="noopener noreferrer"&gt;https://itnext.io/react-project-architecture-641da390ebe7&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://enlear.academy/implementing-atomic-design-in-modern-react-development-d58d743a0f0b" rel="noopener noreferrer"&gt;https://enlear.academy/implementing-atomic-design-in-modern-react-development-d58d743a0f0b&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/clean-architecture-for-react/" rel="noopener noreferrer"&gt;https://reactjsexample.com/clean-architecture-for-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/ezranbayantemur/react-project-architecture-25m"&gt;https://dev.to/ezranbayantemur/react-project-architecture-25m&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/larswaechter/how-i-structure-my-react-projects-jii"&gt;https://dev.to/larswaechter/how-i-structure-my-react-projects-jii&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/design-extensible-react-application-architecture-1c491e9ed525" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/design-extensible-react-application-architecture-1c491e9ed525&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/a-simple-react-application-with-redux-and-style-component/" rel="noopener noreferrer"&gt;https://reactjsexample.com/a-simple-react-application-with-redux-and-style-component/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/bjakyt/how-i-structure-my-reactjs-projects-4cmc"&gt;https://dev.to/bjakyt/how-i-structure-my-reactjs-projects-4cmc&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/react-architecture-patterns-for-your-projects" rel="noopener noreferrer"&gt;https://blog.openreplay.com/react-architecture-patterns-for-your-projects&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/react-component-design-patterns-2022/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/react-component-design-patterns-2022/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/profydev/how-to-set-up-a-professional-react-project-including-screencast-180f"&gt;https://dev.to/profydev/how-to-set-up-a-professional-react-project-including-screencast-180f&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/an-object-oriented-react-app-design-6242c168fcf8" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/an-object-oriented-react-app-design-6242c168fcf8&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://cult.honeypot.io/reads/the-curious-case-of-react/" rel="noopener noreferrer"&gt;https://cult.honeypot.io/reads/the-curious-case-of-react/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/perssondennis/react-anti-patterns-and-best-practices-dos-and-donts-3c2g"&gt;https://dev.to/perssondennis/react-anti-patterns-and-best-practices-dos-and-donts-3c2g&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/improve-react-component-maintainability-with-layered-architecture-25e74ba86430" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/improve-react-component-maintainability-with-layered-architecture-25e74ba86430&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React checklist&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/theme_selection/ultimate-reactjs-resources-for-web-developers-2021-424c"&gt;https://dev.to/theme_selection/ultimate-reactjs-resources-for-web-developers-2021-424c&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/mikehtmlallthethings/svelte-vs-react-which-framework-to-learn-in-2023-50gf"&gt;https://dev.to/mikehtmlallthethings/svelte-vs-react-which-framework-to-learn-in-2023-50gf&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React with Webpack&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://devdojo.com/myogeshchavan97/how-to-create-a-react-app-from-scratch-using-webpack-5-babelgst" rel="noopener noreferrer"&gt;https://devdojo.com/myogeshchavan97/how-to-create-a-react-app-from-scratch-using-webpack-5-babel&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Error handling&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/react-error-handling-and-logging-best-practices-4444c57cd666" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/react-error-handling-and-logging-best-practices-4444c57cd666&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/catching-errors-in-react-with-error-boundaries" rel="noopener noreferrer"&gt;https://blog.openreplay.com/catching-errors-in-react-with-error-boundaries&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/artemmalko/error-boundaries-in-react-how-its-made-3lam"&gt;https://dev.to/artemmalko/error-boundaries-in-react-how-its-made-3lam&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://adevnadia.medium.com/how-to-handle-errors-in-react-full-guide-bd02634ff523" rel="noopener noreferrer"&gt;https://adevnadia.medium.com/how-to-handle-errors-in-react-full-guide-bd02634ff523&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://semaphoreci.com/blog/error-handling-layer-react" rel="noopener noreferrer"&gt;https://semaphoreci.com/blog/error-handling-layer-react&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React with typescript&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/damiisdandy/ultimate-guide-to-setup-react-context-api-with-a-custom-hook-typescript-27kn"&gt;https://dev.to/damiisdandy/ultimate-guide-to-setup-react-context-api-with-a-custom-hook-typescript-27kn&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dmitripavlutin.com/typescript-react-components/" rel="noopener noreferrer"&gt;https://dmitripavlutin.com/typescript-react-components/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/alim1496/react-with-typescript-1gp5"&gt;https://dev.to/alim1496/react-with-typescript-1gp5&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://levelup.gitconnected.com/add-husky-lint-staged-to-react-typescript-b634314a9739" rel="noopener noreferrer"&gt;https://levelup.gitconnected.com/add-husky-lint-staged-to-react-typescript-b634314a9739&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://techgirlamaka.hashnode.dev/react-components-and-typescriptpart-1-function-components" rel="noopener noreferrer"&gt;https://techgirlamaka.hashnode.dev/react-components-and-typescriptpart-1-function-components&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/alexeagleson/understanding-the-modern-web-stack-webpack-devserver-react-typescript-4b9b"&gt;https://dev.to/alexeagleson/understanding-the-modern-web-stack-webpack-devserver-react-typescript-4b9b&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.edureka.co/blog/interview-questions/typescript-interview-questions/" rel="noopener noreferrer"&gt;https://www.edureka.co/blog/interview-questions/typescript-interview-questions/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/how-to-code-your-react-app-with-typescript/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/how-to-code-your-react-app-with-typescript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/cheatsheets-for-experienced-react-developers-getting-started-with-typescript/" rel="noopener noreferrer"&gt;https://reactjsexample.com/cheatsheets-for-experienced-react-developers-getting-started-with-typescript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/adevnadia/advanced-typescript-for-react-developers-part-3-p4j"&gt;https://dev.to/adevnadia/advanced-typescript-for-react-developers-part-3-p4j&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/learn-typescript-beginners-guide/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/learn-typescript-beginners-guide/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/build-strongly-typed-polymorphic-components-with-react-and-typescript/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/build-strongly-typed-polymorphic-components-with-react-and-typescript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://pmbanugo.me/using-typescript-in-react-part-1" rel="noopener noreferrer"&gt;https://pmbanugo.me/using-typescript-in-react-part-1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.robinwieruch.de/typescript-react-component/" rel="noopener noreferrer"&gt;https://www.robinwieruch.de/typescript-react-component/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.thisdot.co/blog/composing-react-components-with-typescript" rel="noopener noreferrer"&gt;https://www.thisdot.co/blog/composing-react-components-with-typescript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.thisdot.co/blog/testing-web-components-with-cypress-and-typescript" rel="noopener noreferrer"&gt;https://www.thisdot.co/blog/testing-web-components-with-cypress-and-typescript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://angelika.me/2023/02/12/migrating-a-react-app-from-js-to-ts/" rel="noopener noreferrer"&gt;https://angelika.me/2023/02/12/migrating-a-react-app-from-js-to-ts/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.thisdot.co/blog/how-to-build-a-litelement-application-with-rollup-js-and-typescript" rel="noopener noreferrer"&gt;https://www.thisdot.co/blog/how-to-build-a-litelement-application-with-rollup-js-and-typescript&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React with DynamoDB&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://betterprogramming.pub/how-to-use-aws-dynamodb-in-react-70b55ffff93e" rel="noopener noreferrer"&gt;https://betterprogramming.pub/how-to-use-aws-dynamodb-in-react-70b55ffff93e&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;NextJS&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/how-to-build-a-portfolio-site-with-nextjs-tailwindcss/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/how-to-build-a-portfolio-site-with-nextjs-tailwindcss/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://bestofreactjs.com/repo/beauwilliams-demo-next-typescript-hardhat-marketplace" rel="noopener noreferrer"&gt;https://bestofreactjs.com/repo/beauwilliams-demo-next-typescript-hardhat-marketplace&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/avneesh0612/react-nextjs-snippets?ref=producthunt" rel="noopener noreferrer"&gt;https://github.com/avneesh0612/react-nextjs-snippets?ref=producthunt&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dabit3/the-complete-guide-to-full-stack-web3-development-4g74"&gt;https://dev.to/dabit3/the-complete-guide-to-full-stack-web3-development-4g74&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.thisdot.co/blog/next-js-and-react-js-5-differences-to-help-you-make-your-choice" rel="noopener noreferrer"&gt;https://www.thisdot.co/blog/next-js-and-react-js-5-differences-to-help-you-make-your-choice&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://tsh.io/blog/ssr-vs-ssg-in-nextjs/" rel="noopener noreferrer"&gt;https://tsh.io/blog/ssr-vs-ssg-in-nextjs/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/codebeast/from-figma-to-nextjs-app-in-minutes-4jp9"&gt;https://dev.to/codebeast/from-figma-to-nextjs-app-in-minutes-4jp9&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.astrosaurus.me/how-to-nextjs" rel="noopener noreferrer"&gt;https://blog.astrosaurus.me/how-to-nextjs&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/state-management-in-next-js-with-redux-toolkit/" rel="noopener noreferrer"&gt;https://blog.openreplay.com/state-management-in-next-js-with-redux-toolkit/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/learn-next-js-tutorial/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/learn-next-js-tutorial/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/best-next-js-starter-templates/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/best-next-js-starter-templates/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://vercel.com/blog/building-a-fast-animated-image-gallery-with-next-js" rel="noopener noreferrer"&gt;https://vercel.com/blog/building-a-fast-animated-image-gallery-with-next-js&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/arafat4693/how-i-built-my-fullstack-and-typesafe-portfolio-website-26ia"&gt;https://dev.to/arafat4693/how-i-built-my-fullstack-and-typesafe-portfolio-website-26ia&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/adminjs/building-a-blog-with-next-js-adminjs-and-react-a-simple-step-by-step-guide-8838f4e594a6" rel="noopener noreferrer"&gt;https://medium.com/adminjs/building-a-blog-with-next-js-adminjs-and-react-a-simple-step-by-step-guide-8838f4e594a6&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://vercel.com/blog/next-js-13-data-fetching" rel="noopener noreferrer"&gt;https://vercel.com/blog/next-js-13-data-fetching&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/adrai/static-html-export-with-i18n-compatibility-in-nextjs-8cd"&gt;https://dev.to/adrai/static-html-export-with-i18n-compatibility-in-nextjs-8cd&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/medusajs/how-i-built-a-food-ecommerce-restaurant-with-nextjs-paystack-and-medusa-2oh0"&gt;https://dev.to/medusajs/how-i-built-a-food-ecommerce-restaurant-with-nextjs-paystack-and-medusa-2oh0&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://vercel.com/blog/nextjs-app-router-data-fetching" rel="noopener noreferrer"&gt;https://vercel.com/blog/nextjs-app-router-data-fetching&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://prismic.io/blog/building-custom-nextjs-starter" rel="noopener noreferrer"&gt;https://prismic.io/blog/building-custom-nextjs-starter&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/decentralized-identity-build-a-profile-with-ethereum-ceramic-and-reactjs/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/decentralized-identity-build-a-profile-with-ethereum-ceramic-and-reactjs/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/create-full-stack-app-with-nextjs13-and-firebase/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/create-full-stack-app-with-nextjs13-and-firebase/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://prismic.io/blog/advanced-nextjs-server-context" rel="noopener noreferrer"&gt;https://prismic.io/blog/advanced-nextjs-server-context&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/fundamentals-of-next-js-for-react-developers-85b93c2c2dfa" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/fundamentals-of-next-js-for-react-developers-85b93c2c2dfa&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/how-to-write-unit-tests-with-react-testing-library-in-the-next-js-5d22798afd9a" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/how-to-write-unit-tests-with-react-testing-library-in-the-next-js-5d22798afd9a&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://nextjs.org/blog/next-13-2" rel="noopener noreferrer"&gt;https://nextjs.org/blog/next-13-2&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/this-is-learning/first-experience-with-nextjs-2a58"&gt;https://dev.to/this-is-learning/first-experience-with-nextjs-2a58&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://mojoauth.com/blog/how-to-implement-passwordless-authentication-in-next.js/" rel="noopener noreferrer"&gt;https://mojoauth.com/blog/how-to-implement-passwordless-authentication-in-next.js/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/ishratumar/nextjs-vs-react-which-is-the-best-for-your-project-1eim"&gt;https://dev.to/ishratumar/nextjs-vs-react-which-is-the-best-for-your-project-1eim&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.paulsblog.dev/create-your-portfolio-using-next-js-tailwind-css-stripe-and-paypal/" rel="noopener noreferrer"&gt;https://www.paulsblog.dev/create-your-portfolio-using-next-js-tailwind-css-stripe-and-paypal/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/comparing-frameworks--next-vs-remix/" rel="noopener noreferrer"&gt;https://blog.openreplay.com/comparing-frameworks--next-vs-remix/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/this-is-learning/first-experience-with-nextjs-part-2-pi4"&gt;https://dev.to/this-is-learning/first-experience-with-nextjs-part-2-pi4&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/implementing-a-feedback-form-with-next-js/" rel="noopener noreferrer"&gt;https://blog.openreplay.com/implementing-a-feedback-form-with-next-js/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://vercel.com/blog/vercel-cache-api-nextjs-cache" rel="noopener noreferrer"&gt;https://vercel.com/blog/vercel-cache-api-nextjs-cache&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/biggest-next-js-boilerplates-2023/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/biggest-next-js-boilerplates-2023/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.devgenius.io/advanced-next-js-concepts-8439a8752597" rel="noopener noreferrer"&gt;https://blog.devgenius.io/advanced-next-js-concepts-8439a8752597&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/create-full-stack-app-with-nextjs13-and-firebase/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/create-full-stack-app-with-nextjs13-and-firebase/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/this-is-learning/reading-local-json-data-with-nextjs-part-5-59le"&gt;https://dev.to/this-is-learning/reading-local-json-data-with-nextjs-part-5-59le&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/building-next-js-app-tailwind-storybook/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/building-next-js-app-tailwind-storybook/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.paulsblog.dev/create-your-portfolio-using-next-js-tailwind-css-stripe-and-paypal/" rel="noopener noreferrer"&gt;https://www.paulsblog.dev/create-your-portfolio-using-next-js-tailwind-css-stripe-and-paypal/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.tigrisdata.com/blog/adding-real-time-full-text-search-to-a-next.js-app-with-tigris/" rel="noopener noreferrer"&gt;https://www.tigrisdata.com/blog/adding-real-time-full-text-search-to-a-next.js-app-with-tigris/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/guide-cookies-next-js/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/guide-cookies-next-js/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.traversymedia.com/blog/next-js-13-crash-course-app-directory-server-components-more" rel="noopener noreferrer"&gt;https://www.traversymedia.com/blog/next-js-13-crash-course-app-directory-server-components-more&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://nextjs.org/blog/next-13-3" rel="noopener noreferrer"&gt;https://nextjs.org/blog/next-13-3&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React Resources&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/theme_selection/ultimate-reactjs-resources-for-web-developers-2021-424c"&gt;https://dev.to/theme_selection/ultimate-reactjs-resources-for-web-developers-2021-424c&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/buddhadebchhetri/react-cheatsheets-5978"&gt;https://dev.to/buddhadebchhetri/react-cheatsheets-5978&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://devdojo.com/shreya/resources-to-learn-reactjs" rel="noopener noreferrer"&gt;https://devdojo.com/shreya/resources-to-learn-reactjs&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://cult.honeypot.io/reads/8-best-react-courses-2022/" rel="noopener noreferrer"&gt;https://cult.honeypot.io/reads/8-best-react-courses-2022/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/learn-react-router-6/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/learn-react-router-6/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://cult.honeypot.io/reads/react-developer-cheatsheets/" rel="noopener noreferrer"&gt;https://cult.honeypot.io/reads/react-developer-cheatsheets/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/build-strongly-typed-polymorphic-components-with-react-and-typescript/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/build-strongly-typed-polymorphic-components-with-react-and-typescript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.freecodecamp.org/news/free-react-course-2022/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/free-react-course-2022/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.syncfusion.com/blogs/post/virtual-dom-vs-shadow-dom-what-every-developer-should-know.aspx" rel="noopener noreferrer"&gt;https://www.syncfusion.com/blogs/post/virtual-dom-vs-shadow-dom-what-every-developer-should-know.aspx&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Redux&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://enlear.academy/redux-explained-simply-ffd6f16aa1ca" rel="noopener noreferrer"&gt;https://enlear.academy/redux-explained-simply-ffd6f16aa1ca&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.valentinog.com/blog/redux/" rel="noopener noreferrer"&gt;https://www.valentinog.com/blog/redux/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/thesanjeevsharma/just-redux-the-complete-guide-44d5?signin=true"&gt;https://dev.to/thesanjeevsharma/just-redux-the-complete-guide-44d5?signin=true&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/using-recoil-instead-of-redux-for-state-management-in-react-applications" rel="noopener noreferrer"&gt;https://blog.openreplay.com/using-recoil-instead-of-redux-for-state-management-in-react-applications&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://lo-victoria.com/introduction-to-redux-toolkit-for-beginners" rel="noopener noreferrer"&gt;https://lo-victoria.com/introduction-to-redux-toolkit-for-beginners&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactjsexample.com/redux-concepts-and-data-flow/" rel="noopener noreferrer"&gt;https://reactjsexample.com/redux-concepts-and-data-flow/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/lets-understand-redux-in-a-simple-manner-da85f296cb49" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/lets-understand-redux-in-a-simple-manner-da85f296cb49&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/step-by-step-tutorial-react-redux-2022-with-hooks-3b5d63b18be9" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/step-by-step-tutorial-react-redux-2022-with-hooks-3b5d63b18be9&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/what-is-redux-store-actions-reducers-explained/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/what-is-redux-store-actions-reducers-explained/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/understanding-redux-thunk-for-react--the-big-picture/" rel="noopener noreferrer"&gt;https://blog.openreplay.com/understanding-redux-thunk-for-react--the-big-picture/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.thisdot.co/blog/introduction-to-redux-pattern" rel="noopener noreferrer"&gt;https://www.thisdot.co/blog/introduction-to-redux-pattern&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/learn-react-18-with-redux-toolkit/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/learn-react-18-with-redux-toolkit/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React GraphQL&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/fetching-data-from-graphql-apis-with-apollo-react" rel="noopener noreferrer"&gt;https://blog.openreplay.com/fetching-data-from-graphql-apis-with-apollo-react&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;React Github&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/streamich/react-use" rel="noopener noreferrer"&gt;https://github.com/streamich/react-use&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/Asabeneh/30-Days-Of-React" rel="noopener noreferrer"&gt;https://github.com/Asabeneh/30-Days-Of-React&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/jeromedalbert/real-world-react-apps/tree/master/apps" rel="noopener noreferrer"&gt;https://github.com/jeromedalbert/real-world-react-apps/tree/master/apps&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/vasanthk/react-bits" rel="noopener noreferrer"&gt;https://github.com/vasanthk/react-bits&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/brillout/awesome-react-components" rel="noopener noreferrer"&gt;https://github.com/brillout/awesome-react-components&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/deepsweet/hocs" rel="noopener noreferrer"&gt;https://github.com/deepsweet/hocs&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/antonioru/beautiful-react-hooks" rel="noopener noreferrer"&gt;https://github.com/antonioru/beautiful-react-hooks&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/piotrwitek/react-redux-typescript-guide" rel="noopener noreferrer"&gt;https://github.com/piotrwitek/react-redux-typescript-guide&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/typescript-cheatsheets/react" rel="noopener noreferrer"&gt;https://github.com/typescript-cheatsheets/react&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/ohansemmanuel/react-hooks-cheatsheet" rel="noopener noreferrer"&gt;https://github.com/ohansemmanuel/react-hooks-cheatsheet&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/krasimir/react-in-patterns" rel="noopener noreferrer"&gt;https://github.com/krasimir/react-in-patterns&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/moelzanaty3/react-18-workshop" rel="noopener noreferrer"&gt;https://github.com/moelzanaty3/react-18-workshop&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/Bogdan-Lyashenko/Under-the-hood-ReactJS" rel="noopener noreferrer"&gt;https://github.com/Bogdan-Lyashenko/Under-the-hood-ReactJS&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/adam-golab/react-developer-roadmap" rel="noopener noreferrer"&gt;https://github.com/adam-golab/react-developer-roadmap&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/Asabeneh/30-Days-Of-React" rel="noopener noreferrer"&gt;https://github.com/Asabeneh/30-Days-Of-React&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/tyroprogrammer/learn-react-app" rel="noopener noreferrer"&gt;https://github.com/tyroprogrammer/learn-react-app&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/vasanthk/react-bits" rel="noopener noreferrer"&gt;https://github.com/vasanthk/react-bits&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/enaqx/awesome-react" rel="noopener noreferrer"&gt;https://github.com/enaqx/awesome-react&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/typescript-cheatsheets/react" rel="noopener noreferrer"&gt;https://github.com/typescript-cheatsheets/react&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/Bogdan-Lyashenko/Under-the-hood-ReactJS" rel="noopener noreferrer"&gt;https://github.com/Bogdan-Lyashenko/Under-the-hood-ReactJS&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/piotrwitek/react-redux-typescript-guide" rel="noopener noreferrer"&gt;https://github.com/piotrwitek/react-redux-typescript-guide&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/antonioru/beautiful-react-hooks" rel="noopener noreferrer"&gt;https://github.com/antonioru/beautiful-react-hooks&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  React Linkedin
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.linkedin.com/pulse/ultimate-react-developers-digest-top-picks-from-past-few-/" rel="noopener noreferrer"&gt;https://www.linkedin.com/pulse/ultimate-react-developers-digest-top-picks-from-past-few-/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  React Router
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://jasonwatmore.com/post/2022/06/24/react-router-6-private-route-component-to-restrict-access-to-protected-pages" rel="noopener noreferrer"&gt;https://jasonwatmore.com/post/2022/06/24/react-router-6-private-route-component-to-restrict-access-to-protected-pages&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/improve-user-experience-in-react-by-animating-routes-using-framer-motion/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/improve-user-experience-in-react-by-animating-routes-using-framer-motion/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>react</category>
      <category>interview</category>
      <category>links</category>
      <category>performance</category>
    </item>
    <item>
      <title>How I made my Github readme profile awesome</title>
      <dc:creator>Ashokkumar</dc:creator>
      <pubDate>Wed, 20 Oct 2021 01:22:26 +0000</pubDate>
      <link>https://dev.to/a8hok/how-i-made-my-github-readme-profile-2ng</link>
      <guid>https://dev.to/a8hok/how-i-made-my-github-readme-profile-2ng</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmp92lpcorvgz6jeb93r3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmp92lpcorvgz6jeb93r3.png" alt=" " width="776" height="1518"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Header Section
&lt;/h3&gt;

&lt;p&gt;I have started with greetings also my reach me section in the top right corner.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgvo72e7xuxubk95i87qo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgvo72e7xuxubk95i87qo.png" alt=" " width="800" height="90"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;h1 align="left"&amp;gt; Hello from A8hok &amp;lt;img src="https://user-images.githubusercontent.com/1303154/88677602-1635ba80-d120-11ea-84d8-d263ba5fc3c0.gif" width="28px" alt="hi"&amp;gt; 

&amp;lt;a href="https://www.linkedin.com/in/a8hok/" target="_blank"&amp;gt;
  &amp;lt;img align="center" alt="a8hok | linkedin" src="https://user-images.githubusercontent.com/22448559/137614008-18f96cfd-b2c4-4066-9991-f605c978f9d9.png" width="80"/&amp;gt;
&amp;lt;/a&amp;gt;
&amp;lt;a href="https://dev.to/a8hok" target="_blank"&amp;gt;
    &amp;lt;img align="center" alt="a8hok | dev" src="https://user-images.githubusercontent.com/22448559/137614000-07f740bc-3723-497b-bb5e-54185478c892.png" width="80" /&amp;gt;
&amp;lt;/a&amp;gt;
&amp;lt;a href="mailto:a8hokkumar@gmail.com"&amp;gt;
  &amp;lt;img align="center" alt="a8hok | Gmail" width="80px" src="https://user-images.githubusercontent.com/22448559/137614003-749c6718-b38d-4d6f-9cb2-b01a1781b144.png" /&amp;gt;
&amp;lt;/a&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  About me section
&lt;/h3&gt;

&lt;p&gt;In this section I have added my basic information with an Image in right.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F69smz2tgsn97jxjkv66f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F69smz2tgsn97jxjkv66f.png" alt=" " width="800" height="251"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Skills Section
&lt;/h3&gt;

&lt;p&gt;I have added all my tech stack worked upon with images. Also I have done some fancy alignment.&lt;/p&gt;

&lt;p&gt;Tech stack badge images can be find here, &lt;a href="https://github.com/alexandresanlim/Badges4-README.md-Profile" rel="noopener noreferrer"&gt;Skill badge&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvl0w3it1m962sij4m3p3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvl0w3it1m962sij4m3p3.png" alt=" " width="800" height="284"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;p align="left"&amp;gt;
&amp;lt;img src="https://img.shields.io/badge/Python-3776AB?style=for-the-badge&amp;amp;logo=python&amp;amp;logoColor=white" width="90" height="30"&amp;gt;
&amp;amp;nbsp;
  &amp;lt;img src="https://img.shields.io/badge/-Flask-05122A?style=flat&amp;amp;logo=flask" width="90" height="30"&amp;gt;
&amp;amp;nbsp;
    &amp;lt;img src="https://img.shields.io/badge/Django-092E20?style=for-the-badge&amp;amp;logo=django&amp;amp;logoColor=green" width="90" height="30"&amp;gt;
&amp;amp;nbsp;
    &amp;lt;img src="https://user-images.githubusercontent.com/22448559/137615981-be5a8b84-19b2-4b1e-ae97-3b273b594c4c.jpeg" width="90" height="30"&amp;gt;
&amp;lt;/p&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Github Trophies Section
&lt;/h3&gt;

&lt;p&gt;You can add Github trophies with some basic stats about your commit, repo, PR .. etc&lt;/p&gt;

&lt;p&gt;Different types of trophy can be find here, &lt;a href="https://github.com/ryo-ma/github-profile-trophy" rel="noopener noreferrer"&gt;trophy&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyduy5paa2mmz6c7gyyy6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyduy5paa2mmz6c7gyyy6.png" alt=" " width="800" height="155"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;img src="https://github-profile-trophy.vercel.app/?username=a8hok&amp;amp;theme=tokyonight&amp;amp;margin-w=15" /&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Github contribution Graph
&lt;/h3&gt;

&lt;p&gt;In this section, I have added a graph to identify my day to day Github contribution level.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa2hrzrkm3vrvmcpez1zr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa2hrzrkm3vrvmcpez1zr.png" alt=" " width="800" height="279"&gt;&lt;/a&gt;&lt;br&gt;
 you can find different vanities of graph here, &lt;a href="https://github.com/Ashutosh00710/github-readme-activity-graph" rel="noopener noreferrer"&gt;Graph&lt;/a&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;![github graph](https://activity-graph.herokuapp.com/graph?username=a8hok&amp;amp;theme=react-dark)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Github Stats and Streaks section
&lt;/h3&gt;

&lt;p&gt;Here I have added about Github Streaks and Github stats, where you can find continues contribution in Github also Stats.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqj6bl5twnyzt9ycsscyr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqj6bl5twnyzt9ycsscyr.png" alt=" " width="800" height="153"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;![Ashokkumar's github stats](https://github-readme-stats.vercel.app/api?username=a8hok&amp;amp;show_icons=true&amp;amp;theme=tokyonight)

![Ashokkumar GitHub Streak](https://github-readme-streak-stats.herokuapp.com/?user=a8hok&amp;amp;theme=tokyonight) 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;you can find more details about streaks here, &lt;a href="https://github.com/DenverCoder1/github-readme-streak-stats" rel="noopener noreferrer"&gt;Streaks&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Language used section
&lt;/h3&gt;

&lt;p&gt;Here you can find most language used by myself.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqb8kw0ifj0mi7p7hwjlx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqb8kw0ifj0mi7p7hwjlx.png" alt=" " width="800" height="753"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;img align="center" width=600 src="https://github-readme-stats.vercel.app/api/top-langs/?username=a8hok&amp;amp;count_private=true&amp;amp;theme=radical" alt="ashok" /&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;More info here, &lt;a href="https://github.com/anuraghazra/github-readme-stats#demo-1" rel="noopener noreferrer"&gt;most language&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Dev card section
&lt;/h3&gt;

&lt;p&gt;Here I have added a dev card where we can find my stats about article I use to read.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmb0ez49bxd6u1gd32dz6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmb0ez49bxd6u1gd32dz6.png" alt=" " width="678" height="908"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;a href="https://app.daily.dev/a8hok"&amp;gt;&amp;lt;img src="https://api.daily.dev/devcards/a860938a2959496d844e2e79a4971610.png?r=o9p" width="400" alt="ashok's Dev Card"/&amp;gt;&amp;lt;/a&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://github.com/a8hok/a8hok" rel="noopener noreferrer"&gt;Github link to my Profile&lt;/a&gt;&lt;/p&gt;

</description>
      <category>github</category>
      <category>profile</category>
      <category>aboutme</category>
    </item>
    <item>
      <title>Useful Javascript links - Study Guide</title>
      <dc:creator>Ashokkumar</dc:creator>
      <pubDate>Wed, 25 Aug 2021 16:20:54 +0000</pubDate>
      <link>https://dev.to/a8hok/useful-javascript-links-3e1</link>
      <guid>https://dev.to/a8hok/useful-javascript-links-3e1</guid>
      <description>&lt;p&gt;Hey Guys !! &lt;/p&gt;

&lt;p&gt;I have listed some of the useful links which will help you to learn Javascript.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/a8hok/JavaScript-Study-Guide" rel="noopener noreferrer"&gt;Javascript Study Guide&lt;/a&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://dev.to/a8hok/useful-reactjs-links-interview-preparation-3o42"&gt;ReactJS Study Guide&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Please find the table of contents,&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Variable, Scope, Hoisting&lt;br&gt;
this&lt;br&gt;
Patterns&lt;br&gt;
Prototype&lt;br&gt;
Functions&lt;br&gt;
Closure&lt;br&gt;
Iterators&lt;br&gt;
Currying&lt;br&gt;
Promises&lt;br&gt;
Es6+&lt;br&gt;
Array&lt;br&gt;
Event Loops&lt;br&gt;
Objects&lt;br&gt;
String&lt;br&gt;
Date and time&lt;br&gt;
Regex&lt;br&gt;
Error Handling&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;



&lt;p&gt;&lt;code&gt;Javascript Style Guides&lt;br&gt;
Performance/Code Optimisation&lt;br&gt;
Javascript Interview Questions&lt;br&gt;
Tips and Tricks&lt;br&gt;
Javascript Cheatsheet&lt;br&gt;
Javascript News Letters&lt;br&gt;
Developers to follow&lt;br&gt;
Javascript Algorithm&lt;br&gt;
Learn Javascript&lt;br&gt;
Javascript Books&lt;br&gt;
General&lt;br&gt;
Best Practices&lt;br&gt;
Javascript Projects&lt;br&gt;
Youtube channels&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;h3&gt;
  
  
  Variable, Scope, Hoisting
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://livecodestream.dev/post/understanding-variables-scope-and-hoisting-in-javascript/" rel="noopener noreferrer"&gt;https://livecodestream.dev/post/understanding-variables-scope-and-hoisting-in-javascript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/javascript-lexical-scope-tutorial/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/javascript-lexical-scope-tutorial/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://slashism.com/variable-scope-in-javascript" rel="noopener noreferrer"&gt;https://slashism.com/variable-scope-in-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://wasefs.medium.com/hoisting-in-javascript-javascript-interview-series-53f9faa16835" rel="noopener noreferrer"&gt;https://wasefs.medium.com/hoisting-in-javascript-javascript-interview-series-53f9faa16835&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/pat_the99/javascript-hoisting-450l"&gt;https://dev.to/pat_the99/javascript-hoisting-450l&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://kpealecodes.hashnode.dev/scoping-and-hoisting-in-javascript" rel="noopener noreferrer"&gt;https://kpealecodes.hashnode.dev/scoping-and-hoisting-in-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://slashism.com/variable-scope-in-javascript" rel="noopener noreferrer"&gt;https://slashism.com/variable-scope-in-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://developer.mozilla.org/en-US/docs/Glossary/Primitive#Another_Example_Step-by-step" rel="noopener noreferrer"&gt;https://developer.mozilla.org/en-US/docs/Glossary/Primitive#Another_Example_Step-by-step&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://livecodestream.dev/post/2020-07-25-understanding-variables-scope-and-hoisting-in-javascript/" rel="noopener noreferrer"&gt;https://livecodestream.dev/post/2020-07-25-understanding-variables-scope-and-hoisting-in-javascript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/sandy8111112004/javascript-introduction-to-scope-function-scope-block-scope-d11"&gt;https://dev.to/sandy8111112004/javascript-introduction-to-scope-function-scope-block-scope-d11&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  this
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://ui.dev/this-keyword-call-apply-bind-javascript/" rel="noopener noreferrer"&gt;https://ui.dev/this-keyword-call-apply-bind-javascript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://livecodestream.dev/post/understanding-this-keyword-in-javascript/" rel="noopener noreferrer"&gt;https://livecodestream.dev/post/understanding-this-keyword-in-javascript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/polymathsomnath/master-this-in-javascript-1bk"&gt;https://dev.to/polymathsomnath/master-this-in-javascript-1bk&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/swlh/whats-this-in-javascript-870918e833b8" rel="noopener noreferrer"&gt;https://medium.com/swlh/whats-this-in-javascript-870918e833b8&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://rajatexplains.hashnode.dev/this-in-javascript" rel="noopener noreferrer"&gt;https://rajatexplains.hashnode.dev/this-in-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/swlh/understanding-this-in-javascript-166164e7fa2b" rel="noopener noreferrer"&gt;https://medium.com/swlh/understanding-this-in-javascript-166164e7fa2b&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/denisveleaev/6-simple-rules-to-fully-understand-this-keyword-in-javascript-1kmk"&gt;https://dev.to/denisveleaev/6-simple-rules-to-fully-understand-this-keyword-in-javascript-1kmk&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/free-code-camp/react-binding-patterns-5-approaches-for-handling-this-92c651b5af56#.53op90a6w" rel="noopener noreferrer"&gt;https://medium.com/free-code-camp/react-binding-patterns-5-approaches-for-handling-this-92c651b5af56#.53op90a6w&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://enlear.academy/this-keyword-in-javascript-8979fa01f4a3" rel="noopener noreferrer"&gt;https://enlear.academy/this-keyword-in-javascript-8979fa01f4a3&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Patterns
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://hemdan.hashnode.dev/javascript-patterns-ch2-or-part-1-essentials" rel="noopener noreferrer"&gt;https://hemdan.hashnode.dev/javascript-patterns-ch2-or-part-1-essentials&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/swlh/js-interview-help-prototype-class-es6-iife-scope-closures-module-pattern-fd67c68aacb8" rel="noopener noreferrer"&gt;https://medium.com/swlh/js-interview-help-prototype-class-es6-iife-scope-closures-module-pattern-fd67c68aacb8&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english/basic-middleware-pattern-in-javascript-ef8756a75cb1" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english/basic-middleware-pattern-in-javascript-ef8756a75cb1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://levelup.gitconnected.com/design-patterns-in-modern-javascript-development-ec84d8be06ca?gi=6e6506fac97e" rel="noopener noreferrer"&gt;https://levelup.gitconnected.com/design-patterns-in-modern-javascript-development-ec84d8be06ca?gi=6e6506fac97e&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Prototype
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/prototype-this-stranger-7a444098cdd4" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/prototype-this-stranger-7a444098cdd4&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.youteee.codes/introduction-to-javascript-prototypes" rel="noopener noreferrer"&gt;https://blog.youteee.codes/introduction-to-javascript-prototypes&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/all-you-need-to-know-to-understand-javascripts-prototype-a2bff2d28f03/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/all-you-need-to-know-to-understand-javascripts-prototype-a2bff2d28f03/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Functions
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/understanding-javascript-iifes-like-a-boss-b84b39663a37" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/understanding-javascript-iifes-like-a-boss-b84b39663a37&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://api.daily.dev/r/Wxk7uYQ2p" rel="noopener noreferrer"&gt;https://api.daily.dev/r/Wxk7uYQ2p&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://devdojo.com/rahulism/what-is-memoization-in-javascript" rel="noopener noreferrer"&gt;https://devdojo.com/rahulism/what-is-memoization-in-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://yuricodesbot.hashnode.dev/understanding-functional-programming-in-javascript" rel="noopener noreferrer"&gt;https://yuricodesbot.hashnode.dev/understanding-functional-programming-in-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/thedailytechtalk/top-10-must-know-javascript-functions-1ipm"&gt;https://dev.to/thedailytechtalk/top-10-must-know-javascript-functions-1ipm&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english/javascript-interview-questions-functions-5a3081c1f3f5" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english/javascript-interview-questions-functions-5a3081c1f3f5&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/mpodlasin/functional-programming-in-js-part-i-composition-currying-lodash-and-ramda-1ohb"&gt;https://dev.to/mpodlasin/functional-programming-in-js-part-i-composition-currying-lodash-and-ramda-1ohb&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://mohit-codes.hashnode.dev/differences-between-arrow-function-and-regular-function-in-javascript" rel="noopener noreferrer"&gt;https://mohit-codes.hashnode.dev/differences-between-arrow-function-and-regular-function-in-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/coderslang/javascript-interview-question-46-length-of-js-functions-494f"&gt;https://dev.to/coderslang/javascript-interview-question-46-length-of-js-functions-494f&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Closure
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://medium.com/geekculture/understanding-the-core-concept-of-javascript-closure-49e3517e49a5" rel="noopener noreferrer"&gt;https://medium.com/geekculture/understanding-the-core-concept-of-javascript-closure-49e3517e49a5&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/geekculture/understanding-the-core-concept-of-javascript-closure-49e3517e49a5" rel="noopener noreferrer"&gt;https://medium.com/geekculture/understanding-the-core-concept-of-javascript-closure-49e3517e49a5&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english/closures-and-lexical-scoping-in-javascript-9ebe8d353662" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english/closures-and-lexical-scoping-in-javascript-9ebe8d353662&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://rajatexplains.hashnode.dev/understanding-closures-1" rel="noopener noreferrer"&gt;https://rajatexplains.hashnode.dev/understanding-closures-1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/closures-in-javascript/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/closures-in-javascript/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Iterators
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://madasamy.medium.com/explanation-about-iterators-and-generators-in-javascript-es6-f7e669cbe96e" rel="noopener noreferrer"&gt;https://madasamy.medium.com/explanation-about-iterators-and-generators-in-javascript-es6-f7e669cbe96e&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://codeburst.io/a-simple-guide-to-es6-iterators-in-javascript-with-examples-189d052c3d8e" rel="noopener noreferrer"&gt;https://codeburst.io/a-simple-guide-to-es6-iterators-in-javascript-with-examples-189d052c3d8e&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Currying
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/kozlovzxc/js-interview-in-2-minutes-currying-2hko"&gt;https://dev.to/kozlovzxc/js-interview-in-2-minutes-currying-2hko&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/suprabhasupi/currying-in-javascript-1k3l"&gt;https://dev.to/suprabhasupi/currying-in-javascript-1k3l&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://daily.dev/posts/what-is-currying-in-javascript" rel="noopener noreferrer"&gt;https://daily.dev/posts/what-is-currying-in-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/afrazchelsea/function-currying-in-javascript-3h3g"&gt;https://dev.to/afrazchelsea/function-currying-in-javascript-3h3g&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Promises
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://towardsdev.com/promises-in-javascript-285f523c3e8d" rel="noopener noreferrer"&gt;https://towardsdev.com/promises-in-javascript-285f523c3e8d&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/what-is-the-importance-of-using-async-await-17b95870a05f" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/what-is-the-importance-of-using-async-await-17b95870a05f&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dmitripavlutin.com/what-is-javascript-promise/" rel="noopener noreferrer"&gt;https://dmitripavlutin.com/what-is-javascript-promise/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dmitripavlutin.com/javascript-promises-then-vs-then-catch/" rel="noopener noreferrer"&gt;https://dmitripavlutin.com/javascript-promises-then-vs-then-catch/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://enlear.academy/what-is-asynchronous-javascript-310426783ef1" rel="noopener noreferrer"&gt;https://enlear.academy/what-is-asynchronous-javascript-310426783ef1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://saiteja0413.hashnode.dev/beginners-guide-to-javascripts-asyncawait" rel="noopener noreferrer"&gt;https://saiteja0413.hashnode.dev/beginners-guide-to-javascripts-asyncawait&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/how-to-deal-with-nested-callbacks-and-avoid-callback-hell-1bc8dc4a2012/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/how-to-deal-with-nested-callbacks-and-avoid-callback-hell-1bc8dc4a2012/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.openreplay.com/the-ultimate-guide-to-fixing-javascript-performance-problems-in-browser-devtools" rel="noopener noreferrer"&gt;https://blog.openreplay.com/the-ultimate-guide-to-fixing-javascript-performance-problems-in-browser-devtools&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://maximorlov.com/visual-guide-refactoring-callback-functions/" rel="noopener noreferrer"&gt;https://maximorlov.com/visual-guide-refactoring-callback-functions/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://codeburst.io/javascript-interview-questions-promises-1ab2fb7f0467" rel="noopener noreferrer"&gt;https://codeburst.io/javascript-interview-questions-promises-1ab2fb7f0467&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.madza.dev/24-modern-es6-code-snippets-to-solve-practical-js-problems" rel="noopener noreferrer"&gt;https://blog.madza.dev/24-modern-es6-code-snippets-to-solve-practical-js-problems&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://humanwhocodes.com/blog/2020/10/creating-javascript-promise-from-scratch-promise-resolve-reject/" rel="noopener noreferrer"&gt;https://humanwhocodes.com/blog/2020/10/creating-javascript-promise-from-scratch-promise-resolve-reject/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/journey-from-callbacks-to-promises-to-async-await-6fcd7f7fa3c5" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/journey-from-callbacks-to-promises-to-async-await-6fcd7f7fa3c5&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.rohilpinto.com/javascript-call-stack-explained" rel="noopener noreferrer"&gt;https://blog.rohilpinto.com/javascript-call-stack-explained&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/ryanameri/mastering-hard-parts-of-javascript-callbacks-i-3aj0"&gt;https://dev.to/ryanameri/mastering-hard-parts-of-javascript-callbacks-i-3aj0&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://adrianmejia.com/promises-tutorial-concurrency-in-javascript-node/" rel="noopener noreferrer"&gt;https://adrianmejia.com/promises-tutorial-concurrency-in-javascript-node/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/swarnaliroy94/javascript-concept-of-promise-3ijb"&gt;https://dev.to/swarnaliroy94/javascript-concept-of-promise-3ijb&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://enlear.academy/what-is-asynchronous-javascript-310426783ef1" rel="noopener noreferrer"&gt;https://enlear.academy/what-is-asynchronous-javascript-310426783ef1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/what-is-promise-in-javascript-for-beginners/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/what-is-promise-in-javascript-for-beginners/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Es6+
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://madzadev.medium.com/24-modern-es6-code-snippets-to-solve-practical-js-problems-3609f301859e" rel="noopener noreferrer"&gt;https://madzadev.medium.com/24-modern-es6-code-snippets-to-solve-practical-js-problems-3609f301859e&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://ponyfoo.com/articles/es6" rel="noopener noreferrer"&gt;https://ponyfoo.com/articles/es6&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://mezgitci9.medium.com/java-script-es6-f6f4219847dd" rel="noopener noreferrer"&gt;https://mezgitci9.medium.com/java-script-es6-f6f4219847dd&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://madasamy.medium.com/javascript-brief-history-and-ecmascript-es6-es7-es8-features-673973394df4" rel="noopener noreferrer"&gt;https://madasamy.medium.com/javascript-brief-history-and-ecmascript-es6-es7-es8-features-673973394df4&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://alimammiya.hashnode.dev/upcoming-interesting-javascript-es2021-es12-features-to-look-for-1" rel="noopener noreferrer"&gt;https://alimammiya.hashnode.dev/upcoming-interesting-javascript-es2021-es12-features-to-look-for-1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://jayakiran.hashnode.dev/modern-javascript" rel="noopener noreferrer"&gt;https://jayakiran.hashnode.dev/modern-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/nerd-for-tech/understanding-javascript-es6-classes-dbce09c0b903" rel="noopener noreferrer"&gt;https://medium.com/nerd-for-tech/understanding-javascript-es6-classes-dbce09c0b903&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://alimammiya.hashnode.dev/8-useful-javascript-es2019-features-to-know-about-1" rel="noopener noreferrer"&gt;https://alimammiya.hashnode.dev/8-useful-javascript-es2019-features-to-know-about-1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://shineve.hashnode.dev/new-javascript-features-in-es6-es12" rel="noopener noreferrer"&gt;https://shineve.hashnode.dev/new-javascript-features-in-es6-es12&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://madzadev.medium.com/24-modern-es6-code-snippets-to-solve-practical-js-problems-3609f301859e" rel="noopener noreferrer"&gt;https://madzadev.medium.com/24-modern-es6-code-snippets-to-solve-practical-js-problems-3609f301859e&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://ponyfoo.com/articles/search/es6https://ponyfoo.com/articles/es6" rel="noopener noreferrer"&gt;https://ponyfoo.com/articles/search/es6&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://madza.hashnode.dev/24-modern-es6-code-snippets-to-solve-practical-js-problems" rel="noopener noreferrer"&gt;https://madza.hashnode.dev/24-modern-es6-code-snippets-to-solve-practical-js-problems&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.greenroots.info/explain-me-like-i-am-five-what-are-es6-symbols-ckeuz5sb8001qafs14of305dw" rel="noopener noreferrer"&gt;https://blog.greenroots.info/explain-me-like-i-am-five-what-are-es6-symbols-ckeuz5sb8001qafs14of305dw&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.michaelkaren.dev/javascript-spread-vs-rest" rel="noopener noreferrer"&gt;https://blog.michaelkaren.dev/javascript-spread-vs-rest&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english/new-javascript-features-in-es2020-c2d76acf9c5a" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english/new-javascript-features-in-es2020-c2d76acf9c5a&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/mastering-javascript-es6-symbols-6453da3bd46c" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/mastering-javascript-es6-symbols-6453da3bd46c&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.skay.dev/es6-understanding-destructuring" rel="noopener noreferrer"&gt;https://blog.skay.dev/es6-understanding-destructuring&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/@etherealm/named-export-vs-default-export-in-es6-affb483a0910" rel="noopener noreferrer"&gt;https://medium.com/@etherealm/named-export-vs-default-export-in-es6-affb483a0910&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english/5-simple-tips-to-write-better-arrow-functions-a55f40f63d58" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english/5-simple-tips-to-write-better-arrow-functions-a55f40f63d58&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Array
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/array-map-tutorial/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/array-map-tutorial/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/antoomartini/4-ways-to-convert-a-string-to-an-array-in-javascript-i97"&gt;https://dev.to/antoomartini/4-ways-to-convert-a-string-to-an-array-in-javascript-i97&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/the-javascript-array-handbook/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/the-javascript-array-handbook/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.greenroots.info/everything-you-need-to-know-about-javascript-set" rel="noopener noreferrer"&gt;https://blog.greenroots.info/everything-you-need-to-know-about-javascript-set&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://faheemkhan97.hashnode.dev/arraylength-i-bet-youre-missing-something-about-it" rel="noopener noreferrer"&gt;https://faheemkhan97.hashnode.dev/arraylength-i-bet-youre-missing-something-about-it&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://iampalash.hashnode.dev/top-7-javascript-array-sort-method-use-cases" rel="noopener noreferrer"&gt;https://iampalash.hashnode.dev/top-7-javascript-array-sort-method-use-cases&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://amantyagi.hashnode.dev/javascript-array-methods" rel="noopener noreferrer"&gt;https://amantyagi.hashnode.dev/javascript-array-methods&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/8-methods-to-search-javascript-arrays-fadbce8bea51" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/8-methods-to-search-javascript-arrays-fadbce8bea51&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.w3resource.com/javascript-exercises/javascript-array-exercises.php" rel="noopener noreferrer"&gt;https://www.w3resource.com/javascript-exercises/javascript-array-exercises.php&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.info/array-methods" rel="noopener noreferrer"&gt;https://javascript.info/array-methods&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/aashrithashiva29/possible-ways-of-iterating-arrays-in-javascript-1cgo"&gt;https://dev.to/aashrithashiva29/possible-ways-of-iterating-arrays-in-javascript-1cgo&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://thenextweb.com/syndication/2020/07/02/15-useful-methods-to-get-the-most-out-of-javascript-arrays/" rel="noopener noreferrer"&gt;https://thenextweb.com/syndication/2020/07/02/15-useful-methods-to-get-the-most-out-of-javascript-arrays/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/samanthaming/6-use-cases-of-spread-with-array-in-javascript-2n53"&gt;https://dev.to/samanthaming/6-use-cases-of-spread-with-array-in-javascript-2n53&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/javascript-array-foreach-tutorial-how-to-iterate-through-elements-in-an-array-with-map/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/javascript-array-foreach-tutorial-how-to-iterate-through-elements-in-an-array-with-map/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Event Loops
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://ayushv.medium.com/event-loop-in-javascript-672c07618dc9" rel="noopener noreferrer"&gt;https://ayushv.medium.com/event-loop-in-javascript-672c07618dc9&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://towardsdev.com/event-loop-in-javascript-672c07618dc9" rel="noopener noreferrer"&gt;https://towardsdev.com/event-loop-in-javascript-672c07618dc9&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/@ricardoreis_22930/event-loop-javascript-4376600e5603" rel="noopener noreferrer"&gt;https://medium.com/@ricardoreis_22930/event-loop-javascript-4376600e5603&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.skay.dev/javascript-event-loop-explained" rel="noopener noreferrer"&gt;https://blog.skay.dev/javascript-event-loop-explained&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dmitripavlutin.com/javascript-event-delegation/?utm_campaign=a-simple-explanation-of-event-delegation" rel="noopener noreferrer"&gt;https://dmitripavlutin.com/javascript-event-delegation/?utm_campaign=a-simple-explanation-of-event-delegation&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/event-bubbling-and-capturing-in-javascript-6bc908321b22" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/event-bubbling-and-capturing-in-javascript-6bc908321b22&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Objects
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://livecodestream.dev/post/everything-you-should-know-about-javascript-dictionaries/" rel="noopener noreferrer"&gt;https://livecodestream.dev/post/everything-you-should-know-about-javascript-dictionaries/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://towardsdev.com/object-oriented-programming-oop-in-javascript-b7f2bbde1230?gi=6355f0d7bfa0" rel="noopener noreferrer"&gt;https://towardsdev.com/object-oriented-programming-oop-in-javascript-b7f2bbde1230?gi=6355f0d7bfa0&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://towardsdev.com/object-oriented-programming-oop-in-javascript-b7f2bbde1230" rel="noopener noreferrer"&gt;https://towardsdev.com/object-oriented-programming-oop-in-javascript-b7f2bbde1230&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/copies-of-javascript-shallow-and-deep-copy-ac7f8dcd1dd0" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/copies-of-javascript-shallow-and-deep-copy-ac7f8dcd1dd0&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/object-oriented-javascript-3f74e02a436f" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/object-oriented-javascript-3f74e02a436f&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://cosmocode.io/how-to-implement-abstraction-in-javascript-javascript-object-oriented-programming/" rel="noopener noreferrer"&gt;https://cosmocode.io/how-to-implement-abstraction-in-javascript-javascript-object-oriented-programming/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/what-is-proto-b15f16e10b72" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/what-is-proto-b15f16e10b72&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/proto-vs-prototype-in-js-140b9b9c8cd5" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/proto-vs-prototype-in-js-140b9b9c8cd5&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/javascript-paas-by-value-vs-reference-b1667016e4a3" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/javascript-paas-by-value-vs-reference-b1667016e4a3&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://favouritejome.hashnode.dev/class-prototype-and-oop-concept-explained" rel="noopener noreferrer"&gt;https://favouritejome.hashnode.dev/class-prototype-and-oop-concept-explained&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://css-tricks.com/the-flavors-of-object-oriented-programming-in-javascript/" rel="noopener noreferrer"&gt;https://css-tricks.com/the-flavors-of-object-oriented-programming-in-javascript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.oshogunle.com/how-to-use-oop-in-javascript-ckemxzcw804ow8cs122ikhob0" rel="noopener noreferrer"&gt;https://blog.oshogunle.com/how-to-use-oop-in-javascript-ckemxzcw804ow8cs122ikhob0&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://h.daily-dev-tips.com/javascript-optional-chaining-to-the-rescue" rel="noopener noreferrer"&gt;https://h.daily-dev-tips.com/javascript-optional-chaining-to-the-rescue&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  String
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/satishnaikawadi2001/15-very-important-javascript-string-methods-every-developer-should-know-1apb"&gt;https://dev.to/satishnaikawadi2001/15-very-important-javascript-string-methods-every-developer-should-know-1apb&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Date and time
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/how-to-build-a-chess-clock-with-javascript-and-setinterval/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/how-to-build-a-chess-clock-with-javascript-and-setinterval/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/debs_obrien/formatting-a-date-in-javascript-ebd"&gt;https://dev.to/debs_obrien/formatting-a-date-in-javascript-ebd&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Regex
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://yuricodesbot.hashnode.dev/ultimate-guide-to-regular-expressions-regex-on-javascript" rel="noopener noreferrer"&gt;https://yuricodesbot.hashnode.dev/ultimate-guide-to-regular-expressions-regex-on-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/shreyazz/regex-101-2m7m"&gt;https://dev.to/shreyazz/regex-101-2m7m&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/seriously-javascript-regex-quantifiers-in-under-10-mins-f281146bfea2" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/seriously-javascript-regex-quantifiers-in-under-10-mins-f281146bfea2&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://towardsdatascience.com/an-introduction-to-regular-expressions-5dd762afc5e4" rel="noopener noreferrer"&gt;https://towardsdatascience.com/an-introduction-to-regular-expressions-5dd762afc5e4&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://amara.hashnode.dev/regular-expressions-in-javascript" rel="noopener noreferrer"&gt;https://amara.hashnode.dev/regular-expressions-in-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://fireship.io/lessons/regex-cheat-sheet-js/" rel="noopener noreferrer"&gt;https://fireship.io/lessons/regex-cheat-sheet-js/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;h3&gt;
  
  
  Error Handling
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://sruthicodes.hashnode.dev/all-about-errors-in-javascript" rel="noopener noreferrer"&gt;https://sruthicodes.hashnode.dev/all-about-errors-in-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Javascript Style Guides&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://enlear.academy/5-best-javascript-style-guides-640485e7b630" rel="noopener noreferrer"&gt;https://enlear.academy/5-best-javascript-style-guides-640485e7b630&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://enlear.academy/how-to-set-up-airbnb-style-guide-82413ea6c5f2" rel="noopener noreferrer"&gt;https://enlear.academy/how-to-set-up-airbnb-style-guide-82413ea6c5f2&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Performance/Code Optimization&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/14-javascript-code-optimization-tips-for-front-end-developers-f878e4ea2314" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/14-javascript-code-optimization-tips-for-front-end-developers-f878e4ea2314&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/using-web-workers-to-speed-up-javascript-applications-5c567f209bdb" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/using-web-workers-to-speed-up-javascript-applications-5c567f209bdb&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.geeksforgeeks.org/7-tips-to-improve-javascript-performance/" rel="noopener noreferrer"&gt;https://www.geeksforgeeks.org/7-tips-to-improve-javascript-performance/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/measuring-performance-of-different-javascript-loop-types-c0e9b1d193ed" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/measuring-performance-of-different-javascript-loop-types-c0e9b1d193ed&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Javascript Interview Questions&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/capscode/500-javascript-question-answers-with-explanation-29im"&gt;https://dev.to/capscode/500-javascript-question-answers-with-explanation-29im&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/ganqqwerty/123-Essential-JavaScript-Interview-Questions" rel="noopener noreferrer"&gt;https://github.com/ganqqwerty/123-Essential-JavaScript-Interview-Questions&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://hemant.hashnode.dev/60-javascript-interview-questions" rel="noopener noreferrer"&gt;https://hemant.hashnode.dev/60-javascript-interview-questions&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://codelifefitness.hashnode.dev/12-common-javascript-questions-i-used-to-ask-in-interview" rel="noopener noreferrer"&gt;https://codelifefitness.hashnode.dev/12-common-javascript-questions-i-used-to-ask-in-interview&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.tutsmake.com/javascript-es6-interview-question-and-answer/" rel="noopener noreferrer"&gt;https://www.tutsmake.com/javascript-es6-interview-question-and-answer/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.geeksforgeeks.org/10-most-asked-es6-interview-questions-answers-for-developers/" rel="noopener noreferrer"&gt;https://www.geeksforgeeks.org/10-most-asked-es6-interview-questions-answers-for-developers/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://alimammiya.hashnode.dev/100-most-asked-javascript-interview-questions-and-answers-part-1" rel="noopener noreferrer"&gt;https://alimammiya.hashnode.dev/100-most-asked-javascript-interview-questions-and-answers-part-1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.interviewbit.com/javascript-interview-questions/" rel="noopener noreferrer"&gt;https://www.interviewbit.com/javascript-interview-questions/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/angelomiranda/top-10-javascript-interview-questions-and-answers-you-should-know-junior-and-senior-3943"&gt;https://dev.to/angelomiranda/top-10-javascript-interview-questions-and-answers-you-should-know-junior-and-senior-3943&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english/5-frontend-interview-questions-to-help-you-master-asynchronous-javascript-3339d0f89fdc" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english/5-frontend-interview-questions-to-help-you-master-asynchronous-javascript-3339d0f89fdc&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/swlh/javascript-practice-interview-af1e140eede0" rel="noopener noreferrer"&gt;https://medium.com/swlh/javascript-practice-interview-af1e140eede0&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english/10-javascript-interview-question-c050a357161c" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english/10-javascript-interview-question-c050a357161c&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://thedevpost.com/blog/10-most-asked-questions-about-javascript/" rel="noopener noreferrer"&gt;https://thedevpost.com/blog/10-most-asked-questions-about-javascript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/nas5w/10-javascript-quiz-questions-and-answers-to-sharpen-your-skills-255m"&gt;https://dev.to/nas5w/10-javascript-quiz-questions-and-answers-to-sharpen-your-skills-255m&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://levelup.gitconnected.com/javascript-interview-questions-basic-dom-and-events-7925ce8602ef?source=email-7d5393e25aca-1600898631194-digest.reader------0-59------------------8be1a484_5a7d_41b3_8ac9_410210586401-1-f68eeeb0_1b52_418b_a7c5_14c9775bf642----" rel="noopener noreferrer"&gt;https://levelup.gitconnected.com/javascript-interview-questions-basic-dom-and-events-7925ce8602ef?source=email-7d5393e25aca-1600898631194-digest.reader------0-59------------------8be1a484_5a7d_41b3_8ac9_410210586401-1-f68eeeb0_1b52_418b_a7c5_14c9775bf642----&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://hackernoon.com/10-essential-javascript-questions-zf1t3ueo" rel="noopener noreferrer"&gt;https://hackernoon.com/10-essential-javascript-questions-zf1t3ueo&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/dverybest/basic-javascript-interview-questions-3491"&gt;https://dev.to/dverybest/basic-javascript-interview-questions-3491&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/the-clever-dev/50-difficult-javascript-interview-questions-88e6e92367e7" rel="noopener noreferrer"&gt;https://medium.com/the-clever-dev/50-difficult-javascript-interview-questions-88e6e92367e7&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/50-javascript-best-practice-rules-to-write-better-code-86ce731311d7" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/50-javascript-best-practice-rules-to-write-better-code-86ce731311d7&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/macmacky/70-javascript-interview-questions-5gfi"&gt;https://dev.to/macmacky/70-javascript-interview-questions-5gfi&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Tips and Tricks&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/13-javascript-anomalies-331833001bd2" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/13-javascript-anomalies-331833001bd2&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://hackernoon.com/the-clean-code-book-for-javascript-developers-a-quick-summary-m82b373s" rel="noopener noreferrer"&gt;https://hackernoon.com/the-clean-code-book-for-javascript-developers-a-quick-summary-m82b373s&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://iampalash.hashnode.dev/10-awesome-javascript-shorthands" rel="noopener noreferrer"&gt;https://iampalash.hashnode.dev/10-awesome-javascript-shorthands&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/geekculture/javascript-hacks-cf8f0fecbc60" rel="noopener noreferrer"&gt;https://medium.com/geekculture/javascript-hacks-cf8f0fecbc60&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://apoorvtyagi.tech/javascript-tips-and-best-practices" rel="noopener noreferrer"&gt;https://apoorvtyagi.tech/javascript-tips-and-best-practices&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/10-tips-to-improve-readability-in-javascript-382eb287437" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/10-tips-to-improve-readability-in-javascript-382eb287437&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.yogeshchavan.dev/tricky-javascript-code-snippets-asked-in-the-interview-1" rel="noopener noreferrer"&gt;https://blog.yogeshchavan.dev/tricky-javascript-code-snippets-asked-in-the-interview-1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/50-javascript-output-questions-818d45c3e381" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/50-javascript-output-questions-818d45c3e381&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.smashingmagazine.com/2021/04/vanilla-javascript-code-snippets/" rel="noopener noreferrer"&gt;https://www.smashingmagazine.com/2021/04/vanilla-javascript-code-snippets/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/worldindev/8-javascript-tips-tricks-that-no-one-teaches-24g1"&gt;https://dev.to/worldindev/8-javascript-tips-tricks-that-no-one-teaches-24g1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://thenextweb.com/news/how-to-write-cleaner-code-with-javascript" rel="noopener noreferrer"&gt;https://thenextweb.com/news/how-to-write-cleaner-code-with-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://alimammiya.hashnode.dev/5-useful-javascript-tricks-for-beginners" rel="noopener noreferrer"&gt;https://alimammiya.hashnode.dev/5-useful-javascript-tricks-for-beginners&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/7-concepts-you-should-know-as-a-javascript-developer-f406597319ab" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/7-concepts-you-should-know-as-a-javascript-developer-f406597319ab&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english/18-tips-tricks-for-a-junior-javascript-developer-ae4af698a596" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english/18-tips-tricks-for-a-junior-javascript-developer-ae4af698a596&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/@manish2bharti/javascript-tricks-for-developers-2637e1c1835d" rel="noopener noreferrer"&gt;https://medium.com/@manish2bharti/javascript-tricks-for-developers-2637e1c1835d&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/@deepikawadhera1996/javascript-tips-and-tricks-b1a5d93c9c03" rel="noopener noreferrer"&gt;https://medium.com/@deepikawadhera1996/javascript-tips-and-tricks-b1a5d93c9c03&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.greenroots.info/5-useful-tips-about-the-javascript-array-sort-method-ckfs2cifq00eju9s17dfy3jq8" rel="noopener noreferrer"&gt;https://blog.greenroots.info/5-useful-tips-about-the-javascript-array-sort-method-ckfs2cifq00eju9s17dfy3jq8&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/ga/7-javascript-tips-and-tricks-3d2o"&gt;https://dev.to/ga/7-javascript-tips-and-tricks-3d2o&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/alwarg/fun-with-javascript-tricks-jmk"&gt;https://dev.to/alwarg/fun-with-javascript-tricks-jmk&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.greenroots.info/my-favorite-javascript-tips-and-tricks-ckd60i4cq011em8s16uobcelc?utm_campaign=my-favorite-javascript-tips-and-tricks" rel="noopener noreferrer"&gt;https://blog.greenroots.info/my-favorite-javascript-tips-and-tricks-ckd60i4cq011em8s16uobcelc?utm_campaign=my-favorite-javascript-tips-and-tricks&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://thenextweb.com/syndication/2020/07/25/how-to-write-cleaner-code-with-javascript/" rel="noopener noreferrer"&gt;https://thenextweb.com/syndication/2020/07/25/how-to-write-cleaner-code-with-javascript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://pop.frontendweekly.co/VdB6qN?utm_campaign=most-useful-javascript-tips-&amp;amp;-tricks-for" rel="noopener noreferrer"&gt;http://pop.frontendweekly.co/VdB6qN?utm_campaign=most-useful-javascript-tips-&amp;amp;-tricks-for&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/developers-arena/some-simple-and-amazing-javascript-tricks-292e1962b1f6" rel="noopener noreferrer"&gt;https://medium.com/developers-arena/some-simple-and-amazing-javascript-tricks-292e1962b1f6&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english/some-js-shortcuts-82bc2f56146e" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english/some-js-shortcuts-82bc2f56146e&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.freecodecamp.org/news/nine-most-common-mistakes-developers-make-in-javascript/" rel="noopener noreferrer"&gt;https://www.freecodecamp.org/news/nine-most-common-mistakes-developers-make-in-javascript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://apoorvtyagi.tech/javascript-clean-code-tips-and-good-practices" rel="noopener noreferrer"&gt;https://apoorvtyagi.tech/javascript-clean-code-tips-and-good-practices&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/neonmob/NeonMob-beta/pull/4397" rel="noopener noreferrer"&gt;https://github.com/neonmob/NeonMob-beta/pull/4397&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Javascript Cheatsheet&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://blog.rahulism.co/ultimate-javascript-cheatsheet" rel="noopener noreferrer"&gt;https://blog.rahulism.co/ultimate-javascript-cheatsheet&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english/a-javascript-cheatsheet-you-need-in-2020-d81b3dd89e09" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english/a-javascript-cheatsheet-you-need-in-2020-d81b3dd89e09&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://ilovecoding.org/blog/js-cheatsheet" rel="noopener noreferrer"&gt;https://ilovecoding.org/blog/js-cheatsheet&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/sakhnyuk/js-array-cheatsheet-31h0"&gt;https://dev.to/sakhnyuk/js-array-cheatsheet-31h0&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/anmolraj/javascript-cheatsheet-for-beginners-to-advance-4en4"&gt;https://dev.to/anmolraj/javascript-cheatsheet-for-beginners-to-advance-4en4&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Javascript News Letters&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://javascriptkicks.com/@JavaScriptKicks" rel="noopener noreferrer"&gt;https://javascriptkicks.com/@JavaScriptKicks&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.30secondsofcode.org/" rel="noopener noreferrer"&gt;https://www.30secondsofcode.org/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=""&gt;https://jsstartup.com/https://jsstartup.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://hashnode.com/n/javascript" rel="noopener noreferrer"&gt;https://hashnode.com/n/javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascriptweekly.com/" rel="noopener noreferrer"&gt;https://javascriptweekly.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://weekly.bestofjs.org/" rel="noopener noreferrer"&gt;https://weekly.bestofjs.org/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://esnextnews.com/" rel="noopener noreferrer"&gt;http://esnextnews.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://adripofjavascript.com/archive.html" rel="noopener noreferrer"&gt;http://adripofjavascript.com/archive.html&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://jster.net/blog" rel="noopener noreferrer"&gt;http://jster.net/blog&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://js.libhunt.com/newsletter" rel="noopener noreferrer"&gt;https://js.libhunt.com/newsletter&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://webtoolsweekly.com/" rel="noopener noreferrer"&gt;https://webtoolsweekly.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://techbeacon.com/app-dev-testing/27-javascript-experts-follow-twitter" rel="noopener noreferrer"&gt;https://techbeacon.com/app-dev-testing/27-javascript-experts-follow-twitter&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://gamedevjsweekly.com/" rel="noopener noreferrer"&gt;https://gamedevjsweekly.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://ponyfoo.com/weekly" rel="noopener noreferrer"&gt;https://ponyfoo.com/weekly&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://readme.md/category/javascript" rel="noopener noreferrer"&gt;https://readme.md/category/javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://learn.devkode.io/#/ecmascript/rest-parameters/guides" rel="noopener noreferrer"&gt;https://learn.devkode.io/#/ecmascript/rest-parameters/guides&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://soshace.com/category/javascript/" rel="noopener noreferrer"&gt;https://soshace.com/category/javascript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.ma-no.org/en/programming/javascript" rel="noopener noreferrer"&gt;https://www.ma-no.org/en/programming/javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.w3docs.com/snippets/javascript.html" rel="noopener noreferrer"&gt;https://www.w3docs.com/snippets/javascript.html&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Developers to follow&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://hashnode.com/@iampalash" rel="noopener noreferrer"&gt;https://hashnode.com/@iampalash&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://umaar.com/dev-tips/" rel="noopener noreferrer"&gt;https://umaar.com/dev-tips/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dmitripavlutin.com/" rel="noopener noreferrer"&gt;https://dmitripavlutin.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://wasefs.medium.com/" rel="noopener noreferrer"&gt;https://wasefs.medium.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://anil-pace.medium.com/" rel="noopener noreferrer"&gt;https://anil-pace.medium.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://madasamy.medium.com/" rel="noopener noreferrer"&gt;https://madasamy.medium.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://daveceddia.com/archives/" rel="noopener noreferrer"&gt;https://daveceddia.com/archives/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.ibrahima-ndaw.com/" rel="noopener noreferrer"&gt;https://www.ibrahima-ndaw.com/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/yogain123" rel="noopener noreferrer"&gt;https://github.com/yogain123&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/coderslang"&gt;https://dev.to/coderslang&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Javascript Algorithm&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://hackernoon.com/algorithms-and-data-structures-implemented-in-es6-javascript-h41w342t" rel="noopener noreferrer"&gt;https://hackernoon.com/algorithms-and-data-structures-implemented-in-es6-javascript-h41w342t&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/doabledanny/how-to-compare-arrays-in-javascript-efficiently-1p0"&gt;https://dev.to/doabledanny/how-to-compare-arrays-in-javascript-efficiently-1p0&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/trekhleb/javascript-algorithms" rel="noopener noreferrer"&gt;https://github.com/trekhleb/javascript-algorithms&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Learn Javascript&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://jstherightway.org/" rel="noopener noreferrer"&gt;https://jstherightway.org/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://code.tutsplus.com/series/learn-javascript-the-complete-guide--cms-1112" rel="noopener noreferrer"&gt;https://code.tutsplus.com/series/learn-javascript-the-complete-guide--cms-1112&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://scotch.io/courses/getting-started-with-javascript-for-web-development?ref=home-start-here" rel="noopener noreferrer"&gt;https://scotch.io/courses/getting-started-with-javascript-for-web-development?ref=home-start-here&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://danysdevcorner.hashnode.dev/useful-javascript-resources-to-learn-and-remember" rel="noopener noreferrer"&gt;https://danysdevcorner.hashnode.dev/useful-javascript-resources-to-learn-and-remember&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://reactgo.com/tutorials/javascript/" rel="noopener noreferrer"&gt;https://reactgo.com/tutorials/javascript/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://devdojo.com/piyushsinha24/modern-javascript-iii" rel="noopener noreferrer"&gt;https://devdojo.com/piyushsinha24/modern-javascript-iii&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://techstack.hashnode.dev/the-core-of-javascript" rel="noopener noreferrer"&gt;https://techstack.hashnode.dev/the-core-of-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english/guide-for-mastering-modern-javascript-skills-7d4ee42bf009" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english/guide-for-mastering-modern-javascript-skills-7d4ee42bf009&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://daily.dev/posts/the-7-best-resources-to-learn-javascript-as-a-beginner" rel="noopener noreferrer"&gt;https://daily.dev/posts/the-7-best-resources-to-learn-javascript-as-a-beginner&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://courses.learncodeonline.in/" rel="noopener noreferrer"&gt;https://courses.learncodeonline.in/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/codinglistsdev/48-articles-to-go-beginner-to-pro-in-javascript-2ofn"&gt;https://dev.to/codinglistsdev/48-articles-to-go-beginner-to-pro-in-javascript-2ofn&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/tyaga001/a-simple-and-effective-way-to-learn-practice-javascript-5f3p"&gt;https://dev.to/tyaga001/a-simple-and-effective-way-to-learn-practice-javascript-5f3p&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Javascript Books&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://matfuvit.github.io/UVIT/predavanja/literatura/TutorialsPoint%20JavaScript.pdf" rel="noopener noreferrer"&gt;https://matfuvit.github.io/UVIT/predavanja/literatura/TutorialsPoint%20JavaScript.pdf&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://exploringjs.com/impatient-js/downloads/impatient-js-preview-book.pdf" rel="noopener noreferrer"&gt;https://exploringjs.com/impatient-js/downloads/impatient-js-preview-book.pdf&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://minal-vaity95.medium.com/ultimate-javascript-cheatsheet-d21b0154d589" rel="noopener noreferrer"&gt;https://minal-vaity95.medium.com/ultimate-javascript-cheatsheet-d21b0154d589&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.bitsrc.io/9-free-javascript-books-that-are-well-worth-reading-7cf6b0a20da9" rel="noopener noreferrer"&gt;https://blog.bitsrc.io/9-free-javascript-books-that-are-well-worth-reading-7cf6b0a20da9&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;General&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://blog.ganeshjaiwal.dev/how-does-javascript-work" rel="noopener noreferrer"&gt;https://blog.ganeshjaiwal.dev/how-does-javascript-work&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.webfx.com/blog/web-design/6-advanced-javascript-techniques-you-should-know/" rel="noopener noreferrer"&gt;https://www.webfx.com/blog/web-design/6-advanced-javascript-techniques-you-should-know/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.kritikapattalam.com/use-strict-mode-in-javascript" rel="noopener noreferrer"&gt;https://blog.kritikapattalam.com/use-strict-mode-in-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.logrocket.com/solid-principles-single-responsibility-in-javascript-frameworks/" rel="noopener noreferrer"&gt;https://blog.logrocket.com/solid-principles-single-responsibility-in-javascript-frameworks/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://yogeshchavan.hashnode.dev/master-modern-javascript-skills-with-this-amazing-guide" rel="noopener noreferrer"&gt;https://yogeshchavan.hashnode.dev/master-modern-javascript-skills-with-this-amazing-guide&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dmitripavlutin.com/javascript-null/" rel="noopener noreferrer"&gt;https://dmitripavlutin.com/javascript-null/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://seven.hashnode.dev/understanding-import-and-export-statements-in-javascript" rel="noopener noreferrer"&gt;https://seven.hashnode.dev/understanding-import-and-export-statements-in-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/@mirzaleka/exploring-javascript-ecosystem-popular-tools-frameworks-libraries-7901703ec88f" rel="noopener noreferrer"&gt;https://medium.com/@mirzaleka/exploring-javascript-ecosystem-popular-tools-frameworks-libraries-7901703ec88f&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://flaviocopes.com/javascript-lexical-structure/" rel="noopener noreferrer"&gt;https://flaviocopes.com/javascript-lexical-structure/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/bgoonz/all-of-my-articles-combined-284m"&gt;https://dev.to/bgoonz/all-of-my-articles-combined-284m&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Best Practices&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://stackoverflow.blog/2021/07/05/best-practices-for-writing-code-comments/" rel="noopener noreferrer"&gt;https://stackoverflow.blog/2021/07/05/best-practices-for-writing-code-comments/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://javascript.plainenglish.io/improve-javascript-code-quality-with-these-best-practices-ee883a124d8e" rel="noopener noreferrer"&gt;https://javascript.plainenglish.io/improve-javascript-code-quality-with-these-best-practices-ee883a124d8e&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dzone.com/articles/javascript-best-practices-to-improve-code-quality" rel="noopener noreferrer"&gt;https://dzone.com/articles/javascript-best-practices-to-improve-code-quality&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://deepaksisodiya.hashnode.dev/5-best-practices-for-clean-coding-in-javascript-ckewx32f801e7ggs1ddys9m3f" rel="noopener noreferrer"&gt;https://deepaksisodiya.hashnode.dev/5-best-practices-for-clean-coding-in-javascript-ckewx32f801e7ggs1ddys9m3f&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/javascript-in-plain-english/19-simple-javascript-coding-standards-to-keep-your-code-clean-7422d6f9bc0" rel="noopener noreferrer"&gt;https://medium.com/javascript-in-plain-english/19-simple-javascript-coding-standards-to-keep-your-code-clean-7422d6f9bc0&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Javascript Projects&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://hashnode.com/post/15-project-ideas-for-web-developers-ckmg1p6vc00ialds1cmtl870c" rel="noopener noreferrer"&gt;https://hashnode.com/post/15-project-ideas-for-web-developers-ckmg1p6vc00ialds1cmtl870c&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.crio.do/blog/top-5-javascript-projects-reactjs/" rel="noopener noreferrer"&gt;https://www.crio.do/blog/top-5-javascript-projects-reactjs/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://medium.com/swlh/projects-you-can-build-with-vanilla-javascript-e52c3e00f25c" rel="noopener noreferrer"&gt;https://medium.com/swlh/projects-you-can-build-with-vanilla-javascript-e52c3e00f25c&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://codelifefitness.hashnode.dev/projects-you-can-build-with-vanilla-javascript" rel="noopener noreferrer"&gt;https://codelifefitness.hashnode.dev/projects-you-can-build-with-vanilla-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://annysah.hashnode.dev/7-beginner-friendly-javascript-project-ideas-ckevszz7u021dnzs19gu4eaye" rel="noopener noreferrer"&gt;https://annysah.hashnode.dev/7-beginner-friendly-javascript-project-ideas-ckevszz7u021dnzs19gu4eaye&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://levelup.gitconnected.com/learn-concepts-of-vanilla-javascript-while-building-a-privacy-card-game-in-5-easy-steps-7b0a2d89db63" rel="noopener noreferrer"&gt;https://levelup.gitconnected.com/learn-concepts-of-vanilla-javascript-while-building-a-privacy-card-game-in-5-easy-steps-7b0a2d89db63&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.kritikapattalam.com/build-a-simple-clock-using-javascript" rel="noopener noreferrer"&gt;https://blog.kritikapattalam.com/build-a-simple-clock-using-javascript&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;code&gt;Youtube channels&lt;/code&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dzone.com/articles/22-youtube-channels-to-level-up-your-programming-s" rel="noopener noreferrer"&gt;https://dzone.com/articles/22-youtube-channels-to-level-up-your-programming-s&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.codewall.co.uk/best-javascript-youtube-channels/" rel="noopener noreferrer"&gt;https://www.codewall.co.uk/best-javascript-youtube-channels/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Upcoming, &lt;br&gt;
Python interview preparation.&lt;/p&gt;

&lt;p&gt;Stay tuned :) :) &lt;/p&gt;

</description>
      <category>javascript</category>
      <category>interview</category>
      <category>links</category>
    </item>
    <item>
      <title>Boost your application with Google LightHouse</title>
      <dc:creator>Ashokkumar</dc:creator>
      <pubDate>Sun, 05 Jan 2020 14:37:54 +0000</pubDate>
      <link>https://dev.to/a8hok/boost-your-application-with-google-lighthouse-1mfi</link>
      <guid>https://dev.to/a8hok/boost-your-application-with-google-lighthouse-1mfi</guid>
      <description>&lt;h2&gt;
  
  
  How Google LightHouse works?
&lt;/h2&gt;

&lt;p&gt;Lighthouse is an open-source, automated tool for improving the quality of web pages. You can run it against any web page, public or requiring authentication. It has audits for performance, accessibility, progressive web apps, and more.&lt;/p&gt;

&lt;p&gt;Lighthouse analyses web apps and web pages, collecting modern performance metrics and insights on developer best practices.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FLxCHZie--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/bwlg5wxyu1p028oo1fc8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FLxCHZie--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/bwlg5wxyu1p028oo1fc8.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What Does Lighthouse Test?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Performance&lt;/li&gt;
&lt;li&gt;Accessibility&lt;/li&gt;
&lt;li&gt;Best Practices&lt;/li&gt;
&lt;li&gt;SEO&lt;/li&gt;
&lt;li&gt;PWA&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Lighthouse can be integrated with,&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CI/CD process&lt;/li&gt;
&lt;li&gt;Task runners&lt;/li&gt;
&lt;li&gt;Unit tests&lt;/li&gt;
&lt;li&gt;Git pre-commit hooks&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;How to access Lighthouse?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Google developer tools

&lt;ul&gt;
&lt;li&gt;Supports from version 52+
Open Google developer tools by clicking &lt;strong&gt;Inspect&lt;/strong&gt; option from browser, then you can find &lt;strong&gt;Audits&lt;/strong&gt;. There we can access LightHouse.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--DuTan1uB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/fdo6zfjrdet37svbiiqn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--DuTan1uB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/fdo6zfjrdet37svbiiqn.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Google extension&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;We can also find Google lighthouse as &lt;a href="https://chrome.google.com/webstore/detail/lighthouse/blipmdconlkpinefehnmjammfjpmpbjk?hl=en"&gt;Extension&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;

&lt;p&gt;Using NodeJS CLI&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The Node CLI provides the most flexibility in how Lighthouse runs can be configured and reported.&lt;a href="https://www.npmjs.com/package/lighthouse"&gt;Npm&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Examples,&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open your terminal and run the below command.&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;npm install -g lighthouse&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;Verify Lighthouse installed by checking the version.&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;lighthouse --version&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;Now you can run audits against your application or any,&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;lighthouse &lt;a href="https://flipkart.com"&gt;https://flipkart.com&lt;/a&gt; --output html --out json --output --svg&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Above command run the audits against flipkart and output the results in three format.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;html&lt;/li&gt;
&lt;li&gt;json&lt;/li&gt;
&lt;li&gt;svg&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Lighthouse integrated with Task runner(Gulp) &lt;a href="https://github.com/a8hok/lighthouse"&gt;Github repo&lt;/a&gt;&lt;/p&gt;

</description>
      <category>googlelighthouse</category>
      <category>javascript</category>
      <category>performance</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Reverse proxy using Varnish</title>
      <dc:creator>Ashokkumar</dc:creator>
      <pubDate>Sat, 04 Jan 2020 09:36:18 +0000</pubDate>
      <link>https://dev.to/a8hok/reverse-proxy-using-varnish-b27</link>
      <guid>https://dev.to/a8hok/reverse-proxy-using-varnish-b27</guid>
      <description>&lt;h2&gt;
  
  
  Reverse proxy
&lt;/h2&gt;

&lt;p&gt;A Reverse proxy is a server that sits in front of web servers and forwards client (e.g. web browser) requests to those web servers.&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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fujlrh56lkggw3kb49n8j.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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fujlrh56lkggw3kb49n8j.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Some of the Reverse proxy &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Nginx&lt;/li&gt;
&lt;li&gt;HAProxy&lt;/li&gt;
&lt;li&gt;Varnish-Cache&lt;/li&gt;
&lt;li&gt;Lighttpd&lt;/li&gt;
&lt;li&gt;Repose&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Reverse proxies are typically implemented to help increase Security, Performance, and Reliability. Most of us are already familiar with Nginx, so will try Varnish Cache in this article.&lt;/p&gt;

&lt;p&gt;Varnish is a program that can increase the speed of a Web site while simultaneously reducing the load on the Web server. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“Varnish is a Web application accelerator also known as a caching HTTP reverse proxy”.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It typically speeds up delivery with a factor of &lt;strong&gt;300 - 1000x&lt;/strong&gt;, depending on your architecture.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How varnish works?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The first time a certain URL and path are requested, Varnish has to request it from the origin server in order to serve it to the visitor. This is called a &lt;strong&gt;CACHE MISS&lt;/strong&gt;, which can be read in HTTP response headers, depending on the Varnish setup.&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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F64yxd991b146272de60s.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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F64yxd991b146272de60s.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When a particular URL or a resource is cached by Varnish and stored in memory, it can be served directly from server RAM; it doesn’t need to be computed every time. Varnish will start delivering a &lt;strong&gt;CACHE HIT&lt;/strong&gt; in a matter of microseconds.&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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fzu9gllp0ykld6m6i5wuh.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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fzu9gllp0ykld6m6i5wuh.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Varnish vs Ngnix&lt;/strong&gt;&lt;br&gt;
If you are using Nginx and Varnish only as reverse proxy, it’s fair to compare both.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Both Nginx and Varnish can be used as a reverse proxy cache, also for load balancing between two or more Apache servers that will deliver the dynamic content.&lt;/li&gt;
&lt;li&gt;Varnish Cache has a lot of flexibility, allowing developers to create a more complex caching structure than Nginx.&lt;/li&gt;
&lt;li&gt;Varnish Cache Configuration Language (VCL). VCL allows developers to specify request handling rules and set specific caching policies giving them a lot of control over what and how they cache.&lt;/li&gt;
&lt;li&gt;Varnish Cache supports ESI while Nginx doesn’t; Nginx supports SSL where Varnish Cache doesn’t.&lt;/li&gt;
&lt;li&gt;Varnish by default supports PURGE.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;How to install Varnish in MacOS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;With the help of &lt;strong&gt;brew&lt;/strong&gt; we can install Varnish cache.&lt;/p&gt;

&lt;p&gt;Open your terminal then run,&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;brew install varnish&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Check varnish is installed,&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;brew info varnish&lt;/p&gt;
&lt;/blockquote&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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fwqw991tzta9ao5yzdqax.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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fwqw991tzta9ao5yzdqax.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Varnish has a great configuration system. Most other systems use configuration directives, where you basically turn on and off lots of switches.&lt;/p&gt;

&lt;p&gt;We have instead chosen to use a domain specific language called VCL for this.Varnish is configured via Varnish Configuration Language (VCL). &lt;/p&gt;

&lt;p&gt;Once the configuration file is loaded by the system, Varnish translates and compiles.when you install varnish, default configuration file will be available called &lt;strong&gt;default.vcl&lt;/strong&gt; file.&lt;/p&gt;

&lt;p&gt;In the above image you can able to locate default.vcl file.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;cat /usr/local/etc/varnish/default.vcl&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Setting up Varnish with NodeJS&lt;/strong&gt;&lt;br&gt;
where we had already installed Varnish, Now setting up a &lt;strong&gt;NodeJS app&lt;/strong&gt;.&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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fsqoip883gvvupg72b6xd.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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fsqoip883gvvupg72b6xd.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Save file as server.js&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open terminal and start your NodeJS server,&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;node server.js&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Goto browser and open &lt;a href="https://localhost:8080" rel="noopener noreferrer"&gt;https://localhost:8080&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Configure Varnish&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open your default.vcl file.&lt;/li&gt;
&lt;li&gt;Setup your server configuration.&lt;/li&gt;
&lt;/ul&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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F2zo15b9m2znohhxcchrm.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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F2zo15b9m2znohhxcchrm.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Handle request methods, by default varnish supports GET and HEAD method.&lt;/li&gt;
&lt;li&gt;Handle backend response, once varnish fetch content from backend we can set ttl(time to live) and other configurations like handling response code.&lt;/li&gt;
&lt;/ul&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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fa3gwu6ovjx8pjnsije7c.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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fa3gwu6ovjx8pjnsije7c.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;We can control whether or not our request is being cached in our browser inspector, we ought to add the following snippet to our Varnish config file, into the &lt;strong&gt;sub vcl_deliver&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fvznp5qn3t2hof3o72xnu.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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2Fvznp5qn3t2hof3o72xnu.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Start your varnish server.&lt;/li&gt;
&lt;li&gt;Goto your browser, then we can see the feedback in our response headers as HIT or MISS.&lt;/li&gt;
&lt;/ul&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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F4mqbe5apdxyzrrcoe0cl.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%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F4mqbe5apdxyzrrcoe0cl.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This was just a short tutorial on speeding up your web service using Varnish.&lt;br&gt;
You can use Varnish with any backend server like Python, PHP, NodeJS.&lt;/p&gt;

&lt;p&gt;In built VCL makes life easy. Based on our needs we can stick with Nginx or Varnish to boost our site performance.&lt;/p&gt;

&lt;p&gt;Please find full version of default.vcl file &lt;a href="https://github.com/a8hok/varnish-cache/blob/master/default.vcl" rel="noopener noreferrer"&gt;Github&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Video link &lt;a href="https://www.youtube.com/watch?v=o5NBIb7rf_A" rel="noopener noreferrer"&gt;youtube&lt;/a&gt;&lt;/p&gt;

</description>
      <category>varnishcache</category>
      <category>reverseproxy</category>
      <category>node</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
