<?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: Ashutosh Mishra</title>
    <description>The latest articles on DEV Community by Ashutosh Mishra (@ashutoshmishra).</description>
    <link>https://dev.to/ashutoshmishra</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%2F554732%2F278479ce-1f6d-48c8-9d82-68f4c36281d0.jpg</url>
      <title>DEV Community: Ashutosh Mishra</title>
      <link>https://dev.to/ashutoshmishra</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ashutoshmishra"/>
    <language>en</language>
    <item>
      <title>5 Must-Have Cheat Sheets for Frontend Developers in 2025</title>
      <dc:creator>Ashutosh Mishra</dc:creator>
      <pubDate>Mon, 17 Mar 2025 10:41:48 +0000</pubDate>
      <link>https://dev.to/ashutoshmishra/5-must-have-cheat-sheets-for-frontend-developers-in-2025-2lcm</link>
      <guid>https://dev.to/ashutoshmishra/5-must-have-cheat-sheets-for-frontend-developers-in-2025-2lcm</guid>
      <description>&lt;p&gt;Frontend development is constantly evolving, and staying up to date with the latest tools, frameworks, and techniques is more crucial than ever. Whether you're a beginner or an experienced developer, there are moments when you forget syntax, struggle with layout issues, or spend way too much time searching for the right JavaScript method.&lt;/p&gt;

&lt;p&gt;This is where cheat sheets become absolute lifesavers. Apart from relying on endless AI/Google searches or documentation deep dives, having a quick reference guide at your fingertips can boost productivity, reduce coding errors, and streamline your workflow.&lt;/p&gt;

&lt;p&gt;Cheat sheets help by summarizing the most essential information in an easy-to-digest format. So, if you want to code smarter, faster, and more efficiently, here are the 5 best cheat sheets you should have in 2025.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. HTML5 Cheat Sheet
&lt;/h2&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%2Frul5a07b6f6hh6fndc1l.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%2Frul5a07b6f6hh6fndc1l.png" alt="HTML5 Cheat Sheet" width="800" height="389"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;HTML5 remains the foundation of the web, and even though it's one of the simplest languages to learn, developers still get caught up on elements, attributes, and best practices.&lt;/p&gt;

&lt;p&gt;This &lt;a href="https://html.com/blog/html-5-cheat-sheets/" rel="noopener noreferrer"&gt;html.com cheatsheet&lt;/a&gt; provides a structured overview of all commonly used elements, from basic tags like &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;span&amp;gt;&lt;/code&gt; to semantic elements like &lt;code&gt;&amp;lt;section&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;article&amp;gt;&lt;/code&gt;, and &lt;code&gt;&amp;lt;aside&amp;gt;&lt;/code&gt;. As a frontend developer, you need to ensure your code follows the best semantic practices for better SEO, accessibility, and maintainability.&lt;/p&gt;

&lt;p&gt;It also covers event handler attributes and a browser support table to help you efficiently build functional and accessible web pages. &lt;br&gt;
Instead of digging through MDN documentation every time, having this well-organized HTML5 cheat sheet can help you recall these elements quickly and use them effectively.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Tailwind CSS Cheat Sheet
&lt;/h2&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%2F7s4v282kmpxke4degnwq.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%2F7s4v282kmpxke4degnwq.png" alt="Tailwind CSS Cheat Sheet" width="800" height="389"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://kombai.com/tailwind/tutorial/" rel="noopener noreferrer"&gt;Tailwind CSS&lt;/a&gt; has simplified frontend styling by offering a utility-first approach that eliminates the need for traditional CSS files. However, remembering every class name—especially when working on large projects—can be challenging. This &lt;a href="https://kombai.com/tailwind/cheat-sheet/" rel="noopener noreferrer"&gt;Tailwind CSS cheat sheet&lt;/a&gt; provides an instant reference to commonly used utilities, making styling faster and more efficient.&lt;/p&gt;

&lt;p&gt;Tailwind's biggest advantage is its atomic classes, which allow you to apply styles directly in your markup without writing custom CSS. But with hundreds of available classes, it's easy to forget the exact syntax. This cheat sheet has organized classes based on categories like layout, typography, spacing, and transitions. Instead of switching back and forth between documentation, you can simply glance at the cheat sheet and continue coding.&lt;/p&gt;

&lt;p&gt;Additionally, this cheat sheet covers the latest version of Tailwind CSS, i.e., v4, apart from v3. If you're working with Tailwind CSS, this is the one cheat sheet you can't afford to ignore.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. CSS Flexbox &amp;amp; Grid Cheat Sheet
&lt;/h2&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%2Ff58kumzge8pco9s6z79g.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%2Ff58kumzge8pco9s6z79g.png" alt="Flex cheat sheet" width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Flexbox and Grid are the two most powerful layout models in modern CSS, and knowing when (and how) to use them is a game-changer.&lt;/p&gt;

&lt;p&gt;Flexbox is great for one-dimensional layouts, such as aligning elements in a row or column. It provides easy control over spacing, alignment, and responsiveness.&lt;/p&gt;

&lt;p&gt;On the other hand, CSS Grid is best for two-dimensional layouts, allowing you to create complex designs with just a few lines of code. &lt;/p&gt;

&lt;p&gt;The &lt;a href="https://flexbox.malven.co/" rel="noopener noreferrer"&gt;flex&lt;/a&gt; and &lt;a href="https://grid.malven.co/" rel="noopener noreferrer"&gt;grid&lt;/a&gt; cheat sheet by Maven helps you remember key properties like &lt;code&gt;justify-content&lt;/code&gt;, &lt;code&gt;align-items&lt;/code&gt;, &lt;code&gt;flex-wrap&lt;/code&gt;, &lt;code&gt;grid-template-columns&lt;/code&gt;, &lt;code&gt;grid-template-rows&lt;/code&gt;, and &lt;code&gt;gap&lt;/code&gt;, etc. that are crucial when structuring layouts efficiently.&lt;/p&gt;

&lt;p&gt;Instead of wrestling with CSS for hours, this allows you to reference key properties instantly and implement layouts faster. If you've ever spent more time debugging CSS than writing actual code, this cheat sheet is your new best friend.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. JavaScript ES6+ Cheat Sheet
&lt;/h2&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%2Fal89p40b4nrma12ehljm.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%2Fal89p40b4nrma12ehljm.png" alt="ES6 cheat sheet" width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;JavaScript is the backbone of frontend development, and keeping up with its constant updates and new features can feel like chasing a moving target. ES6+ introduced powerful additions like arrow functions, template literals, destructuring, and async/await, all of which significantly improve JavaScript coding efficiency. However, remembering the exact syntax for each feature can be tricky.&lt;/p&gt;

&lt;p&gt;Destructuring allows developers to effortlessly extract values from arrays and objects, reducing repetitive code. Arrow functions provide a more concise way to write functions, while template literals make it easier to handle dynamic strings. Another essential ES6+ feature is the introduction of &lt;code&gt;let&lt;/code&gt; and &lt;code&gt;const,&lt;/code&gt; replacing &lt;code&gt;var&lt;/code&gt; for better scoping and readability.&lt;/p&gt;

&lt;p&gt;This &lt;a href="https://quickref.me/es6.html" rel="noopener noreferrer"&gt;ES6 cheat sheet&lt;/a&gt; provides quick syntax references and examples, making it easier to implement these features without second-guessing yourself.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. React.js Cheat Sheet
&lt;/h2&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%2Fehhlycnrv9safwvbro6i.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%2Fehhlycnrv9safwvbro6i.png" alt="React cheat sheet" width="800" height="365"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;React.js remains the most popular frontend library, and if you're building anything dynamic, chances are you're working with React. However, keeping track of React hooks, component lifecycles, and state management techniques can be overwhelming. The &lt;a href="https://www.shecodes.io/cheatsheets/react" rel="noopener noreferrer"&gt;React cheat sheet&lt;/a&gt; and &lt;a href="https://blog.logrocket.com/react-hooks-cheat-sheet-solutions-common-problems/" rel="noopener noreferrer"&gt;React hooks cheat sheet&lt;/a&gt; helps you quickly recall essential concepts like &lt;code&gt;props&lt;/code&gt;, &lt;code&gt;loops&lt;/code&gt;, &lt;code&gt;useEffect&lt;/code&gt;, and &lt;code&gt;useContext&lt;/code&gt;, making it easier to build powerful and scalable applications.&lt;/p&gt;

&lt;p&gt;React hooks eliminated the need for class-based components while improving state management and side effects handling. However, keeping track of all available hooks, their parameters, and how they interact with other components can be tricky. The React hooks cheat sheet simplifies this by providing quick references and best practices.&lt;/p&gt;

&lt;p&gt;With these two cheat sheets, you can focus on writing cleaner, more efficient React code, instead of endlessly searching for solutions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Cheat sheets are a game-changer for developers, saving time and reducing frustration. Whether you're working with HTML, CSS, JavaScript, React, or Tailwind CSS, having quick reference guides can drastically improve your efficiency.&lt;/p&gt;

&lt;p&gt;Bookmark these cheat sheets, print them out, or keep them open while coding—you'll thank yourself later. 🚀&lt;/p&gt;

</description>
      <category>cheatsheet</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>programming</category>
    </item>
    <item>
      <title>Turn email designs to code that works even in Outlook, in a single click</title>
      <dc:creator>Ashutosh Mishra</dc:creator>
      <pubDate>Thu, 07 Dec 2023 12:25:00 +0000</pubDate>
      <link>https://dev.to/kombai/turn-email-designs-to-code-that-works-even-in-outlook-in-a-single-click-2ng9</link>
      <guid>https://dev.to/kombai/turn-email-designs-to-code-that-works-even-in-outlook-in-a-single-click-2ng9</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Last week, we publicly launched &lt;strong&gt;Kombai For Email&lt;/strong&gt;, a specialized version of our &lt;a href="https://kombai.com/docs/other-docs/technology" rel="noopener noreferrer"&gt;base model&lt;/a&gt; that can code custom HTML emails with 95%+ accuracy. It lets you convert email designs to code that works across all major Email Service Providers(ESPs) and Email Clients(even on Outlook) in a single click.&lt;/p&gt;

&lt;p&gt;The Research Preview of our base model was launched on Product Hunt in August 2023. And with all your love and support, we made it to the top earning &lt;em&gt;#1 Product of the Day&lt;/em&gt;, &lt;em&gt;#1 Product of the Week&lt;/em&gt;, and &lt;em&gt;#1 Product of the Month&lt;/em&gt; badges.&lt;/p&gt;

&lt;p&gt;Today, we are launching the email version of our base model on Product Hunt. The Figma plugin of our email model was made available to the public last week. Since then, we have got 1000+ users who have created more than 800 sessions on our plugin. So, try our product and show us your love on Product Hunt.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Product Hunt Link:&lt;/strong&gt; &lt;a href="https://kombai.com/launch" rel="noopener noreferrer"&gt;https://kombai.com/launch&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Kombai For Email Plugin:&lt;/strong&gt; &lt;a href="https://kombai.com/email" rel="noopener noreferrer"&gt;https://kombai.com/email&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Kombai For Email?
&lt;/h2&gt;

&lt;p&gt;&lt;iframe src="https://player.vimeo.com/video/891386285" width="710" height="399"&gt;
&lt;/iframe&gt;
 &lt;/p&gt;

&lt;p&gt;Kombai For Email is the specialized email version of the Kombai’s base model. You can access it through our Figma plugin. It helps you generate HTML emails for your designs in a single click. We also let you configure the code and ensure that the output code you receive works well on all major email clients and ESPs.&lt;/p&gt;

&lt;p&gt;Getting started with Kombai is easy. Install our Figma plugin from &lt;a href="https://kombai.com/email" rel="noopener noreferrer"&gt;here&lt;/a&gt; and follow the below steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Open your Figma design and run our plugin.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Select a frame or group you want to convert to code.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Kombai will now generate a preview of the frame/group along with the HTML email code.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click the ⚙️ (Settings) button(if you have any configurations), make your changes, and save the code.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click the Download Code button to download the code. Alternatively, you can also copy the code by clicking the Copy HTML button, which comes up when you expand the HTML CSS option.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Features
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Preview
&lt;/h3&gt;

&lt;p&gt;Preview tab shows the preview of the generated HTML code. We put all the Kombai-generated code inside an &lt;code&gt;&amp;lt;iframe&amp;gt;&lt;/code&gt; and display it in the preview tab so that it mirrors the output code we generated.&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%2Fkombai.com%2Fdocs%2F_next%2Fstatic%2Fmedia%2Fpreview-tab.23ece200.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%2Fkombai.com%2Fdocs%2F_next%2Fstatic%2Fmedia%2Fpreview-tab.23ece200.png" alt="Screenshot of Preview tab" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We provide multiple common &lt;em&gt;screen dimensions(320px, 360px, 768px, 1280px, etc.)&lt;/em&gt; to preview the rendered email. You can also use our &lt;em&gt;percentage-based values(25%, 50%, 75%, 100%, 125%, and 150%), fit-email-height, and fit-device-width&lt;/em&gt; to zoom in or zoom out in the preview tab.&lt;/p&gt;

&lt;p&gt;Preview tab also contains the following buttons:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Regenerate Code:&lt;/strong&gt; It syncs the code with the latest design changes.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Send Email:&lt;/strong&gt; It sends the generated code to your email ID for test.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Settings:&lt;/strong&gt; It opens the settings for further configuration.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Code:&lt;/strong&gt; It downloads the code to your computer.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  HTML CSS
&lt;/h3&gt;

&lt;p&gt;HTML CSS tab shows the HTML email code that Kombai has generated for your design. You can view and copy the entire code from this tab.&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%2Fkombai.com%2Fdocs%2F_next%2Fstatic%2Fmedia%2Fhtml-css-tab.5bf3db43.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%2Fkombai.com%2Fdocs%2F_next%2Fstatic%2Fmedia%2Fhtml-css-tab.5bf3db43.png" alt="Screenshot of HTML CSS tab" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Any configurations you make in the settings will automatically get reflected in this tab.&lt;/p&gt;

&lt;h3&gt;
  
  
  Email Compatibility
&lt;/h3&gt;

&lt;p&gt;Email Compatibility tab shows the client compatibility and email deliverability of the generated code.&lt;/p&gt;

&lt;p&gt;We show a heatmap displaying whether the code is &lt;strong&gt;fully supported&lt;/strong&gt;, &lt;strong&gt;majorly supported&lt;/strong&gt;, or &lt;strong&gt;minorly supported&lt;/strong&gt; in the most popular email clients and operating systems.&lt;/p&gt;

&lt;p&gt;We also display email size, template width, and notification of fallback fonts(if used), along with suggestions on how to fix them.&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%2Fkombai.com%2Fdocs%2F_next%2Fstatic%2Fmedia%2Femail-comp-tab.cc28ceec.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%2Fkombai.com%2Fdocs%2F_next%2Fstatic%2Fmedia%2Femail-comp-tab.cc28ceec.png" alt="Screenshot of Email Compatibility tab" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Configurations
&lt;/h3&gt;

&lt;p&gt;Default Kombai-generated code can be configured in the Settings. Once your settings are saved, the HTML CSS tab updates the code to reflect the latest changes.&lt;/p&gt;

&lt;p&gt;We support the following configurations in Settings:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Title&lt;/strong&gt;: This will be added to the &lt;code&gt;&amp;lt;title&amp;gt;&lt;/code&gt; inside the &lt;code&gt;&amp;lt;head&amp;gt;&lt;/code&gt; element of the HTML.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Preview Text&lt;/strong&gt;: Preview Text appears next to the subject in the recipient’s email inbox.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Code Minification&lt;/strong&gt;: If this is turned on, you can copy or download the minified version of the email code.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Output Image Format:&lt;/strong&gt; You can choose between Linked PNG Files or Base64 Embeds. By default, we use &lt;strong&gt;Linked PNG Files&lt;/strong&gt; due to better support across ESPs and Email Clients.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Autogeneration of Alt text for images&lt;/strong&gt;: If this is turned on, Kombai will auto-generate alt text for images used in the design.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Fallback for Non-Email safe fonts&lt;/strong&gt;: For each non-web-safe font used in the design, you can add a fallback font.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Language(Accessibility)&lt;/strong&gt;: Based on the language you select, we'll add the &lt;code&gt;lang&lt;/code&gt; and &lt;code&gt;dir&lt;/code&gt; attribute to the HTML for better accessibility.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Mobile Responsiveness:&lt;/strong&gt; Kombai has support for responsiveness in settings. This has been discussed later in the article.  &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Code Output
&lt;/h2&gt;

&lt;p&gt;Our code output follows the common industry standards for HTML email, like using HTML tables for layout and content and using CSS properties with maximum email client support.&lt;/p&gt;

&lt;p&gt;You can either copy the code to the clipboard or download the zip file. The downloaded zip will contain the HTML file &lt;code&gt;index.html&lt;/code&gt; and assets folder with PNG images(if Linked PNGs are turned on in the settings).&lt;/p&gt;

&lt;h3&gt;
  
  
  Content Type Support
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Links:&lt;/strong&gt; Kombai supports linking in designs. If your Figma file has a hyperlink, we’ll add that link in the HTML email code at the right place.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;GIFs:&lt;/strong&gt; We also have support for GIFs in our code.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;PNG:&lt;/strong&gt; We have support for all image formats that are supported by &lt;a href="https://help.figma.com/hc/en-us/articles/360040028034-Add-images-and-videos-to-design-files" rel="noopener noreferrer"&gt;Figma&lt;/a&gt;, i.e., JPG, PNG, HEIC, TIFF, WebP, and even SVG. However, we convert all the images to the PNG format as it’s &lt;a href="https://www.caniemail.com/features/image-png/" rel="noopener noreferrer"&gt;supported by all the major email clients and operating systems&lt;/a&gt;. We also crop the part of the original image that is not used in the design and render the remaining used portion at 2x resolution for better display on the retina.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Font:&lt;/strong&gt; We support all the publicly available fonts in our code. However, if you are using a non-web-safe font, it’s best to also specify a fallback font.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Accessibility
&lt;/h3&gt;

&lt;p&gt;Kombai ensures maximum accessibility for generated code so that there’s less risk of the email getting delivered to spam. We provide settings to add title and preview text, minify code, auto-generate alt text, and add &lt;code&gt;lang&lt;/code&gt; and &lt;code&gt;dir&lt;/code&gt; attributes to the HTML.&lt;/p&gt;

&lt;p&gt;Our code is also tested on Parcel’s Accessibility Checker tool to ensure maximum accessibility.&lt;/p&gt;

&lt;h2&gt;
  
  
  ESP Support
&lt;/h2&gt;

&lt;p&gt;By design, Kombai-generated code works on all ESPs. However, we have tested our code across 11 major ESPs to ensure the proper functioning of our code.&lt;/p&gt;

&lt;p&gt;These ESPs are Klaviyo, Mailchimp, HubSpot, Constant Contact, Active Campaign, Campaign Monitor, Moosend, Brevo, Zoho Campaigns, Mailjet, and GetResponse. For more information, check our &lt;a href="https://kombai.com/docs/email/kombai-esp-support" rel="noopener noreferrer"&gt;Support For ESPs&lt;/a&gt; guide.&lt;/p&gt;

&lt;h2&gt;
  
  
  Email Clients Support
&lt;/h2&gt;

&lt;p&gt;Kombai-generated code works well on all major email clients. This includes Apple Mail(iOS), Apple Mail(macOS), Gmail(Android), Gmail(iOS), Gmail(Webmail), Outlook(Android), Outlook(iOS), Outlook(macOS), Outlook.com, Outlook(Windows), Yahoo(Android), Yahoo(Webmail), and Yahoo(iOS).&lt;/p&gt;

&lt;p&gt;We only generate those CSS properties that are supported across the above-listed clients. In case your email design has any property with partial or no support for at least one of the above clients, you can find how to fix them in our &lt;a href="https://kombai.com/docs/email/email-deliverability-client-compatibility#client-compatibility" rel="noopener noreferrer"&gt;Client Compatibility&lt;/a&gt; guide.&lt;/p&gt;

&lt;h2&gt;
  
  
  Mobile Responsiveness
&lt;/h2&gt;

&lt;p&gt;Kombai supports mobile responsiveness in the auto-generated code. We allow you to define a custom breakpoint below which all the responsive configurations will be turned on.&lt;/p&gt;

&lt;p&gt;You can set email margins, font size overrides, make content fluid, and stack columns on top of one another. All these settings will be enabled only on the devices below the breakpoint you provide. For more information, visit our &lt;a href="https://kombai.com/docs/email/mobile-responsiveness" rel="noopener noreferrer"&gt;Mobile Responsiveness&lt;/a&gt; guide.&lt;/p&gt;

&lt;h2&gt;
  
  
  Support us on Product Hunt
&lt;/h2&gt;

&lt;p&gt;If you are reading this till the end, &lt;a href="https://kombai.com/launch" rel="noopener noreferrer"&gt;support our launch on Product Hunt&lt;/a&gt; and check out our &lt;a href="https://kombai.com/email" rel="noopener noreferrer"&gt;product&lt;/a&gt;. Comment below if you have any questions or feedback.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>What are the best AI Frontend tools you have used?</title>
      <dc:creator>Ashutosh Mishra</dc:creator>
      <pubDate>Tue, 22 Aug 2023 18:17:24 +0000</pubDate>
      <link>https://dev.to/ashutoshmishra/what-are-the-best-ai-frontend-tools-you-have-used-40n4</link>
      <guid>https://dev.to/ashutoshmishra/what-are-the-best-ai-frontend-tools-you-have-used-40n4</guid>
      <description>&lt;p&gt;To all my frontend friends, I would love to know how much area of your daily workflow is occupied by AI tools?&lt;/p&gt;

&lt;p&gt;And what are the best AI tools you have used? Specifically those that help you in frontend development.&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>webdev</category>
      <category>react</category>
      <category>javascript</category>
    </item>
    <item>
      <title>6 Best Frontend Communities to Join in 2023</title>
      <dc:creator>Ashutosh Mishra</dc:creator>
      <pubDate>Tue, 22 Aug 2023 10:25:06 +0000</pubDate>
      <link>https://dev.to/ashutoshmishra/6-best-frontend-communities-to-join-in-2023-4alk</link>
      <guid>https://dev.to/ashutoshmishra/6-best-frontend-communities-to-join-in-2023-4alk</guid>
      <description>&lt;p&gt;If you are thinking to learn to code and become a frontend developer, going alone is not the way. In 2023, there are lots of online developer communities that can scale your learning experience and speed.&lt;/p&gt;

&lt;p&gt;In this article, I have come up with the 6 best frontend communities you should join in 2023. So without further ado, let's get started.&lt;/p&gt;

&lt;h2&gt;
  
  
  Best Frontend Developer Communities
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Frontend Developers
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cOEsbPRl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f0mexsr4un69zibd5hwb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cOEsbPRl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f0mexsr4un69zibd5hwb.png" alt="Frontend Developers" width="800" height="520"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://frontenddevelopers.org/"&gt;Frontend Developers&lt;/a&gt; is a great Discord community of Frontend Developers. With more than 27k members in August 2023, it's one of the best online communities for frontend devs.&lt;/p&gt;

&lt;p&gt;The good thing about Frontend Developers is that the community is focused more on general frontend development and not on any specific frontend framework or tech stack. Therefore, all frontend devs can derive value at least some value from it.&lt;/p&gt;

&lt;p&gt;The community has channels for core frontend technologies - HTML, CSS, JavaScript, TypeScript, and PHP. It is more generous on the tooling part having channels for major frontend frameworks like React, Vue, Angular, and Svelte.&lt;/p&gt;

&lt;p&gt;Not only this, but it also has a separate design category with channels for UI/UX design and animation. If you are a frontend developer, I see no reason for you to not join this community.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. WeLearnJS
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://learnjs.slack.com/ssb/redirect"&gt;WeLearnJS&lt;/a&gt; is a slack community of JavaScript developers with more than 13,000 members as of August 2023.&lt;/p&gt;

&lt;p&gt;Their slack workspace has a total of 10 channels including &lt;em&gt;#angular-talk&lt;/em&gt;, &lt;em&gt;#react-talk&lt;/em&gt;, and &lt;em&gt;#vuejs-talk&lt;/em&gt; to share resources, roadmaps, guides, etc., and ask questions relating to these technologies.&lt;/p&gt;

&lt;p&gt;Apart from that, the workspace also has a &lt;em&gt;#chat-room&lt;/em&gt; channel for random talks, &lt;em&gt;#codetalk&lt;/em&gt; for getting any kind of help related to code issues, a very active &lt;em&gt;#jobs&lt;/em&gt; channel to inform you about the latest job postings, and also &lt;em&gt;#server-side-talk&lt;/em&gt; to discuss everything about the backend.&lt;/p&gt;

&lt;p&gt;The community has more than 12k members so there will also be someone who will read your messages and you can use the community to share your projects, and content, and become friends with other JavaScripters.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Reactiflux
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://discord.gg/reactiflux"&gt;Reactiflux&lt;/a&gt; is an online Discord community of React developers with a massive size of more than 220,000 members as of August 2023. The community is very niche focused and it's everything about React.&lt;/p&gt;

&lt;p&gt;Currently, it is divided into 10 different categories:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Welcome&lt;/strong&gt; - This category is all about welcoming new members, telling them about the rules of the server, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Need Help&lt;/strong&gt; - This category has multiple help channels for asking for help react, styling, js, backend, GraphQL, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;React General&lt;/strong&gt; - This category has channels for general talk about React, testing, tooling, internals, accessibility, internationalization, and a forum for asking questions related to React.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Promotions and Events&lt;/strong&gt; - This category includes promotional channels to share your projects and writings, &lt;strong&gt;#events&lt;/strong&gt;, and &lt;strong&gt;#jobs&lt;/strong&gt; channels to share information about various React events and the latest React job postings. Apart from that, there's also a #q-and-a channel for monthly “q and a” sessions of the community.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Communities&lt;/strong&gt; - This category is a little off-topic but still very useful. It has a channel to discuss longform blogs, books, etc, a tech forum for asking questions, and a Twitter feed channel with lots of tweets related to React posted by the Reactiflux bot. Apart from that &lt;strong&gt;#jobs-advice&lt;/strong&gt;, &lt;strong&gt;#resume-review&lt;/strong&gt;, and &lt;strong&gt;#code-review&lt;/strong&gt; channels will be very useful for you if you are seeking a job. Finally, there's a &lt;strong&gt;#content-creators&lt;/strong&gt; channel to share your process and work-in-progress if you are a content creator, and 3 other channels, namely, &lt;strong&gt;#general-tech&lt;/strong&gt;, &lt;strong&gt;#functional-programming&lt;/strong&gt;, &lt;strong&gt;#ui-ux-design&lt;/strong&gt; for general discussions around the same topics.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Social&lt;/strong&gt; - This category is all about making friends and finding like minded people to discuss books, music, gaming, fitness, sports, movies, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Libraries&lt;/strong&gt; - This category is for discussion around various useful React libraries like React Router, Redux, React Bootstrap, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tools&lt;/strong&gt; - This category has 4 channels - &lt;strong&gt;#webpack&lt;/strong&gt;, &lt;strong&gt;#gatsby&lt;/strong&gt;, &lt;strong&gt;#typescript&lt;/strong&gt;, and &lt;strong&gt;#next-js&lt;/strong&gt; to hold discussions around these tools.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reactiflux&lt;/strong&gt; - This category is not about the community but about Reactiflux itself. This includes channels for moderation, suggestion, changelog, and a #thanks channel to say thanks to someone who helped you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Archived&lt;/strong&gt; - This category includes all the archived channels.&lt;/p&gt;

&lt;p&gt;If you are a React developer or thinking to become one, the first thing you should do is join this community server.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Emberjs
&lt;/h3&gt;

&lt;p&gt;This is the official discord server for &lt;a href="https://discord.gg/f4DkyWSskE"&gt;Emberjs&lt;/a&gt;, a JavaScript framework. The community channels have lots of categories, I'll summarise the key ones in this article:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Discord Onboarding and Admin&lt;/strong&gt; - These are 2 different categories for onboarding new members and admin tasks like announcements and ember jobs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Community Chat&lt;/strong&gt; - This is the main category of this Discord community and has a long list of channels for almost everything related to development. There are obviously a few ember-related channels like &lt;strong&gt;#ember-cli&lt;/strong&gt;, &lt;strong&gt;#ember-data&lt;/strong&gt;, &lt;strong&gt;#ember-engines&lt;/strong&gt;, etc. Apart from that this category also holds channels for lots of development topics like auth, animation, backend, CSS, design, docker, forms, jamstack, typescript, testing, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Working on Ember&lt;/strong&gt; - This category is for developers who are working on Ember and has various channels for the same like - &lt;strong&gt;#dev-ember-cli&lt;/strong&gt;, &lt;strong&gt;#dev-ember-js&lt;/strong&gt;, &lt;strong&gt;#dev-ember-engines&lt;/strong&gt;, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ember Addons&lt;/strong&gt; - This is the discussion category around various addons to ember, like Ember Bootstrap, Ember Font Awesome, Ember Leaflet, Ember Redux, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ember Events&lt;/strong&gt; - This category is for various conferences, fests, and other events related to Ember.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Off Topic&lt;/strong&gt; - This is the fun community category with various off topic channels like music, games, career, tv-shows, books, career advice etc.&lt;/p&gt;

&lt;p&gt;This is a great community for all the Ember developers out there and if you are an Ember developer, join it asap.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Vue Land
&lt;/h3&gt;

&lt;p&gt;Similar to the last Ember community, &lt;a href="https://discord.gg/vue"&gt;Vue Land&lt;/a&gt; is the official Discord server of Vue.js with more than 120,000 members as of August 2023.&lt;/p&gt;

&lt;p&gt;The community has 6 main categories:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Vue Land&lt;/strong&gt; - This is the category for onboarding new members and for admin tasks like announcements.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Vue Community&lt;/strong&gt; - This is the category for the community with various channels to share your projects, writings, jobs, events, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Code Help&lt;/strong&gt; - Are you stuck on a problem or having a hard time solving an issue? This is your place to get help with all the things related to Vue and code. This category has multiple channels for various topics. Ask questions on Vue, Vue Router, JavaScript, TypeScript, Backend, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Discussions&lt;/strong&gt; - This category includes various channels to discuss general Vue, best practices, and random things.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tools&lt;/strong&gt; - This category is for discussion around various tools and their implementation with Vue, like storybook, testing, eslint, vitepress, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Languages&lt;/strong&gt; - This category contains channels for various languages Chinese, Dutch, Hindi, French, German, Finnish, etc. Find your language, join the channel and start the discussion.&lt;/p&gt;

&lt;p&gt;Again, join this Discord server if you are a Vue.js developer.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Kevin Powell Community
&lt;/h3&gt;

&lt;p&gt;Many of you may know Kevin Powell from his YouTube channel with a lot of amazing content on CSS. He also has a &lt;a href="https://discord.gg/Bg4CpecYfz"&gt;Discord server&lt;/a&gt; which is filled with the majority of Frontend developers.&lt;/p&gt;

&lt;p&gt;There are 4 main categories in this community server:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Information&lt;/strong&gt; - This category is all about welcoming new people, Kevin's YouTube feed, announcements, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Community&lt;/strong&gt; - The community category is for the members to have a general conversation, share memes, self promotion etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dev Help&lt;/strong&gt; - This category is for asking for help related to HTML/CSS, JavaScript, Accessibility, Backend, Linux, Feedback, and sharing resources and tips and tricks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Design Help&lt;/strong&gt; - This category is for people to get feedback on their UI/UX and ask questions about UI/UX in general.&lt;/p&gt;

&lt;p&gt;These were the main categories in the server. Apart from them, there are also categories for voice chat, gaming, live stream, and archive channels.&lt;/p&gt;

&lt;p&gt;If you are a frontend developer who enjoys building great UI and designs, you should join this community. As of August 2023, it has a total of 28K members.&lt;/p&gt;

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

&lt;p&gt;Here comes the end of our best Discord communities for Frontend Developers. I hope you would have found some great and interesting communities to join. I have shared both general Frontend communities and the ones focused on specific frameworks.&lt;/p&gt;

&lt;p&gt;Find the ones relevant to you, join them, make friends and have fun. If you have any questions or want to connect with me, check out my Twitter and Blog.&lt;/p&gt;

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

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>frontend</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Frontend Devs: What are the favorite tools from your daily workflow?</title>
      <dc:creator>Ashutosh Mishra</dc:creator>
      <pubDate>Mon, 21 Aug 2023 11:39:10 +0000</pubDate>
      <link>https://dev.to/ashutoshmishra/frontend-devs-what-are-the-favorite-tools-from-your-daily-workflow-39j7</link>
      <guid>https://dev.to/ashutoshmishra/frontend-devs-what-are-the-favorite-tools-from-your-daily-workflow-39j7</guid>
      <description>&lt;p&gt;Hello, all frontend developers. I am curious what tools do you use in your daily workflow and how do you benefit from them?&lt;/p&gt;

&lt;p&gt;It could be anything a Chrome extension, VS Code Extension, maybe some AI Code writer, whatever you can't live without.&lt;/p&gt;

&lt;p&gt;Please tell me in the comments. I am curious to hear your answers.&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>frontend</category>
      <category>career</category>
      <category>webdev</category>
    </item>
    <item>
      <title>12 Great Project Ideas for Web and Mobile Developers</title>
      <dc:creator>Ashutosh Mishra</dc:creator>
      <pubDate>Mon, 21 Aug 2023 09:47:00 +0000</pubDate>
      <link>https://dev.to/ashutoshmishra/12-great-project-ideas-for-web-and-mobile-developers-3nfo</link>
      <guid>https://dev.to/ashutoshmishra/12-great-project-ideas-for-web-and-mobile-developers-3nfo</guid>
      <description>&lt;p&gt;Everyone knows that project based learning is best. Endless diving in tutorials might be good initially but if you can’t build a project all by yourself, you have not learned much.&lt;/p&gt;

&lt;p&gt;Real learning requires practice and whether you want to improve your skills or build a portfolio to get a programming job, the best way to practice is to build projects. Now, what projects you should build is another good question that I will try to answer in this article.&lt;/p&gt;

&lt;p&gt;While there’s no universal answer to what kind of projects one should build when learning to code, there are definitely some good project categories and ideas that we are going to discuss in this article.&lt;/p&gt;

&lt;p&gt;These projects will help you upskill yourself and create a portfolio of projects as a web developer or mobile app developer that you can show to your future employers in interviews. So without further ado, let’s get started:&lt;/p&gt;

&lt;h2&gt;
  
  
  Web portfolio projects
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Landing page
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiti3by0nn6yweh37kbeg.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiti3by0nn6yweh37kbeg.png" alt="Landing page"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;All great products on the internet have their own landing page. As a web developer, knowing how to build great landing pages is the most basic thing. This would require you to know how to build responsive websites and websites that have good design.&lt;/p&gt;

&lt;p&gt;Landing pages are static so even if you just know HTML and CSS, you can come up with beautiful landing pages that demonstrate the product best. You can look up Frontend Mentor for landing page ideas.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. API powered website
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqa5qua7hr2ib5baw0171.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqa5qua7hr2ib5baw0171.png" alt="API powered website"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Most projects consume some API and if you are serious about building a career as a programmer, you must know how to consume APIs to build better projects.&lt;/p&gt;

&lt;p&gt;There are endless ideas that you can make real with APIs. From fun Pokémon projects to Music streaming apps to AI projects(which will discuss later in the article) to whatnot, your creativity is the only limit to what you can build.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Clone website
&lt;/h3&gt;

&lt;p&gt;A Clone website could be of any popular websites out there or the ones that you like and use the most. It could be anything like Facebook, YouTube, Instagram, Twitter, Amazon, etc., or even the not so popular ones given that they are somewhat complex to build.&lt;/p&gt;

&lt;p&gt;If you can create a clone of such websites, it demonstrates that you can convert good designs into good code. Find what website you want to clone and start building. If you want to take it a step further, create a full-stack clone application with a frontend, API, and database.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. CRUD application
&lt;/h3&gt;

&lt;p&gt;Most websites have CRUD functionality enabled. CRUD operations allow users to create, read, update, and delete data. Blogs, e-commerce, social media, educational platforms, productivity apps, etc. all have some sort of CRUD functionality enabled.&lt;/p&gt;

&lt;p&gt;There are lots of good project ideas under this category like a TO-DO list, Notes App, Chat App, E-Commerce, Social Media website, etc that you can build.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. AI powered website
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fglfg3ya1k3fvmze0p4uv.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fglfg3ya1k3fvmze0p4uv.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;AI is booming in 2023 and the best part is that you don’t necessarily need advanced artificial intelligence knowledge to build AI projects. You can build something great on top of great AI APIs available on the internet like Open AI API etc.&lt;/p&gt;

&lt;p&gt;Having an AI project in your portfolio is a great step to show your employers that you care about the latest technological developments and can make your way to learning the required skills.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Full Stack unique project
&lt;/h3&gt;

&lt;p&gt;This is the sum total of all points we have discussed above. You have built landing pages, API-powered web apps, Clone web apps, CRUD apps, and maybe AI-powered web apps. Now, you have to combine all this and build a unique project. Here you will create a fully functional full-stack project along with a separate landing page. If you can also add AI to it, that would be an extra bonus.&lt;/p&gt;

&lt;p&gt;This project should ideally be something you can relate to, an idea you find interesting, or a solution to a problem that you are facing. Once you have finalized the idea, brainstorm and document all the features that you want to add to the web app.&lt;/p&gt;

&lt;p&gt;Now, you should start the building process, there are three steps to it:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;API endpoints:&lt;/strong&gt; Create all the API endpoints you need and check if the data is getting saved properly in the database or not.&lt;br&gt;
Frontend: This is where all the users of your web app will land. So try to build the app with good UI/UX that users would love to use.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Landing Page:&lt;/strong&gt; The landing page doesn’t add anything to your product but it’s for the people who will come to use your project. So make sure, you spend a good time on it.&lt;br&gt;
If you can build a big project like this nicely, it would serve as the best certification of your skills.&lt;/p&gt;

&lt;h2&gt;
  
  
  Mobile portfolio projects
&lt;/h2&gt;

&lt;p&gt;We have already discussed web projects and most of those project ideas can also be used in the context of apps like building a clone app, CRUD app, AI app, etc. But for this section, we are going to discuss specific project examples so that after you finish reading this article, you will have both specific ideas and broad categories that you can fit your projects under.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. ECommerce app
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fowh3hhotxu1bv5idcbs2.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fowh3hhotxu1bv5idcbs2.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;ECommerce is rocking both on the web and mobile and we can’t ignore the massive size of this industry. Knowing how to build and maintain e-commerce apps is going to help you a lot as a mobile app developer.&lt;/p&gt;

&lt;p&gt;To begin with, you can either clone an existing e-commerce app like Amazon, etc or you can build your own from scratch. Irrespective of what you choose, let’s see some key features that you must add to your app:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Search for a product&lt;/li&gt;
&lt;li&gt;Add to cart and checkout&lt;/li&gt;
&lt;li&gt;Add your own products&lt;/li&gt;
&lt;li&gt;Past purchases&lt;/li&gt;
&lt;li&gt;Rate and review products&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Diet tracker app
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy3pw37rm79gegxi6tgnm.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy3pw37rm79gegxi6tgnm.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Diet Tracker app is an app with lots of potential. You can start this as a simple food logging app and eventually slowly make it bigger and better. Let’s see some features that you can add to this app, sooner or later:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Food logging&lt;/li&gt;
&lt;li&gt;Find nutrients by searching the name of a recipe&lt;/li&gt;
&lt;li&gt;Diet plan for specific fitness goals&lt;/li&gt;
&lt;li&gt;Weight tracking&lt;/li&gt;
&lt;li&gt;Water reminder&lt;/li&gt;
&lt;li&gt;Progress tracking&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Personal finance app
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff4tqt91y1njwzm6z9vbm.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff4tqt91y1njwzm6z9vbm.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Managing finances is a gruesome task and what’s a better way to simplify it than with an app? Let’s discuss some features this app could have:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Record income and expenses&lt;/li&gt;
&lt;li&gt;Different categories for income and expenses&lt;/li&gt;
&lt;li&gt;Can give tags to a transaction&lt;/li&gt;
&lt;li&gt;Budget planning&lt;/li&gt;
&lt;li&gt;Charts and graphs to view the cash flow, income, and expenses&lt;/li&gt;
&lt;li&gt;Can automate monthly income and fixed expenses&lt;/li&gt;
&lt;li&gt;Track your investments&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;While there’s no end to what you can add to this app, even if you implement the above features, that would make this app a solid project in your portfolio.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Movie review app
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp9stedl52mqwp20vtde4.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp9stedl52mqwp20vtde4.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Apps like IMDb are really popular and fun to build. You have to create a similar app in this section and make sure that you definitely add the following features to it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Search for a movie&lt;/li&gt;
&lt;li&gt;Rate a movie&lt;/li&gt;
&lt;li&gt;Write review&lt;/li&gt;
&lt;li&gt;Read existing reviews&lt;/li&gt;
&lt;li&gt;Follow tags for various genres&lt;/li&gt;
&lt;li&gt;Read the description, cast, release date, budget, collection, etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;While these features would be interesting to implement, don’t forget to differentiate yourself wherever you can. For instance, you can create a niche movie app like Sci-Fi, Comedy, Action, etc.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Photo editing app
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe7k4rzy9181t5goselfj.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe7k4rzy9181t5goselfj.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Unlike other apps mentioned in this section, the Photo editing app is a little different and it will help to diversify the project categories in your portfolio. So, let’s see some features that you can add to the project:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Enhancement options like contrast, brightness, etc.&lt;/li&gt;
&lt;li&gt;Create a collage&lt;/li&gt;
&lt;li&gt;Add borders and frames&lt;/li&gt;
&lt;li&gt;Filters like Grayscale, Lighten, Darken, etc.&lt;/li&gt;
&lt;li&gt;Reduce file size&lt;/li&gt;
&lt;li&gt;Remove background&lt;/li&gt;
&lt;li&gt;AI enhancement&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  6. Social networking app
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2992pl1u3jmr5dwfyag4.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2992pl1u3jmr5dwfyag4.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Social Networking apps are everyone’s favourite and have a bright future. Building one such project will give your skills and portfolio great improvement and help you shine in front of your employer.&lt;/p&gt;

&lt;p&gt;Let’s see some features that you can add to your app:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create posts with text and images&lt;/li&gt;
&lt;li&gt;Comment on other people’s posts&lt;/li&gt;
&lt;li&gt;Like/Upvote and Bookmark posts&lt;/li&gt;
&lt;li&gt;Follow other people based on interests&lt;/li&gt;
&lt;li&gt;Personalised feed&lt;/li&gt;
&lt;li&gt;AI-generated posts and images&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The AI-generated posts and images are just an additional feature to spark up things that you can consider adding while the rest of the features are basic and you must add them to your project.&lt;/p&gt;

&lt;h2&gt;
  
  
  Wrapping up
&lt;/h2&gt;

&lt;p&gt;Now that the article is going to end, I hope you are filled with endless ideas for your upcoming projects. You have got both idea categories and specific examples that you can build whether you are a web developer or mobile app developer or both.&lt;/p&gt;

&lt;p&gt;Make sure to spend good time on the user interface and user experience of these projects as they should be good enough to be used by real users, great design and experience is the key to acquiring more users to your users.&lt;/p&gt;

&lt;p&gt;I hope you enjoyed this article, let me know which project are you going to choose to start your journey. Good luck!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>programming</category>
      <category>mobile</category>
    </item>
    <item>
      <title>20 Essential Backend Tools For Developers</title>
      <dc:creator>Ashutosh Mishra</dc:creator>
      <pubDate>Sat, 19 Aug 2023 09:15:11 +0000</pubDate>
      <link>https://dev.to/ashutoshmishra/20-essential-backend-tools-for-developers-3l9n</link>
      <guid>https://dev.to/ashutoshmishra/20-essential-backend-tools-for-developers-3l9n</guid>
      <description>&lt;p&gt;There are two aspects of a website - frontend and backend. Frontend deals with everything that happens on the screen while Backend development involves everything that happens behind the screen. It involves setting up the server, database, APIs, etc., and building and maintaining the infrastructure that powers your web application and so on.&lt;/p&gt;

&lt;h2&gt;
  
  
  What are the top Backend Development Tools?
&lt;/h2&gt;

&lt;p&gt;We have categorised the further part of the article into multiple sections, covering programming languages, frameworks, databases, containerisation, and backend hosting services to give you a better and more structured understanding of the best backend development tools available in the industry.&lt;/p&gt;

&lt;h2&gt;
  
  
  Programming Languages
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. JavaScript
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--B0Eq82ij--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sk92o4vy5t8lto3saksp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--B0Eq82ij--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sk92o4vy5t8lto3saksp.png" alt="JavaScript" width="800" height="255"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript"&gt;JavaScript&lt;/a&gt; is the language that powers the web. Any fairly complex dynamic website that is packed with features is almost impossible to create without using JavaScript with such ease.&lt;/p&gt;

&lt;p&gt;But the front end is not the only area where JS rocks. With its runtimes like Node.js, Deno, and Bun, JavaScript is also killing in Backend.&lt;/p&gt;

&lt;p&gt;In the &lt;a href="https://survey.stackoverflow.co/2023/#section-most-popular-technologies-web-frameworks-and-technologies"&gt;2023 Stack Overflow Developer Survey&lt;/a&gt;, Node.js even overpowered React in terms of popularity. The best advantage of using runtimes like Node.js is that you don't have to learn a new programming language altogether to work on backend development.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Python
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--gWDRDnde--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ajz1pflcmtmvm5oz3i2c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--gWDRDnde--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ajz1pflcmtmvm5oz3i2c.png" alt="Python" width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.python.org/"&gt;Python&lt;/a&gt; is one of the most popular programming languages in the world. According to the &lt;a href="https://survey.stackoverflow.co/2023/#section-most-popular-technologies-programming-scripting-and-markup-languages"&gt;Stack Overflow Developer Survey 2023&lt;/a&gt;, it was the 3rd most used programming language. Developers love Python for its easy syntax and diverse use cases.&lt;/p&gt;

&lt;p&gt;It can be used in Web Development, Data Analysis, Machine Learning, the Internet of Things(IoT), and so on.&lt;/p&gt;

&lt;p&gt;When it comes to backend development, Python has a bunch of frameworks with Django and Flask leading the way and making Python a really useful language for backend developers.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. PHP
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fD0xjj83--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/anv6gdnd79z3b8oq9b0i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fD0xjj83--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/anv6gdnd79z3b8oq9b0i.png" alt="PHP" width="800" height="312"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.php.net/"&gt;PHP&lt;/a&gt; is a language that came into existence in the days of the early internet. It has made its way into the codebase of popular websites ever since.&lt;/p&gt;

&lt;p&gt;It's widely popular for building websites and web applications and has a great number of frameworks that help developers build great websites with Laravel being the most popular.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Java
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VMXH0ObK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dl82lc0br9sfi8faxi15.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VMXH0ObK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dl82lc0br9sfi8faxi15.png" alt="Java" width="800" height="274"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.java.com/en/"&gt;Java&lt;/a&gt;, born in the early 90s is one of the most popular programming languages when it comes to building backend applications. It's a high-level, object-oriented programming language that can be used for a variety of purposes like creating desktop and mobile apps, data processing, backend development, and more.&lt;/p&gt;

&lt;p&gt;Just like other languages in the list, Java also offers a wide number of frameworks for building robust backend applications. Here, Spring is the most popular backend framework used by developers.&lt;/p&gt;

&lt;h2&gt;
  
  
  Frameworks
&lt;/h2&gt;

&lt;h3&gt;
  
  
  5. Express.js
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--1iy9x2CH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dt9tmh1ag0l9bccsm3k4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--1iy9x2CH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dt9tmh1ag0l9bccsm3k4.png" alt="Express.js" width="800" height="357"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://expressjs.com/"&gt;Express.js&lt;/a&gt; is a very popular Node.js framework used for building web applications. It provides developers with a proper set of tools on top of Node.js that makes it easier for them to build scalable backend applications.&lt;/p&gt;

&lt;p&gt;It also comes with a vast library of middleware and plugins that make it easy to extend the framework's capabilities. Express along with MongoDB, React, and Node.js also forms that popular MERN stack often used by developers and corporations to build modern full-stack applications.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Django
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VW0A1nDW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8ybb6ef55scqb0tv29lw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VW0A1nDW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8ybb6ef55scqb0tv29lw.png" alt="Django" width="800" height="599"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.djangoproject.com/"&gt;Django&lt;/a&gt; is one of the best and most popular backend web frameworks that Python offers. It's a highly secure web framework that can be used to build a wide variety of websites like content management systems, news websites, social media, and more.&lt;/p&gt;

&lt;p&gt;Developed between 2003-2005, Django was open-sourced in July 2005 and it has been continuously growing and improving ever since.&lt;/p&gt;

&lt;h3&gt;
  
  
  7. Flask
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--b2-JvBRU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/73g2vudo8ae3r3rj6451.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--b2-JvBRU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/73g2vudo8ae3r3rj6451.png" alt="Flask" width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://flask.palletsprojects.com/en/2.2.x/"&gt;Flask&lt;/a&gt; is another really popular web framework of Python after Django. It's a microframework created by Armin Ronacher and initially released in 2010. Flask is free from boilerplate code or dependencies which makes it really attractive option for newbie backend developers to learn.&lt;/p&gt;

&lt;p&gt;It only comes with the essential components of backend development like routing, requests, sessions, etc. For more functionality, you have to either use an extension or write a custom module.&lt;/p&gt;

&lt;p&gt;This approach helps in keeping Flask lightweight and avoiding boilerplate code that is not being used.&lt;/p&gt;

&lt;h3&gt;
  
  
  8. Laravel
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ng8eLFBa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/chuwk0kmlufrmdh620yq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ng8eLFBa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/chuwk0kmlufrmdh620yq.png" alt="Laravel" width="800" height="274"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://laravel.com/"&gt;Laravel&lt;/a&gt; is the most popular PHP framework that provides developers with a rich set of features like routing, middleware, authentication, and more to help them build efficient backend web applications.&lt;/p&gt;

&lt;p&gt;Laravel has an intuitive syntax that is easy to pick up by backend developers. It is also highly customisable and has a range of configuration options available making Laravel a great option for projects that need a high degree of flexibility.&lt;/p&gt;

&lt;p&gt;Laravel also has a huge community of developers that contribute to its development and it can be used with a variety of frontend frameworks and database management systems.&lt;/p&gt;

&lt;h3&gt;
  
  
  9. Spring
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--DENT32OI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wl2dg6t6quxthmwntnjt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--DENT32OI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wl2dg6t6quxthmwntnjt.png" alt="Spring" width="800" height="228"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://spring.io/"&gt;Spring&lt;/a&gt; is one of the most popular Java backend frameworks used to build enterprise-level applications. It was originally written by Rod Johnson and launched in 2001.&lt;/p&gt;

&lt;p&gt;Spring is a lightweight framework that provides support to various other frameworks like Struts, Hibernate, Tapestry, etc, and is used on millions of computers today.&lt;/p&gt;

&lt;p&gt;The framework also provides a bunch of unique features like spring web service, data access framework, etc. that make Spring a great choice for any backend developer to learn.&lt;/p&gt;

&lt;h2&gt;
  
  
  Database
&lt;/h2&gt;

&lt;h3&gt;
  
  
  10. MySQL
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--yAju80LO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4l8hslnhm0t1qk9ur9au.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--yAju80LO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4l8hslnhm0t1qk9ur9au.png" alt="MySQL" width="800" height="389"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.mysql.com/"&gt;MySQL&lt;/a&gt; is a popular open-source relational database management system heavily used in the industry for building web applications. It is appreciated in the developer community for its speed and reliability.&lt;/p&gt;

&lt;p&gt;MySQL is also a highly scalable database that can be scaled up or down depending on the needs of your application.&lt;/p&gt;

&lt;p&gt;Along with Linux, Apache, and PHP, MySQL is also part of the popular LAMP stack.&lt;/p&gt;

&lt;h3&gt;
  
  
  11. PostgreSQL
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--2yCXkS8_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/50xiw0kvi13xtfeicjrw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--2yCXkS8_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/50xiw0kvi13xtfeicjrw.png" alt="PostgreSQL" width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.postgresql.org/"&gt;PostgreSQL&lt;/a&gt; is an open-source relational database management system that was born in 1996. It can be used to manage a wide range of workloads, like single computers, data warehouses, and web applications with several concurrent users.&lt;/p&gt;

&lt;p&gt;PostgreSQL is ACID-compliant ensuring that all the database transactions are reliably processed. It also includes support for advanced capabilities like full-text search, and spatial indexing. PostgreSQL supports all the major operating systems and a variety of programming languages like C, C++, Java, and Python.&lt;/p&gt;

&lt;h3&gt;
  
  
  12. MongoDB
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--JwWA3Krm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/owrhgqmvyr449kflgujo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JwWA3Krm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/owrhgqmvyr449kflgujo.png" alt="MongoDB" width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.mongodb.com/"&gt;MongoDB&lt;/a&gt; is one of the most preferred NoSQL database management systems on the internet. It stores data in a JSON-like format called BSON as documents.&lt;/p&gt;

&lt;p&gt;This makes MongoDB a really flexible database because as a developer it's going to be easier for you to define schemas when storing complex data structures in the database.&lt;/p&gt;

&lt;p&gt;It can be used with multiple languages and frameworks including Python, Java, and Node.js.&lt;/p&gt;

&lt;h3&gt;
  
  
  13. Firebase
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zoBun4AS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xytdrutqfvme7co234dy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zoBun4AS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xytdrutqfvme7co234dy.png" alt="Firebase" width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://firebase.google.com/"&gt;Firebase&lt;/a&gt; is a Google-backed backend development platform that helps developers build and ship apps for Android, iOS, and the Web. It was founded in 2011 with its first product, Realtime Database.&lt;/p&gt;

&lt;p&gt;It has tremendously evolved over the years and now provides a wide range of tools such as Authentication, Realtime Database, Hosting, Cloud Functions, Cloud Firestore, Cloud Storage, Analytics, and much more. Owing to this, it has become one of the best backend development tools in modern times.&lt;/p&gt;

&lt;p&gt;Firebase is used by popular companies like Alibaba, The New York Times, The Economist, Lyft, Trivago, Gameloft, Duolingo, and thousands of developers on their projects.&lt;/p&gt;

&lt;h3&gt;
  
  
  14. Supabase
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--20O0K2Y0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fti8xjtj2zkarqa11x8d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--20O0K2Y0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fti8xjtj2zkarqa11x8d.png" alt="Supabase" width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://supabase.com/"&gt;Supabase&lt;/a&gt; is an open-source Firebase alternative and a backend development tool that helps you quickly build backend for your projects.&lt;/p&gt;

&lt;p&gt;It comes with all the necessary backend features like authentication, database, file storage, etc to help you build and scale your application to millions of users.&lt;/p&gt;

&lt;p&gt;As a backend development tool, it frees your time and mental space by taking care of all your backend stuff and allowing you to spend more time on business and users' needs.&lt;/p&gt;

&lt;h2&gt;
  
  
  Containerisation
&lt;/h2&gt;

&lt;h3&gt;
  
  
  15. Docker
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fWWf0mB5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/82kuccb99hl75yatrlm8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fWWf0mB5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/82kuccb99hl75yatrlm8.png" alt="Docker" width="800" height="270"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.docker.com/"&gt;Docker&lt;/a&gt; is a set of platform-as-a-service products that allows you to build, deploy, and run your applications inside containers. Containers are isolated packages with their own software and config files etc. They can communicate with each other through well-defined channels and can be run across platforms that support Docker, including operating systems like macOS, Linux, and Windows.&lt;/p&gt;

&lt;p&gt;Docker containers are lightweight and even a single virtual machine can be used to run multiple containers together. Overall, Docker is a great backend development tool for any modern developer to look into.&lt;/p&gt;

&lt;h3&gt;
  
  
  16. Kubernetes
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PGmV8z----/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2ii50my4elez2ks6jpqy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PGmV8z----/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2ii50my4elez2ks6jpqy.png" alt="Kubernetes" width="800" height="207"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://kubernetes.io/"&gt;Kubernetes&lt;/a&gt;, also known as K8s, is an open-source container orchestration technology for automating the deployment, scaling, and administration of containerized applications. It was created by Google and is now maintained by the Cloud Native Computing Foundation (CNCF).&lt;/p&gt;

&lt;p&gt;Kubernetes provides a strong framework for container management, ensuring that applications run consistently and resiliently. K8s also takes care of scaling your application and supports a number of features like automatic bin packing, self-healing, strong orchestration, and load balancing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Backend Hosting Services
&lt;/h2&gt;

&lt;h3&gt;
  
  
  17. Render
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5x_MCF-B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bze81v6pmw6rxzavw6a1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5x_MCF-B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bze81v6pmw6rxzavw6a1.png" alt="Render" width="800" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://render.com/"&gt;Render&lt;/a&gt; is a cloud-based platform that simplifies the process of deploying and hosting web applications. It positions itself as a Heroku alternative with easy usage, better pricing, and simple UI.&lt;/p&gt;

&lt;p&gt;It has a set of powerful features like zero-downtime deployments, automatic SSL, and custom domains that makes deploying applications a huge relief.&lt;/p&gt;

&lt;p&gt;Render supports a wide range of programming languages, frameworks, and databases and also offers a generous free tier for developers to get started quickly and scale as their needs grow.&lt;/p&gt;

&lt;h3&gt;
  
  
  18. Fly.io
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--X5NmkpUA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9ne9wyykxu1zmt6mu8h9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--X5NmkpUA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9ne9wyykxu1zmt6mu8h9.png" alt="Fly.io" width="800" height="387"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://fly.io/"&gt;Fly.io&lt;/a&gt; is a Platform as a Service(PaaS) hosting provider for your backend applications. It helps you run your backend servers and databases close to the users without DevOps.&lt;/p&gt;

&lt;p&gt;Fly.io runs your applications on top of actual physical servers all around the world with the main focus on deploying the apps as close to the end users.&lt;/p&gt;

&lt;p&gt;It provides a range of features like automatic SSL, custom domains, and built-in monitoring and supports a variety of programming languages and frameworks, including Node.js, Ruby, Python, and Go.&lt;/p&gt;

&lt;h3&gt;
  
  
  19. AWS
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--mK9UBedu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2ra5bpxqinx7bkkn6nbw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mK9UBedu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2ra5bpxqinx7bkkn6nbw.png" alt="AWS" width="800" height="362"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/"&gt;Amazon Web Services(AWS)&lt;/a&gt; is a cloud computing platform developed by Amazon in 2006. It is one of the most popular cloud computing platforms currently in the world.&lt;/p&gt;

&lt;p&gt;It provides you with a range of tools and services to build, deploy, and scale your applications. AWS is designed for scalability and can be used by developers to scale their apps up and down whenever the need arises.&lt;/p&gt;

&lt;p&gt;It also provides powerful APIs like Amazon S3 and Amazon DynamoDB to integrate into your projects.&lt;/p&gt;

&lt;h3&gt;
  
  
  20. Google Cloud
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--InOqO4BB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oqaumz4hdwfg6x31gje8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--InOqO4BB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oqaumz4hdwfg6x31gje8.png" alt="Google Cloud" width="800" height="380"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Developed by Google in 2008, &lt;a href="https://cloud.google.com"&gt;Google Cloud&lt;/a&gt; is a cloud computing platform that provides developers with all the necessary tools to build, deploy, and scale their applications with ease.&lt;/p&gt;

&lt;p&gt;This includes virtual machines, storage, networking, support for machine learning and data analytics, and so on.&lt;/p&gt;

&lt;p&gt;Google Cloud supports a long list of programming languages and frameworks including Python, Node.js, and Java. It also provides an intuitive console for developers of various skill levels to help solve issues when they arise.&lt;/p&gt;

&lt;h2&gt;
  
  
  Parting Thoughts
&lt;/h2&gt;

&lt;p&gt;With this, our article on the best backend development tools has come to an end. We have provided you with a huge list of tools with proper categories.&lt;/p&gt;

&lt;p&gt;Now go and explore these tools and tell us which one of them you like the most or tell us if there is some other backend development tool that you like and use but were missing from this list.&lt;/p&gt;

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

</description>
      <category>webdev</category>
      <category>backend</category>
      <category>beginners</category>
      <category>programming</category>
    </item>
    <item>
      <title>9 Step Solution to Escape Tutorial Hell Permanently</title>
      <dc:creator>Ashutosh Mishra</dc:creator>
      <pubDate>Fri, 18 Aug 2023 11:08:35 +0000</pubDate>
      <link>https://dev.to/ashutoshmishra/9-step-solution-to-escape-tutorial-hell-permanently-4b69</link>
      <guid>https://dev.to/ashutoshmishra/9-step-solution-to-escape-tutorial-hell-permanently-4b69</guid>
      <description>&lt;p&gt;Tutorial Hell is real and it's one of humanity’s worst known sufferings. You can easily find lots of beginner developers burning, out there, in the fire of tutorials.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--1xScxeAa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rhrxdw0j8xorde2lwrbb.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--1xScxeAa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rhrxdw0j8xorde2lwrbb.gif" alt="Tutorial Hell" width="480" height="270"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Fortunately, there's a way out. You can work your way up on the ladder of self learning and project building and this will help you escape tutorial hell. Let me explain how can we do so.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to really escape Tutorial Hell?
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Build atomic projects
&lt;/h3&gt;

&lt;p&gt;Great projects are not finished in a day, they are built day by day in small proportions. And you have to do the same if you want to become a great programmer - DON'T BUILD A BIG PROJECT ALL AT ONCE&lt;/p&gt;

&lt;p&gt;Initially, what you want is to build a super small project or a bunch of super small projects. These are what I call Atomic Projects.&lt;/p&gt;

&lt;p&gt;Try to think of a big website, let's say YouTube.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--H4EX7aRV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jfm2p4gd4xi4u886ph81.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--H4EX7aRV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jfm2p4gd4xi4u886ph81.jpg" alt="A sample YouTube screenshot" width="800" height="370"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If we try to break the above image into various small projects, we will see that it has:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A top navbar with logo, search button, notification icon, etc.&lt;/li&gt;
&lt;li&gt;A left navbar with YouTube premium, Films, Gaming links, etc.&lt;/li&gt;
&lt;li&gt;A topic bar with All, Mixes, Music, JavaScript, etc as topics.&lt;/li&gt;
&lt;li&gt;A big section with links to a total of 8 videos.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each video has its own card like section which includes thumbnail, title, video length, channel name, channel logo, views, and date published.&lt;/p&gt;

&lt;p&gt;In the above list, I gave you ideas for 5 different atomic projects instead of one large project. You can build all of them separately and join them together once finished.&lt;/p&gt;

&lt;p&gt;Also, use the same mental model to break other big projects that you want to build into smaller chunks.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Teach yourself and others
&lt;/h3&gt;

&lt;p&gt;Self-teaching is important. No one else will teach you everything you require. Sometimes teaching yourself also includes teaching others. When you teach something to others, you repeat that concept in your mind which results in a better understanding of it.&lt;/p&gt;

&lt;p&gt;If you're thinking that you are not ready to teach others, you might be wrong. If you are even one step ahead of someone else, you are completely ready to teach them about that extra step.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--S3yv2Lpx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pfbpeanm4q986ufi1x3o.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--S3yv2Lpx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pfbpeanm4q986ufi1x3o.gif" alt="Man saying let me hit you with some knowledge" width="299" height="189"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To teach is to learn twice, if you are teaching someone, you'll have to revisit the concepts and communicate in an easy way, which will also give structure to your understanding of that particular concept.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Give yourself time
&lt;/h3&gt;

&lt;p&gt;Don't try to cover 100 miles in one step. Sometimes things just take time, especially when you are new to programming. You have to give your brain some time to digest concepts.&lt;/p&gt;

&lt;p&gt;If you are trying too hard, you are simply stopping yourself to learn. Take some time and explore other points which I have mentioned in this article. You will find that most of the time those concepts will start to click after that.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Learn to solve bugs
&lt;/h3&gt;

&lt;p&gt;Debugging is a lifesaver. If you take some time to learn about debugging and how to solve errors quickly, how to work with browser dev tools, and use &lt;code&gt;console.log()&lt;/code&gt; often, your suffering will be somewhat reduced.&lt;/p&gt;

&lt;p&gt;No matter how great a developer you become, you will still have bugs. Instead of brooding over writing bug-free code, learn how to solve them quickly.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Stare at your code
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bBky1mjg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jx3n5umwwaanulsu2xty.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bBky1mjg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jx3n5umwwaanulsu2xty.gif" alt="Man staring" width="480" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I know this is what you usually do when you are stuck in tutorial hell but I am not talking about mindlessly looking at your screen. I am talking about thoughtfully staring at your code and thinking &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How does your code work?&lt;/li&gt;
&lt;li&gt;Can you do something better?&lt;/li&gt;
&lt;li&gt;If you are given the chance to write it again, what will you do? etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When you think actively on these questions, your brain forms certain connections and neurons which will help you grasp those concepts and make you a rockstar developer.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Read the documentation
&lt;/h3&gt;

&lt;p&gt;Give reading documentation a try. You might be too attached to watching videos or text tutorials that you can't do anything without them.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---v1c7MOw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fy030uia871w8yow18mc.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---v1c7MOw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fy030uia871w8yow18mc.gif" alt='Cat reading "The Art of Military Strategy"' width="500" height="281"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A baby has to eventually learn to walk on their own, and so do you as a developer. Learn to solve your own problems, learn to build your own projects. Documentation will be your best friend on this journey.&lt;/p&gt;

&lt;p&gt;You can also go back to the videos or blogs to understand certain concepts if docs don't click with you yet. But try to make your learning smoother without getting into tutorial hell.&lt;/p&gt;

&lt;h3&gt;
  
  
  7. Ask for help
&lt;/h3&gt;

&lt;p&gt;Asking for help isn't shameful. We all need it at some point in time. If you are really struggling and nothing else is working, try talking to other developers, especially the ones who are senior to you in terms of knowledge and understanding of the concepts. Professional experience is not necessarily required.&lt;/p&gt;

&lt;p&gt;Create a Twitter, Showwcase, Slack, and Discord account. Join technical communities there and try to connect with developers who can help you solve your problem. Build a genuine connection with them, and ask your questions if they are ready to help you.&lt;/p&gt;

&lt;h3&gt;
  
  
  8. Write Technical Blogs
&lt;/h3&gt;

&lt;p&gt;Coding is important, but can you write a technical article explaining those concepts to others? Writing blogs has innumerable benefits. It helps you better understand the topics you are writing about, build your personal brand, differentiate you from other non-blogging developers, and open the door to various professional opportunities.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--O952qoh7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xz5kv6j3s7kss6az3d8t.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--O952qoh7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xz5kv6j3s7kss6az3d8t.gif" alt="Girl typing something on the computer" width="500" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you know even a single thing in programming, web development, etc. you are perfectly ready to start your own blog. There are various great platforms that will help you get started:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Hackernoon&lt;/li&gt;
&lt;li&gt;Hashnode&lt;/li&gt;
&lt;li&gt;Dev.to&lt;/li&gt;
&lt;li&gt;Showwcase etc&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Don't think much about perfection initially, just post your first blog. You'll learn everything eventually as you write more.&lt;/p&gt;

&lt;h3&gt;
  
  
  9. Make learning a habit
&lt;/h3&gt;

&lt;p&gt;A career in tech = lifelong learning. You cannot survive long enough if you don't like learning. Sooner or later, you have to fall in love with learning to make your journey smoother.&lt;/p&gt;

&lt;p&gt;It may be possible that you are not feeling confident to work on your own projects because you have not understood certain concepts. In that case, go back to the basics and learn those programming concepts again. Once you’re confident, come back to hack your project.&lt;/p&gt;

&lt;h2&gt;
  
  
  May you escape your tutorial hell successfully
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zxAoL6B2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qgcjpwv0agmypcv6zy1g.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zxAoL6B2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qgcjpwv0agmypcv6zy1g.gif" alt="I am rooting for you" width="480" height="359"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You may find this hard initially but as you practice and work more, you will learn how things work and definitely become a great developer.&lt;/p&gt;

&lt;p&gt;I wish you very good luck in your journey of escaping tutorial hell. If you follow the above points seriously, you will most likely get rid of tutorial hell.&lt;/p&gt;

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

</description>
    </item>
    <item>
      <title>5 Best Full Stack Communities to Join in 2023</title>
      <dc:creator>Ashutosh Mishra</dc:creator>
      <pubDate>Thu, 17 Aug 2023 06:04:07 +0000</pubDate>
      <link>https://dev.to/ashutoshmishra/5-best-full-stack-communities-to-join-in-2023-47be</link>
      <guid>https://dev.to/ashutoshmishra/5-best-full-stack-communities-to-join-in-2023-47be</guid>
      <description>&lt;p&gt;Becoming a Full Stack Developer is a great career option in 2022. However, the path is long and could be lonely.&lt;/p&gt;

&lt;p&gt;So, here I am with a list of the 5 best Full Stack communities that will keep you accountable and help you learn together with other fellow developers. So without further ado, let's get started.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. JavaScript Mastery
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://discord.com/invite/kXgwA2C2yB"&gt;JavaScript Mastery&lt;/a&gt; by Adrian Hajdin is one of the best YouTube and Instagram creators on web development and has a great Discord community of more than 23K developers as of August 2023.&lt;/p&gt;

&lt;p&gt;The community is divided into four main categories:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Welcome&lt;/strong&gt; - The welcome category contains channels for announcements, rules, welcoming new members, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Community&lt;/strong&gt; - This is the fun community category with various channels to connect with other developers, talk about PC specifications, find your coding partner, and share your accomplishments with the community.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ask for help&lt;/strong&gt; - This category is to ask for help with your code-related problems. There are channels for HTML/CSS, JavaScript, TypeScript, ReactJS, Material UI, MERN, Web3, PHP, NodeJS, Firebase, and an #other channel.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Career Corner&lt;/strong&gt; - The Career Corner category is to get help and guidance related to career questions. This includes the #projects and #portfolios channels to share your projects and portfolios and the #resumes and #interview-questions channel to share your resume and interesting interview questions.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Learn w/ Leon &amp;amp; Friends
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://discord.com/invite/rnEqca4KhT"&gt;Learn w/ Leon &amp;amp; Friends&lt;/a&gt; by Leon Noel is a great community server of developers. It's also the official server of his 100Devs Bootcamp where he takes people from zero experience to employable MERN stack developers.&lt;/p&gt;

&lt;p&gt;The community is mainly divided into seven different categories:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Start Here&lt;/strong&gt; - This is the category for introductions, welcoming new members, faq, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Learn with Noel&lt;/strong&gt; - This category contains announcements, follow along material, and Leon's live stream notifications.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Help&lt;/strong&gt; - This includes channels for HTML/CSS help, JavaScript help, Node help, General code help (including voice channel), #new-need-help channel to ask questions about 100Devs, and #homework-help for 100Devs students.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Main Channels&lt;/strong&gt; - This category is about asking questions to Leon, general chat, sharing resources, celebrations, mental health, self-promotion, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Getting a Job&lt;/strong&gt; - This includes a #career-advice channel, #resume-portfolio-review to have your resume and portfolio reviewed, and a #job-openings channel for the latest job openings.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hangout&lt;/strong&gt; - Hangout is all about anime, books, memes, pets, gaming, etc.&lt;/p&gt;

&lt;p&gt;As of August 2023, the community already has more than 55K developers and if you are a full stack developer and want to connect with more amazing full-stack devs, join this community asap.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Commit your Code
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://discord.com/invite/DB3sqa6yzZ"&gt;Commit your Code&lt;/a&gt; by Danny Thompson is a developer community with more than 12.5K developers as of August 2023.&lt;/p&gt;

&lt;p&gt;The categories of the Discord server are mainly divided into 3 categories:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Start Here&lt;/strong&gt; - Just like all other servers, this category is all about introductions, welcoming new members, rules, news, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Main Area&lt;/strong&gt; - This is the main category of this server and although it won't have any channel for specific technologies like HTML, CSS, JavaScript, etc., it does have lots of useful channels for the community. This includes channels for general chat, coding questions, advanced level questions, resume feedback, data structure problems and solutions, programming tips, job listings, meetups, open source, DevOps, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Non Dev Subjects&lt;/strong&gt; - This category includes channels for anime, gaming, music, growing online, etc.&lt;/p&gt;

&lt;p&gt;If you are a fullstack developer and want to network with other amazing fullstack developers, Commit your Code is your place.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Nodeiflux
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://discord.com/invite/XG3ta9SAzj"&gt;Nodeiflux&lt;/a&gt; is the sister channel of Reactiflux, the largest chatroom for React developers. &lt;/p&gt;

&lt;p&gt;It's not a full stack community but focused more on Nodejs and backend but I am including this community in the list because most of the other communities are frontend + backend and having a community completely dedicated to Node.js and backend would balance the list.&lt;/p&gt;

&lt;p&gt;There are many categories in this server, but the main two are #general and #community:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;General&lt;/strong&gt; - This category includes channels for general node talk, help node, help js, libraries, ops, general tech, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Community&lt;/strong&gt; - This category focuses more on the community part and has channels for career questions, code review, software reads, and tech reads.&lt;/p&gt;

&lt;p&gt;If you are a Nodejs developer or want to become one, you should definitely check out this community. As of August 2023, Nodeiflux has got more than 13K members.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. SpeakJS
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://discord.com/invite/yerSpeM8A4"&gt;SpeakJS&lt;/a&gt; is a JavaScript community with more than 32K members as of August 2023. This community is the most complete of all the ones I previously mentioned.&lt;/p&gt;

&lt;p&gt;There are 10 main categories on this server:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;General&lt;/strong&gt; - The general category is all about collaboration, code review, study groups, server feedback, jobs, and other general things.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Help&lt;/strong&gt; - This category includes 3 different channels to ask for help.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Libraries and Frameworks&lt;/strong&gt; - This category has a dedicated channel for all popular libraries and frameworks. It includes channels for React, Angular, Vue, Remix, Svelte, JQuery, Gatsby, Rxjs, and NextJS.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Runtimes&lt;/strong&gt; - This includes channels for Node and Deno.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Mobile Apps&lt;/strong&gt; - This category has 2 channels - one for mobile apps and the other for React Native.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Desktop Apps&lt;/strong&gt; - It includes 3 channels - Desktop apps, Electron, and Nwjs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3D and Graphics&lt;/strong&gt; - 3D and Graphics category includes channels for ThreeJS, p5.js, WebGL, and D3js.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tools&lt;/strong&gt; - Tools include channels for GraphQL, TypeScript, Bundlers, and Editors.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Other&lt;/strong&gt; - The Other category includes channels like testing, DevOps, bot dev, game dev, CSS, databases, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Offtopic&lt;/strong&gt; - Offtopic includes gaming, tech, books, health and fitness, and photography.&lt;/p&gt;

&lt;p&gt;Just by looking at the above categories, you get an idea of how diverse this community is. If you are a modern developer, there is no reason for you not to join this community.&lt;/p&gt;

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

&lt;p&gt;The list of the 5 best Full Stack Discord Communities is over, and I hope you’ve found some great and amazing full stack communities to join and network with other developers.&lt;/p&gt;

&lt;p&gt;If you have any questions or want to connect with me, reach out to me on &lt;a href="https://twitter.com/ashutoshmishrae"&gt;X&lt;/a&gt;.&lt;/p&gt;

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

&lt;p&gt;&lt;a href="https://cult.honeypot.io/reads/5-best-full-stack-communities-to-join-in-2022/"&gt;Originally published here.&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>programming</category>
      <category>community</category>
    </item>
    <item>
      <title>React useState() made easy for beginners</title>
      <dc:creator>Ashutosh Mishra</dc:creator>
      <pubDate>Wed, 16 Aug 2023 08:26:53 +0000</pubDate>
      <link>https://dev.to/ashutoshmishra/usestate-made-easy-for-beginners-58o3</link>
      <guid>https://dev.to/ashutoshmishra/usestate-made-easy-for-beginners-58o3</guid>
      <description>&lt;p&gt;The React way of dynamically updating a website’s content is different from Vanilla JavaScript. In JavaScript, we do it by directly manipulating DOM whereas, in React, we have a feature called &lt;code&gt;useState&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;It is one of the built-in hooks in React. It helps us to declare state variables in Functional Components.&lt;/p&gt;

&lt;p&gt;We pass the initial state to the useState hook and in return it gives us a variable with our state value and a function to update the value.&lt;/p&gt;

&lt;p&gt;Now let’s compare both ways (JavaScript and React) with an example.&lt;/p&gt;

&lt;p&gt;Suppose you’ve been given a bag filled with 5 apples and after some time you are given 7 more apples to put into your bag, now how many apples will you have in your bag?&lt;/p&gt;

&lt;p&gt;It's 5+7=12 right?&lt;/p&gt;

&lt;p&gt;Let’s see how we can show this example in both JavaScript and React:&lt;/p&gt;

&lt;h2&gt;
  
  
  The JavaScript Way
&lt;/h2&gt;

&lt;p&gt;I’ve created this repl.it HTML/CSS/JS code template to show this example live, you can access it &lt;a href="https://replit.com/@AshutoshMishr21/JavaScript-update-apples"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  HTML
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="cp"&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;html&amp;gt;&lt;/span&gt;
 &lt;span class="nt"&gt;&amp;lt;head&amp;gt;&lt;/span&gt;
   &lt;span class="nt"&gt;&amp;lt;meta&lt;/span&gt; &lt;span class="na"&gt;charset=&lt;/span&gt;&lt;span class="s"&gt;"utf-8"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
   &lt;span class="nt"&gt;&amp;lt;meta&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"viewport"&lt;/span&gt; &lt;span class="na"&gt;content=&lt;/span&gt;&lt;span class="s"&gt;"width=device-width"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
   &lt;span class="nt"&gt;&amp;lt;title&amp;gt;&lt;/span&gt;replit&lt;span class="nt"&gt;&amp;lt;/title&amp;gt;&lt;/span&gt;
   &lt;span class="nt"&gt;&amp;lt;link&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"style.css"&lt;/span&gt; &lt;span class="na"&gt;rel=&lt;/span&gt;&lt;span class="s"&gt;"stylesheet"&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"text/css"&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
 &lt;span class="nt"&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;
 &lt;span class="nt"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
   &lt;span class="nt"&gt;&amp;lt;div&amp;gt;&lt;/span&gt;
     &lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;Apples&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
     &lt;span class="nt"&gt;&amp;lt;p&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"value"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;5&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
     &lt;span class="nt"&gt;&amp;lt;button&amp;gt;&lt;/span&gt;Update values&lt;span class="nt"&gt;&amp;lt;/button&amp;gt;&lt;/span&gt;
   &lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
   &lt;span class="nt"&gt;&amp;lt;script &lt;/span&gt;&lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"script.js"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
 &lt;span class="nt"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  JavaScript
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;value&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;querySelector&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;.value&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;button&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;querySelector&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;button&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;realValue&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;parseInt&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;value&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;innerHTML&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;updateValue&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
 &lt;span class="nx"&gt;realValue&lt;/span&gt;&lt;span class="o"&gt;+=&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;
 &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;value&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;innerHTML&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;realValue&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nx"&gt;button&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;addEventListener&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;click&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;updateValue&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Code Explanation
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;We’ve created two HTML paragraphs - &lt;em&gt;apples and 5&lt;/em&gt;, added a class called value to 5 to update it later, and created a button called &lt;em&gt;Update values&lt;/em&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In our JavaScript code, We stored the &lt;em&gt;value&lt;/em&gt; class and the button into 2 different variables.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Next we used &lt;code&gt;parseInt()&lt;/code&gt; function to convert the value of our apples into integers and store it into another variable called &lt;em&gt;realValue&lt;/em&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Then we created a function called &lt;em&gt;updateValue&lt;/em&gt;, inside which we first added 7 to the current value of the &lt;em&gt;realValue&lt;/em&gt; variable and assigned this updated &lt;em&gt;realValue&lt;/em&gt; to the HTML value of our &lt;code&gt;value&lt;/code&gt; variable with the help of &lt;code&gt;.innerHTML&lt;/code&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Finally we added the click event listener to our button to call the &lt;em&gt;updateValue&lt;/em&gt; function every time the button gets clicked.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The React Way - useState()
&lt;/h2&gt;

&lt;p&gt;Check out the repl of the same app created with React, &lt;a href="https://replit.com/@AshutoshMishr21/update-apples#src/App.jsx"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  App.js
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;useState&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;react&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;./App.css&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nx"&gt;App&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;

 &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;apples&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;setApples&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;useState&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
 &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;updateApples&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
   &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;setApples&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;apples&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
 &lt;span class="p"&gt;}&lt;/span&gt;
 &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
   &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
     &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Apples&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
     &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;apples&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
     &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;button&lt;/span&gt; &lt;span class="na"&gt;onClick&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;updateApples&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Update Apples&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;button&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
   &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
 &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="nx"&gt;App&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Code Explanation
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;We start with importing React and useState from React.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;apples&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;setApples&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;useState&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The snippet above is the standard way of declaring useState. Here useState gives us a variable called &lt;em&gt;apples&lt;/em&gt; with the value of 5 as initialized under useState function call and another function called &lt;code&gt;setApples&lt;/code&gt; to update the value of apples variable.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Next we declared a function called &lt;code&gt;updateApples&lt;/code&gt; which will be called every time someone clicks our &lt;em&gt;Update Apples&lt;/em&gt; button which is yet to be declared.&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;setApples&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;apples&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;In the above snippet, we return &lt;code&gt;setApples()&lt;/code&gt; function call and add 7 to the apples variable as an argument. This is how the state is updated in useState.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
   &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
     &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Apples&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
     &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;apples&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
     &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;button&lt;/span&gt; &lt;span class="na"&gt;onClick&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;updateApples&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Update Apples&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;button&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
   &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
 &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Now finally we made our return statement. We returned a &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; element with 2 paragraph elements, one for &lt;em&gt;Apples&lt;/em&gt; and one for value of apples similar to how we did this in the JavaScript version. The twist here is that instead of directly writing the value, we used the apples variable from the &lt;code&gt;useState()&lt;/code&gt; hook to declare the value of apples.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;And at last we created a button and attached the &lt;code&gt;updateApples&lt;/code&gt; function we declared earlier to the &lt;code&gt;onClick&lt;/code&gt; event handler.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Up to this point in the article, we have learned &lt;code&gt;useState()&lt;/code&gt; hook, how it works and compared it with DOM manipulation in Vanilla JavaScript. Now before ending this article, we’ll build a Counter App which is the classic example of &lt;code&gt;useState()&lt;/code&gt; and React. &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Counter App with useState()
&lt;/h2&gt;

&lt;p&gt;Before starting, if you want to know how this app will work, you can check out this &lt;a href="https://replit.com/@AshutoshMishr21/Counter-App#src/App.jsx"&gt;repl&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--RRdGm25u--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mjfz4xxad1xy85o8zfv4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--RRdGm25u--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mjfz4xxad1xy85o8zfv4.png" alt="Counter App screenshot" width="512" height="228"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Code
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;useState&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;react&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;./App.css&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nx"&gt;App&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;

 &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;addCount&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;setAddCount&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;useState&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
 &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;subtractCount&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;setSubtractCount&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;useState&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

 &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
   &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
     &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Your value is &lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;addCount&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
     &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;button&lt;/span&gt; &lt;span class="na"&gt;onClick&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;setAddCount&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;addCount&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
       Add
     &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;button&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;

     &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Your value is &lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;subtractCount&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;p&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
     &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;button&lt;/span&gt; &lt;span class="na"&gt;onClick&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;setSubtractCount&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;subtractCount&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
       Subtract
     &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;button&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
   &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
 &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="nx"&gt;App&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Explanation
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;In our &lt;code&gt;App()&lt;/code&gt; function we declared 2 &lt;code&gt;useState()&lt;/code&gt; hooks, one for &lt;em&gt;adding&lt;/em&gt; up the values in the counter and the other one for &lt;em&gt;subtracting&lt;/em&gt; the values as you can see in their names. Both useStates are initialised with the value of 0.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The return statement returns a &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt; element with two &lt;code&gt;&amp;lt;p&amp;gt;&lt;/code&gt; elements and two &lt;code&gt;&amp;lt;button&amp;gt;&lt;/code&gt; elements for our &lt;em&gt;addCount&lt;/em&gt; and &lt;em&gt;subtractCount&lt;/em&gt; variables.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Both paragraphs show &lt;em&gt;Your value is&lt;/em&gt; as a default text followed by their respective state variables, i.e., &lt;code&gt;addCount&lt;/code&gt; and &lt;code&gt;subtractCount&lt;/code&gt;. These state variables display their current value on the screen.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Then there are two buttons which call their respective &lt;code&gt;setAddCount()&lt;/code&gt; and &lt;code&gt;setSubtractCount()&lt;/code&gt; functions to add or subtract values from our state variables.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Great, now both the Update Apple and Counter App are finished and I hope you would have understood by now what useState hook is and how it works. If yes, show your love by sharing your thoughts and the article on social media.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Happy Coding ✌️&lt;/em&gt;&lt;/p&gt;

</description>
      <category>react</category>
      <category>javascript</category>
      <category>beginners</category>
      <category>programming</category>
    </item>
    <item>
      <title>13 Must Know Libraries for a React Developer</title>
      <dc:creator>Ashutosh Mishra</dc:creator>
      <pubDate>Tue, 15 Aug 2023 09:31:04 +0000</pubDate>
      <link>https://dev.to/ashutoshmishra/13-must-know-libraries-for-a-react-developer-g57</link>
      <guid>https://dev.to/ashutoshmishra/13-must-know-libraries-for-a-react-developer-g57</guid>
      <description>&lt;p&gt;Being a modern React developer is not only about understanding the core concepts of React but also about getting well versed with the whole ecosystem of React.&lt;/p&gt;

&lt;p&gt;This includes having the knowledge and experience of various React libraries which you can use in your application to make your development process a lot easier.&lt;/p&gt;

&lt;p&gt;Even if you don't have the necessary experience working with them, you should at least be aware of their existence and the problem they solve.&lt;/p&gt;

&lt;p&gt;So, here are the 13 great React libraries which you should know about as a React developer.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. TanStack Query
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5l70lgvnkpvkxbhshwqj.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5l70lgvnkpvkxbhshwqj.png" alt="TanStack Query"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://tanstack.com/query/v3/" rel="noopener noreferrer"&gt;TanStack Query&lt;/a&gt; is an open source data fetching library in React developed by &lt;a href="https://twitter.com/tannerlinsley" rel="noopener noreferrer"&gt;Tanner Linsley&lt;/a&gt;. It has more than 1.7 million weekly downloads on &lt;a href="https://www.npmjs.com/package/@tanstack/react-query" rel="noopener noreferrer"&gt;NPM&lt;/a&gt; and more than 35k stars on &lt;a href="https://github.com/TanStack/query" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; as of August 2023.&lt;/p&gt;

&lt;p&gt;React doesn't have an opinionated way to fetch data. This leaves developers free to come up with various data fetching methods. Most of the time, it involves the use of useEffect and useState hooks or the use of some general purpose state management library.&lt;/p&gt;

&lt;p&gt;TanStack Query gives us a standard way to fetch data in React applications and helps us avoid writing complex logic, reduce lines of code, make our code more maintainable, make our application faster, and so on.&lt;/p&gt;

&lt;p&gt;It comes with lots of amazing features to make the data fetching and the development experience in React really awesome. These features include Auto Caching, Auto Refetching, Scroll Recovery, Render-as-you-fetch, etc. You can look up all the features in the below screenshot.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Redux
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fka387koesoh36x0260j9.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fka387koesoh36x0260j9.png" alt="Redux"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://redux.js.org/" rel="noopener noreferrer"&gt;Redux&lt;/a&gt; is an open source state management library in JavaScript. It has more than 58K stars on GitHub, and more than 7.8 million weekly downloads on NPM as of August 2023.&lt;/p&gt;

&lt;p&gt;According to Redux's official docs, &lt;em&gt;Redux is a predictable state container for JavaScript apps. It helps you write applications that behave consistently, run in different environments (client, server, and native), and are easy to test. On top of that, it provides a great developer experience, such as live code editing combined with a time travelling debugger.&lt;/em&gt; (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://redux.js.org/introduction/getting-started" rel="noopener noreferrer"&gt;Redux&lt;/a&gt;)&lt;/p&gt;

&lt;h3&gt;
  
  
  Features of Redux
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Predictable&lt;/strong&gt; - Helps you write easily testable applications with consistent behaviour across environments.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Centralised&lt;/strong&gt; - Helps you centralise the state of the application.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Debuggable&lt;/strong&gt; - It comes up with its own DevTools that make it easy to track the timeline of the application's state.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Flexible&lt;/strong&gt; - Redux works with any UI layer and has a large ecosystem of addons to fit your needs. (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://redux.js.org/" rel="noopener noreferrer"&gt;Redux&lt;/a&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It is one of the most popular state management libraries in React and makes building large scale, industrial applications easier.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. MUI
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv2hpkos5c7tv4bjk23rt.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv2hpkos5c7tv4bjk23rt.png" alt="MUI"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Any list featuring the best React libraries would be incomplete without adding MUI Core. It's a React styling library that helps you build amazing UIs in no time. The MUI Core contains 4 foundational libraries for building and shipping UI faster-&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Material UI:&lt;/strong&gt; Material UI is a library of React UI components that implements Google's Material Design. (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://mui.com/material-ui/getting-started/" rel="noopener noreferrer"&gt;Material UI&lt;/a&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Joy UI:&lt;/strong&gt; Joy UI is a library of beautifully designed React UI components built to spark joy in the development process. (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://mui.com/joy-ui/getting-started/" rel="noopener noreferrer"&gt;Joy UI&lt;/a&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Base UI:&lt;/strong&gt; MUI Base is a library of headless ("unstyled") React UI components and low-level hooks. (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://mui.com/base-ui/getting-started/" rel="noopener noreferrer"&gt;Base UI&lt;/a&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;MUI System:&lt;/strong&gt; MUI System is a collection of CSS utilities for rapidly laying out custom designs with MUI component libraries. (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://mui.com/system/getting-started/" rel="noopener noreferrer"&gt;MUI System&lt;/a&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With &lt;a href="https://github.com/mui/material-ui" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; stars of 88K(August 2023) and weekly &lt;a href="https://www.npmjs.com/package/@mui/material" rel="noopener noreferrer"&gt;NPM&lt;/a&gt; downloads of 2.9 million(August 2023), MUI is one of the most popular React UI libraries in the world.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. React Bootstrap
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr431d876u4ud32iow9u1.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr431d876u4ud32iow9u1.png" alt="React Bootstrap"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://react-bootstrap.github.io/" rel="noopener noreferrer"&gt;React Bootstrap&lt;/a&gt; is the rebuilt version of our old good friend Bootstrap in React. It's a standalone UI library of Bootstrap components for React with no dependency on bootstrap.js or jQuery.&lt;/p&gt;

&lt;p&gt;React Bootstrap offers a library of components with easy to use functionality, statefulness, and default accessibility making it a great choice to start building the UI of our application.&lt;/p&gt;

&lt;p&gt;It has more than 21K stars on &lt;a href="https://github.com/react-bootstrap/react-bootstrap" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; and more than 2.4 million weekly downloads on &lt;a href="https://www.npmjs.com/package/react-bootstrap" rel="noopener noreferrer"&gt;NPM&lt;/a&gt;, as of August 2023.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. React DND
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkn8fl50g3qprlkodzi7f.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkn8fl50g3qprlkodzi7f.png" alt="React DND"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Modern React applications are rarely simple. Almost all industrial applications have some form of drag and drop functionality.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://react-dnd.github.io/react-dnd/about" rel="noopener noreferrer"&gt;React DnD&lt;/a&gt; is a library that helps you build React applications based on drag and drop functionality. To make it possible, it uses the &lt;a href="https://developer.mozilla.org/en-US/docs/web/api/html_drag_and_drop_api" rel="noopener noreferrer"&gt;HTML5 drag and drop&lt;/a&gt; API under the hood.&lt;/p&gt;

&lt;p&gt;The library is fairly simple to use with lots of interesting, and innovative use cases in real world applications. It has more than 19K stars on &lt;a href="https://github.com/react-dnd/react-dnd/" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; and more than 1.8 million weekly downloads on &lt;a href="https://www.npmjs.com/package/react-dnd" rel="noopener noreferrer"&gt;NPM&lt;/a&gt; as of August 2023.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. SWR
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F88brqzzk9hmpm1l15x7g.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F88brqzzk9hmpm1l15x7g.png" alt="SWR"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://swr.vercel.app/" rel="noopener noreferrer"&gt;SWR&lt;/a&gt; by Vercel is the second data fetching library on our list and another great option apart from React Query.&lt;/p&gt;

&lt;p&gt;The SWR library is a lot smaller and simpler than React Query yet it provides many amazing features like Reusable Data Fetching, Suspense, Pagination, Built-in cache and so much more.&lt;/p&gt;

&lt;p&gt;It has more than 27K stars on &lt;a href="https://github.com/vercel/swr" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; and more than 1.2 million weekly downloads on &lt;a href="https://www.npmjs.com/package/swr" rel="noopener noreferrer"&gt;NPM&lt;/a&gt; as of August 2023.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. React Hook Form
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnkn9rjd1y3goc5ib0auh.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnkn9rjd1y3goc5ib0auh.png" alt="React Hook Form"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://react-hook-form.com/" rel="noopener noreferrer"&gt;React Hook Form&lt;/a&gt; is the king when it comes to building forms in React. It's a high-performant, tiny library without any dependencies and improves your app's performance by reducing your code, isolating re-renders, faster mounting, etc.&lt;/p&gt;

&lt;p&gt;According to React Hook Forms' GitHub Readme, it has the following features-&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Built with performance, UX, and DX in mind&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Embraces native HTML form validation&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Out of the box integration with UI libraries&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Small size and no dependencies&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Supports Yup, Zod, Superstruct, Joi, Vest, class-validator, io-ts, nope, and custom&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This project has more than 36K stars on &lt;a href="https://github.com/react-hook-form/react-hook-form" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; and more than 3.4 million weekly downloads on &lt;a href="https://www.npmjs.com/package/react-hook-form" rel="noopener noreferrer"&gt;NPM&lt;/a&gt; as of August 2023. Check out this library before building your next form in React.&lt;/p&gt;

&lt;h2&gt;
  
  
  8. Recharts
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwnnkfmvu4qoio70b54zu.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwnnkfmvu4qoio70b54zu.png" alt="Recharts"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://recharts.org/en-US/" rel="noopener noreferrer"&gt;Recharts&lt;/a&gt; is an open source charting library built with React and D3. It's lightweight, built on React components, provides Native SVG support, and makes adding charts into React applications painless.&lt;/p&gt;

&lt;p&gt;It provides 11 built-in chart components including AreaChart, BarChart, LineChart, PieChart, and so on.&lt;/p&gt;

&lt;p&gt;This library has more than 20K stars on &lt;a href="https://github.com/recharts/recharts" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; and more than 1.3 million weekly downloads on &lt;a href="https://www.npmjs.com/package/recharts" rel="noopener noreferrer"&gt;NPM&lt;/a&gt; as of August 2023.&lt;/p&gt;

&lt;h2&gt;
  
  
  9. React Router
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fctzmvrrrtgb2foouyq20.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fctzmvrrrtgb2foouyq20.png" alt="React Router"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://reactrouter.com/en/main" rel="noopener noreferrer"&gt;React Router&lt;/a&gt; is the most popular library to implement routing in React apps. It has more than 50K stars on &lt;a href="https://github.com/remix-run/react-router" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; and more than 10 million weekly downloads on &lt;a href="https://www.npmjs.com/package/react-router-dom" rel="noopener noreferrer"&gt;NPM&lt;/a&gt; and it's built by the same team behind the popular Remix framework of React.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;It is a lightweight, fully-featured routing library for the React JavaScript library. React Router runs everywhere that React runs; on the web, on the server (using node.js), and on React Native.&lt;/em&gt; (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://github.com/remix-run/react-router" rel="noopener noreferrer"&gt;React Router GitHub&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;React Router is used by the dev teams at top companies like Microsoft, Netflix, Twitter, Discord, etc.&lt;/p&gt;

&lt;h2&gt;
  
  
  10. BluePrint
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fle2h6aqnqab52ev2tioi.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fle2h6aqnqab52ev2tioi.png" alt="BluePrint"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;a href="https://blueprintjs.com/" rel="noopener noreferrer"&gt;Blueprint&lt;/a&gt; is a React-based UI toolkit for the web. It is optimised for building complex, data-dense web interfaces for desktop applications that run in modern browsers and IE11.&lt;/em&gt; (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://github.com/palantir/blueprint" rel="noopener noreferrer"&gt;Blueprint GitHub&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;There are 7 different NPM packages of Blueprint-&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;blueprintjs/core&lt;/strong&gt; - This is the core package with various UI components(30+) to handle all the basic UI formation of the app. These components include Card, Button, Spinner, etc.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;blueprintjs/datetime&lt;/strong&gt; - This package helps you interact with dates and times in React. We can use it to select a single date, date ranges, select a time, etc.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;blueprintjs/icons&lt;/strong&gt; - This package provides over 300 vector UI icons to make your React app beautiful.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;blueprintjs/popover2&lt;/strong&gt; - This package has successor components to Popover and Tooltip of blueprintjs/core.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;blueprintjs/select&lt;/strong&gt; - This package provides React components to select an item or select multiple items in the app.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;blueprintjs/table&lt;/strong&gt; - This package provides an interactive table component for your React app.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;blueprintjs/timezone&lt;/strong&gt; - This package helps you interact with various timezones in the app.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Blueprint has more than 20K stars on &lt;a href="https://github.com/palantir/blueprint" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; as of August 2023.&lt;/p&gt;

&lt;h2&gt;
  
  
  11. React Virtualized
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzzyc9a2yefli96obec0b.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzzyc9a2yefli96obec0b.png" alt="React Virtualized"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://bvaughn.github.io/react-virtualized/#/components/List" rel="noopener noreferrer"&gt;React Virtualized&lt;/a&gt; is a React library that helps you work with large lists and tabular data efficiently in React. It has more than 25K stars on &lt;a href="https://github.com/bvaughn/react-virtualized" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; and more than 2.5 million weekly downloads on &lt;a href="https://www.npmjs.com/package/react-virtualized" rel="noopener noreferrer"&gt;NPM&lt;/a&gt; as of August 2023.&lt;/p&gt;

&lt;p&gt;This library will come in handy if you are working with large data in your application.&lt;/p&gt;

&lt;h2&gt;
  
  
  12. React Suite
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn1w0jmpevxn0uki36upr.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn1w0jmpevxn0uki36upr.png" alt="React Suite"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://rsuitejs.com/" rel="noopener noreferrer"&gt;React Suite&lt;/a&gt; is a set of react component libraries for enterprise system products. It is a well-thought-out and developer-friendly UI framework. (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://github.com/rsuite/rsuite" rel="noopener noreferrer"&gt;React Suite GitHub&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;It's a UI library like no other. Each component is very well designed to increase the beauty of your application manifold and give it the touch of excellence.&lt;/p&gt;

&lt;p&gt;The library does provide general UI components like Button, Drawer, Pagination, Loader, etc but with way better design and depth than most of the UI component libraries.&lt;/p&gt;

&lt;p&gt;It has more than 7K stars on &lt;a href="https://github.com/rsuite/rsuite" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; and more than 60,000 weekly &lt;a href="https://www.npmjs.com/package/rsuite" rel="noopener noreferrer"&gt;NPM&lt;/a&gt; downloads as of August 2023.&lt;/p&gt;

&lt;h2&gt;
  
  
  13. TailwindCSS
&lt;/h2&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyw7ydaogrird4jlbzacn.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyw7ydaogrird4jlbzacn.png" alt="Tailwind CSS"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://tailwindcss.com/" rel="noopener noreferrer"&gt;TailwindCSS&lt;/a&gt; is a utility-first CSS framework used for rapidly styling websites. It's not a React library but a CSS styling framework and one of the most popular options among React developers to style their applications.&lt;/p&gt;

&lt;p&gt;Tailwind makes building UIs super easy with its utility classes like &lt;code&gt;flex&lt;/code&gt;, &lt;code&gt;pt-4&lt;/code&gt;, &lt;code&gt;text-centre&lt;/code&gt;, etc. Each class has pre-defined CSS values which become active once you assign the particular class to a particular JSX element.&lt;/p&gt;

&lt;p&gt;For instance, if you assign the &lt;em&gt;className&lt;/em&gt; of &lt;strong&gt;flex&lt;/strong&gt; or &lt;strong&gt;text-center&lt;/strong&gt; to a div, the element will become a flex element or have text aligned to the centre.&lt;/p&gt;

&lt;p&gt;It has more than 71K stars on &lt;a href="https://github.com/tailwindlabs/tailwindcss" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; and more than 6 million weekly downloads on &lt;a href="https://www.npmjs.com/package/tailwindcss" rel="noopener noreferrer"&gt;NPM&lt;/a&gt; as of August 2023.&lt;/p&gt;

&lt;h2&gt;
  
  
  Parting Thoughts
&lt;/h2&gt;

&lt;p&gt;You don't need to learn all of these libraries to work effectively in React because many of them are used for the same purposes. For instance, MUI, React Bootstrap, and React Suite are all UI component libraries.&lt;/p&gt;

&lt;p&gt;So instead of learning all the libraries used for the same purposes, use that time to work with libraries that are used for different purposes. For instance, build a React app that uses React Suite for UI, React Router for routing, React Query for data fetching, and Recharts for rendering charts.&lt;/p&gt;

&lt;p&gt;You don't have to use the same tech stack I told in the above para but I hope you get the point. Learn various libraries used for various purposes.&lt;/p&gt;

&lt;p&gt;If you have any questions or confusion, reach out to me on &lt;a href="https://twitter.com/ashutoshmishrae" rel="noopener noreferrer"&gt;X&lt;/a&gt;(formerly Twitter).&lt;/p&gt;

</description>
      <category>react</category>
      <category>programming</category>
      <category>javascript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Where to Find Open Source Projects for Contribution?</title>
      <dc:creator>Ashutosh Mishra</dc:creator>
      <pubDate>Mon, 14 Aug 2023 15:23:24 +0000</pubDate>
      <link>https://dev.to/ashutoshmishra/where-to-find-open-source-projects-for-contribution-1ek</link>
      <guid>https://dev.to/ashutoshmishra/where-to-find-open-source-projects-for-contribution-1ek</guid>
      <description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;Note:&lt;/strong&gt; This article was originally written on January 13th, 2022.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Contributing to open source can be both rewarding and satisfying. It helps you improve your skills, build meaningful connections, and also build your career.&lt;/p&gt;

&lt;p&gt;But having that first contribution can be a daunting task to you as a developer who has never contributed to open source before. &lt;/p&gt;

&lt;p&gt;I’ve compiled a list of some great platforms that will help you find some cool projects and issues to make their first contribution.&lt;/p&gt;

&lt;h2&gt;
  
  
  10 Platforms to Find Open Source Projects for Beginners
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Open Source Guides
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdwsbnse04va64158l51i.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdwsbnse04va64158l51i.png" alt="Open Source Guides"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Before starting open source, it’s always good to know how to contribute to an open-source project.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://opensource.guide/" rel="noopener noreferrer"&gt;Open Source Guides&lt;/a&gt; is like a 101 for open-source. This website has guides on 👇 (list below was taken directly from their website)&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;how to contribute to open source&lt;/li&gt;
&lt;li&gt;starting an open-source project&lt;/li&gt;
&lt;li&gt;finding users for your project&lt;/li&gt;
&lt;li&gt;building welcoming communities&lt;/li&gt;
&lt;li&gt;best practices for maintainers&lt;/li&gt;
&lt;li&gt;leadership and governance&lt;/li&gt;
&lt;li&gt;getting paid for open source work&lt;/li&gt;
&lt;li&gt;your code of conduct&lt;/li&gt;
&lt;li&gt;open-source metrics&lt;/li&gt;
&lt;li&gt;the legal side of open source&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I will highly encourage you to give it a read before making your first pull request. It’ll enlighten you on Open Source and various other elements involved in it.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Up For Grabs
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx3x7be0ywxmg75y0sira.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx3x7be0ywxmg75y0sira.png" alt="Up For Grabs"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Up For Grabs maintains a &lt;em&gt;“list of open source projects which have curated tasks specifically for new contributors.”&lt;/em&gt; (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://up-for-grabs.net/" rel="noopener noreferrer"&gt;Up For Grabs&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Filter the projects by labels and tags and check the projects which you find interesting. &lt;/p&gt;

&lt;h3&gt;
  
  
  3. Ovio Projects
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1l8vpp55cjzmjg7jdyd3.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1l8vpp55cjzmjg7jdyd3.png" alt="Ovio Projects"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;a href="https://ovio.org/" rel="noopener noreferrer"&gt;Ovio&lt;/a&gt; is a community platform striving to make the open-source ecosystem more collaborative and accessible by empowering developers to contribute.&lt;/em&gt; (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://ovio.org/how-it-works" rel="noopener noreferrer"&gt;Ovio&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;It gives you access to the curated lists of projects and issues that match your skills and interests.&lt;/p&gt;

&lt;p&gt;You have to first create your account and fill your profile to let Ovio know about your skills and interests based on which they will auto-match you with projects and issues.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. CodeTriage
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0mliq5vrmj3umgdvf4sr.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0mliq5vrmj3umgdvf4sr.png" alt="CodeTriage"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.codetriage.com/" rel="noopener noreferrer"&gt;CodeTriage&lt;/a&gt; helps you contribute to open source by &lt;em&gt;“picking a handful of open issues and delivering them directly to your inbox”&lt;/em&gt;. (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://www.codetriage.com/what" rel="noopener noreferrer"&gt;CodeTriage&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;After you sign up for CodeTriage, you pick the repos you want to help with, and they will periodically send you issues. They have already helped 63,488 developers contribute to 6,767 Open Source projects to date.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. First Contributions
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faptaxafsnzddvvkiwkgt.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faptaxafsnzddvvkiwkgt.png" alt="First Contributions"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://firstcontributions.github.io/" rel="noopener noreferrer"&gt;First Contributions&lt;/a&gt; helps you make your first open-source contribution in five minutes.&lt;/p&gt;

&lt;p&gt;To get started, you have to clone their repository locally and then add your name to their &lt;em&gt;Contributors.md&lt;/em&gt; file and then push the changes to GitHub.&lt;/p&gt;

&lt;p&gt;Once you have done that you can check their extensive list of projects and choose the ones which match your skills and interests.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Codetribute
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foovf2phovfjm3kd1ifed.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foovf2phovfjm3kd1ifed.png" alt="Codetribute"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;a href="https://codetribute.mozilla.org/" rel="noopener noreferrer"&gt;Codetribute&lt;/a&gt; is a site that guides contributors to their first contribution. It helps new contributors find a project they want to work with, learn about that project, and then find a task that is suitable to their skills and interests and not already assigned to someone else.&lt;/em&gt; (&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href="https://github.com/mozilla-frontend-infra/codetribute" rel="noopener noreferrer"&gt;Codetribute GitHub&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;You can browse projects and their issues and can also filter issues based on your preferred programming languages. The other good thing about Codetribute is that it lets you find issues with good-first-bugs tag unlike other resources in this article.&lt;/p&gt;

&lt;h3&gt;
  
  
  7. Hacktoberfest Projects
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fae4atu2r1c83nibadbmq.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fae4atu2r1c83nibadbmq.png" alt="Hacktoberfest Projects"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://hacktoberfest-projects.vercel.app/" rel="noopener noreferrer"&gt;Hacktoberfest Projects&lt;/a&gt; is a website that lets you find eligible projects for Hacktoberfest. Though this website is specifically designed to find Hacktoberfest projects, there’s no rule that you cannot contribute to those projects in other months apart from October. &lt;/p&gt;

&lt;p&gt;So check out this site and you may find some great projects here.&lt;/p&gt;

&lt;h3&gt;
  
  
  8. Good First Issue
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fze9yqnlvs1salrcy6a1y.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fze9yqnlvs1salrcy6a1y.png" alt="Good First Issue"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://goodfirstissue.dev/" rel="noopener noreferrer"&gt;Good First Issue&lt;/a&gt; website curates the issues with good first issue tag from various open-source projects and displays them with a nice and clean UI.&lt;/p&gt;

&lt;p&gt;It’s a great way to find "good first issues" on GitHub which would manually take you a long long time to find. If you're a beginner, I would encourage you more to visit and check this website.&lt;/p&gt;

&lt;h3&gt;
  
  
  9. First Pull Request
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs9o8ho14s4qjgy0y6qee.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs9o8ho14s4qjgy0y6qee.png" alt="First Pull Request"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To be honest, this website might not find you open-source projects for contribution but it'll tell you what was the first open-source contribution of your favorite programmers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://firstpr.me/" rel="noopener noreferrer"&gt;First Pull Request&lt;/a&gt; as the name suggest asks you the GitHub username of your favorite programmers and in return displays their first pull request.&lt;/p&gt;

&lt;p&gt;It's a great website for you to know how many giant programmers you know of started with small contributions.&lt;/p&gt;

&lt;h3&gt;
  
  
  10. Aviyel
&lt;/h3&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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frshrm2g8a6s9jrrvzjzk.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%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frshrm2g8a6s9jrrvzjzk.png" alt="Aviyel"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aviyel.com/" rel="noopener noreferrer"&gt;Aviyel&lt;/a&gt; is a community-driven monetization platform for open-source projects. They work with open source creators to build and incentivise active communities, achieve financial independence and increase adoption of their projects.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Aviyel is building a knowledge-sharing platform that offers seamless and guaranteed exchange of knowledge, support, and content around open source projects between the open-source community and the businesses and developers who build great products using them.&lt;/em&gt; (Source: &lt;a href="https://aviyel.com/post/33/manifesto-aviyel" rel="noopener noreferrer"&gt;The Aviyel Manifesto&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Currently, they have onboarded five projects - Docz, Typesense, Mobile Security Framework(MobSF), Chatwoot, and Hoppscotch, you can check them at Aviyel’s website.&lt;/p&gt;

&lt;p&gt;Check out the platform and these projects and you may find something interesting.&lt;/p&gt;

&lt;h2&gt;
  
  
  Parting Thoughts
&lt;/h2&gt;

&lt;p&gt;If you are reading up to this point, chances are you are really serious about getting involved in open source. I wish you good luck with your open source journey.&lt;/p&gt;

&lt;p&gt;Reach out to me on &lt;a href="https://twitter.com/ashutoshmishrae" rel="noopener noreferrer"&gt;X&lt;/a&gt;(formerly Twitter) if any of these platforms now or in the future help you make your first open-source contribution. I would love to hear about your journey.&lt;/p&gt;

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

</description>
      <category>webdev</category>
      <category>opensource</category>
      <category>programming</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
