<?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: Panchami Thulupule</title>
    <description>The latest articles on DEV Community by Panchami Thulupule (@panchami6).</description>
    <link>https://dev.to/panchami6</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%2F533617%2Ffaec91cd-d036-4ffe-8ad3-e442877c56db.jpg</url>
      <title>DEV Community: Panchami Thulupule</title>
      <link>https://dev.to/panchami6</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/panchami6"/>
    <language>en</language>
    <item>
      <title>JavaScript Promises</title>
      <dc:creator>Panchami Thulupule</dc:creator>
      <pubDate>Sat, 10 Jul 2021 03:06:47 +0000</pubDate>
      <link>https://dev.to/panchami6/javascript-promises-20oh</link>
      <guid>https://dev.to/panchami6/javascript-promises-20oh</guid>
      <description>&lt;h2&gt;
  
  
  What is a Promise?
&lt;/h2&gt;

&lt;p&gt;A Promise is an object in JavaScript used to handle asynchronous operations. They can handle multiple asynchronous operation and provide better error handling.&lt;/p&gt;

&lt;p&gt;A Promise is always in one of the three states.&lt;br&gt;
pending - This is the initial state, we do not know if it is fulfilled or rejected.&lt;br&gt;
fulfilled - This indicated that the operation has completed successfully &lt;br&gt;
rejected - This indicates that the operation has failed &lt;/p&gt;
&lt;h2&gt;
  
  
  Why Promises ?
&lt;/h2&gt;

&lt;p&gt;Promises help us deal with asynchronous code in a far more simpler way compared to callbacks.&lt;br&gt;
Callback hell can be avoided with Promises. &lt;/p&gt;

&lt;p&gt;Callback hell is resulted when a lot of code is written and executed from top to bottom without any asynchronous functions.&lt;/p&gt;
&lt;h2&gt;
  
  
  How to work with promises
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Creating Promises
&lt;/h3&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const promise = new Promise()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h3&gt;
  
  
  How to check if the promise is in pending, fulfilled or rejected state?
&lt;/h3&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const promise = new Promise((resolve, reject) =&amp;gt; {

})
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Promise constructor takes only one argument. That is a callback function.&lt;br&gt;
Callback function takes two arguments, resolve and reject&lt;br&gt;
resolve and reject functions are typically called after an async operation&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const promise = new Promise((resolve, reject) =&amp;gt; {

    //when the promise got fulfilled
    resolve()
})
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;resolve is a function which is called when the state changes from pending to fulfilled.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const promise = new Promise((resolve, reject) =&amp;gt; {
    //when the promise got rejected
    reject()
})
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;reject is a function which is called when the state changes from pending to rejected.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const promise = new Promise((resolve, reject) =&amp;gt; {
  setTimeout(() =&amp;gt; {
    resolve()
  }, 1000)
)}

const promise = new Promise((resolve, reject) =&amp;gt; {
  setTimeout(() =&amp;gt; {
    reject()
  }, 2000)
)}

promise.then()
promise.catch()
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const onFulfillment = () =&amp;gt; {
  console.log("Promise is fulfilled")
}
const onRejected = () =&amp;gt; {
  console.log("Promise is not fulfilled")
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The onFulfillment and onRejected are used as callback functions in promise.&lt;br&gt;
Callback functions are functions that are passed in to another function as arguments&lt;/p&gt;

&lt;p&gt;The Promise method gives us the access to two functions. They are then() and catch()&lt;/p&gt;

&lt;p&gt;We call these functions as&lt;br&gt;
promise.then()&lt;br&gt;
promise.catch()&lt;/p&gt;

&lt;p&gt;If the promise status is changed from pending to fulfilled, then() is invoked.&lt;br&gt;
If the promise status is changed from pending to rejected, catch() is invoked.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;promise.then(onFulfillment)
promise.catch(onRejected) 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Promise Chaining
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;fetch(url)
.then(process)
.then(output)
.catch(handleErrors)
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The process() function will wait for the fetch() to complete and the output() will wait untill the process() is completed.&lt;/p&gt;

&lt;p&gt;If the fecth(), process() and output() promises are rejected, handleErrors() is called.&lt;/p&gt;

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

&lt;p&gt;There is no guarantee of exactly when the operation will complete and the result will be returned, but there is a guarantee that when the result is available, or the promise fails, you can execute the code based on the result or handle the error if the promise is rejected.&lt;/p&gt;

</description>
      <category>javascript</category>
    </item>
    <item>
      <title>The Magic of Event Loop</title>
      <dc:creator>Panchami Thulupule</dc:creator>
      <pubDate>Fri, 09 Jul 2021 19:40:01 +0000</pubDate>
      <link>https://dev.to/panchami6/the-magic-of-event-loop-1pe4</link>
      <guid>https://dev.to/panchami6/the-magic-of-event-loop-1pe4</guid>
      <description>&lt;p&gt;JavaScript is a single threaded language. This means it has one call stack and one memory heap. It executes code in the order and must finish executing a piece of code before moving onto the next.&lt;/p&gt;

&lt;p&gt;JavaScript engine creates the global execution context before it starts to execute any code.&lt;br&gt;
Global execution context holds information about the environment within which the current code is being executed.&lt;/p&gt;
&lt;h2&gt;
  
  
  Now let's see how stack works:
&lt;/h2&gt;

&lt;p&gt;When the JavaScript engine first encounters your code, it creates a global execution context and pushes it to the stack. Whenever there is a function invocation, it creates a new execution context for that function and pushes it to the top of the stack.&lt;/p&gt;

&lt;p&gt;The function's execution context which is at the top of the stack is executed first. When this function completes, its execution stack is popped off from the stack.&lt;/p&gt;

&lt;p&gt;If you have a function that takes a long time to execute, it blocks all the interactions with web page such as mouse click. These functions are called blocking functions.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;function task(message) {
   let n = 10000000000;
   while (n &amp;gt; 0){
      n--;
   }
console.log(message);
}
console.log('Start');
task('Run the task');
console.log('Done');
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Output:
&lt;/h3&gt;

&lt;p&gt;Start&lt;br&gt;
Run the task&lt;br&gt;
Done&lt;/p&gt;

&lt;p&gt;In this example, we have a big while loop inside the task() function that runs a time-consuming task. The task() function is a blocking function.&lt;/p&gt;

&lt;p&gt;The JavaScript engine first places the console.log() on top of the stack and executes it. Then, JavaScript places the task() function on top of the call stack and executes the function.&lt;/p&gt;

&lt;p&gt;However, It take some time to complete the task() function. Therefore, you will see the message 'Run the task.' a little time later. After the task() function completes, the JavaScript engine pops it off the call stack.&lt;/p&gt;

&lt;p&gt;Finally, the JavaScript engine places the console.log('Done') function on top of the stack and executes it.&lt;/p&gt;

&lt;p&gt;This can we avoided with the help of Callback functions.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;console.log('Start');
setTimeout(() =&amp;gt; {
   task('Run the task');
}, 1000);

console.log('Done');
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Output
&lt;/h3&gt;

&lt;p&gt;Start&lt;br&gt;
Done&lt;br&gt;
Run the task&lt;/p&gt;

&lt;p&gt;This asynchronous behavior is not part of the JavaScript language, But they are built on top of the JavaScript language in the browser and accessed through the Web APIs.&lt;/p&gt;

&lt;p&gt;some examples of these async functions are setTimeout, setInterval, Event listeners etc.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Magic of Event loop
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MCizr3cJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7mcpmnbbjg9qw2hdzmfe.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MCizr3cJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7mcpmnbbjg9qw2hdzmfe.PNG" alt="event_loop"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The functions are pushed into the call stack in order. But the functions belonging to Web API's are sent to the browser to perform the task.&lt;br&gt;
Meanwhile, the functions in callstack are executed without any delay. The functions which are executed by the browser are sent to Callback queue. The Event loop continuously check if the callstack is empty. If the callstack is empty, the functions in callback queue which are waiting to be executed are pushed into the callstack in order.&lt;/p&gt;

&lt;p&gt;This is how the JavaScript runs asynchronous code without interrupting other activities.  &lt;/p&gt;

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

</description>
      <category>javascript</category>
    </item>
    <item>
      <title>Beginner's guide to GitHub</title>
      <dc:creator>Panchami Thulupule</dc:creator>
      <pubDate>Mon, 07 Dec 2020 14:44:41 +0000</pubDate>
      <link>https://dev.to/panchami6/beginner-s-guide-to-github-ai3</link>
      <guid>https://dev.to/panchami6/beginner-s-guide-to-github-ai3</guid>
      <description>&lt;h2&gt;
  
  
  What is Git?
&lt;/h2&gt;

&lt;p&gt;It is an open source version control software. Version control is a system that records changes to a file or set of files over time so that you can keep track of the activities you performed.&lt;/p&gt;

&lt;p&gt;In Real life projects, multiple developers work in parallel. So they need a version control system like Git to make sure that there are no code conflicts between them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why do we need it?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Git makes it easy to contribute to open source projects:&lt;br&gt;
If you want to contribute to other's projects, you just fork(get &lt;br&gt;
a copy of) the project, make your changes, and then make a pull &lt;br&gt;
request to the project owner using GitHub's web interface. This &lt;br&gt;
way the project owner can look into your changes and include &lt;br&gt;
these changes in their project.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;To track changes in your code:&lt;br&gt;
When multiple people work on a project, it’s hard to keep track &lt;br&gt;
of the changes — who changed what, when, and where those files &lt;br&gt;
are stored. GitHub takes care of this problem by keeping track &lt;br&gt;
of all the changes that have pushed to the repository.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;To showcase your work:&lt;br&gt;
Are you someone who wants to attract recruiters? GitHub is the &lt;br&gt;
best tool you can rely on for this. You will have a higher &lt;br&gt;
chance of being recruited if you have maintained a good GitHub &lt;br&gt;
account.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Set up your GitHub account
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Create a GitHub account:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WSu-DbXw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/sign_up.PNG%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WSu-DbXw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/sign_up.PNG%3Fraw%3Dtrue" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Download and Install GitHub Desktop.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Git Repositories
&lt;/h2&gt;

&lt;p&gt;A repository is a project that contains multiple files. This repository tracks all the changes made to files in your project, building a history over time.&lt;br&gt;
You can do following actions with a repository.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--oyLXhhTC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/newrepo.png%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--oyLXhhTC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/newrepo.png%3Fraw%3Dtrue" alt="alt text" title="Repository Operations"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create a new repository locally:
Create a local repository by filling all the details.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WHrz6HPR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/createrepo.PNG%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WHrz6HPR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/createrepo.PNG%3Fraw%3Dtrue" alt="alt text" title="Create new Repository"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Clone your repository:
Cloning a GitHub repository creates a local copy of the remote 
repository. This allows you to make all of your changes locally 
rather than directly in the source files of the original 
repository.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZEsocfxK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/clonerepo.PNG%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZEsocfxK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/clonerepo.PNG%3Fraw%3Dtrue" alt="alt text" title="Clone a Repository"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create an existing repository:
If you have already created a repository, you can select this 
option and add the existing repository.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--j8ryrM0y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/existingrepo.PNG%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--j8ryrM0y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/existingrepo.PNG%3Fraw%3Dtrue" alt="alt text" title="Add Existing Repository"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Publishing the Repository
&lt;/h2&gt;

&lt;p&gt;After creating a Repository, you can publish this repository to the GitHub web interface.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--NFFObj7P--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/publish.PNG%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--NFFObj7P--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/publish.PNG%3Fraw%3Dtrue" alt="alt text" title="Publish a Repository"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Git commits
&lt;/h2&gt;

&lt;p&gt;Commits are like a snapshot of your work and the changes you have made. It creates a history of every commit you make. This helps in keeping track of the changes you made to the project.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--euf8FisZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/commit.PNG%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--euf8FisZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/commit.PNG%3Fraw%3Dtrue" alt="alt text" title="Commit your changes"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Push your changes to the main branch
&lt;/h2&gt;

&lt;p&gt;After committing to the changes you have made to the project, you need to push the changes to the main branch.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--lms38SyM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/push.PNG%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--lms38SyM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/push.PNG%3Fraw%3Dtrue" alt="alt text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Create a new branch
&lt;/h2&gt;

&lt;p&gt;If you want to make a new feature but you are worried about making changes to the main project and spoiling it while implementing the feature. This is where git branches come in.&lt;br&gt;
Click on the New Branch --&amp;gt; Give a name to the branch --&amp;gt; Create Branch.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---2JLKkPV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/branch.PNG%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---2JLKkPV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/branch.PNG%3Fraw%3Dtrue" alt="alt text" title="New Branch"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Xp2SSiG5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/createbranch.PNG%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Xp2SSiG5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/createbranch.PNG%3Fraw%3Dtrue" alt="alt text" title="Create Branch"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Create a Pull Request
&lt;/h2&gt;

&lt;p&gt;If you want to contribute or collaborate with other projects, you need to follow these steps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Find a project you want to contribute to&lt;/li&gt;
&lt;li&gt;Fork it&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VGXjO11j--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/fork.PNG%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VGXjO11j--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/fork.PNG%3Fraw%3Dtrue" alt="alt text" title="Fork"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Clone it to your local system&lt;/li&gt;
&lt;li&gt;Make a new branch&lt;/li&gt;
&lt;li&gt;Make your changes&lt;/li&gt;
&lt;li&gt;Push it back to your repository&lt;/li&gt;
&lt;li&gt;Click on the Compare button
After you push the changes you have made to the project, go to your repository on GitHub web interface, click on the Compare button.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ECMhLiXM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/compare.PNG%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ECMhLiXM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/compare.PNG%3Fraw%3Dtrue" alt="alt text" title="Compare"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click on Create pull request to open a new pull request&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--oDFNviv5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/pullrequest.PNG%3Fraw%3Dtrue" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--oDFNviv5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/panchami6/portfolio_panchami/blob/main/images/Github/pullrequest.PNG%3Fraw%3Dtrue" alt="alt text" title="Pull Request"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Happy learning😊
&lt;/h3&gt;

</description>
      <category>codenewbie</category>
      <category>teamtanay</category>
      <category>github</category>
      <category>git</category>
    </item>
  </channel>
</rss>
