<?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: NIKHIL GAUTAM</title>
    <description>The latest articles on DEV Community by NIKHIL GAUTAM (@nikhilgautam090696).</description>
    <link>https://dev.to/nikhilgautam090696</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%2F899121%2F958fe568-6dbd-46c1-b23d-18952401e228.jpeg</url>
      <title>DEV Community: NIKHIL GAUTAM</title>
      <link>https://dev.to/nikhilgautam090696</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/nikhilgautam090696"/>
    <language>en</language>
    <item>
      <title>These Command Prompt (Tricks) will Amaze you.</title>
      <dc:creator>NIKHIL GAUTAM</dc:creator>
      <pubDate>Mon, 29 Aug 2022 18:00:00 +0000</pubDate>
      <link>https://dev.to/nikhilgautam090696/thes-command-prompt-tricks-will-amaze-you-4cck</link>
      <guid>https://dev.to/nikhilgautam090696/thes-command-prompt-tricks-will-amaze-you-4cck</guid>
      <description>&lt;h2&gt;
  
  
  1.Change the color of the Command Prompt
&lt;/h2&gt;

&lt;p&gt;Before we change the color we must be aware of how many colors are there in Command prompt So first run this command&lt;br&gt;
 &lt;code&gt;color help&lt;/code&gt; &lt;/p&gt;

&lt;p&gt;This will give you the list of available colors.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;0 = Black       8 = Gray&lt;br&gt;
    1 = Blue        9 = Light Blue&lt;br&gt;
    2 = Green       A = Light Green&lt;br&gt;
    3 = Aqua        B = Light Aqua&lt;br&gt;
    4 = Red         C = Light Red&lt;br&gt;
    5 = Purple      D = Light Purple&lt;br&gt;
    6 = Yellow      E = Light Yellow&lt;br&gt;
    7 = White       F = Bright White&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Select any two number followed by color as prefix (number1 number2) number 1  is for background color&lt;br&gt;
number 2 is for text color.&lt;/p&gt;

&lt;p&gt;Now if you want to make your color green with black as a background type &lt;code&gt;color 02&lt;/code&gt; or &lt;code&gt;color 0A&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Note: - &lt;code&gt;color 07&lt;/code&gt; is the default color of command prompt.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--DdLhkoKG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k04nk42dj8pfhqt2htxy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--DdLhkoKG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k04nk42dj8pfhqt2htxy.png" alt="Command Prompt Color Changed" width="880" height="462"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Change the Prompt
&lt;/h2&gt;

&lt;p&gt;You can create your own custom prompt &lt;br&gt;
e.g. C:\Users\Downloads to Something like yourname@hacker.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;prompt your custom name&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;e.g. &lt;br&gt;
&lt;code&gt;prompt harry@hacker$G&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WgS9_3SS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/csx5ts7qmlny4ay6vbvo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WgS9_3SS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/csx5ts7qmlny4ay6vbvo.png" alt="Command prompt name change " width="662" height="379"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Changing the title of  command prompt window
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;title Enter your own title&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;e.g. &lt;code&gt;title Hacking the system&lt;/code&gt; &amp;amp; it will change the title of your command prompt.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bGNq3MZA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ic0pt7mhe8i7ftycdnbc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bGNq3MZA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ic0pt7mhe8i7ftycdnbc.png" alt="Command Prompt Title change" width="880" height="476"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Hide Your Personal Stuff!
&lt;/h2&gt;

&lt;p&gt;To hide Use this command :- &lt;code&gt;Attrib +h +s +r folder name&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;To Show USe this command :- &lt;code&gt;Attrib -h -s -r folder name&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Copy Output to Clipboard
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;| clip&lt;/code&gt; this command will copy the command output to your clip board.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;dir | clip&lt;/code&gt; this command will copy the dir's command output to your clip board. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;| this is a pipe symbol.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  6. View Command History
&lt;/h2&gt;

&lt;p&gt;by Using f7 key from your keyboard you can checkout the command history.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. Create folders with reserved name
&lt;/h2&gt;

&lt;p&gt;What are name which we cannot use to make a folder.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;con&lt;/li&gt;
&lt;li&gt;aux&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;These are the by default reserved keyword in windows..&lt;br&gt;
but we can overwrite this by using command&lt;/p&gt;

&lt;p&gt;&lt;code&gt;md aux\&lt;/code&gt; - this will generate a aux folder.&lt;br&gt;
&lt;code&gt;md con\&lt;/code&gt; - this will generate a con folder.&lt;/p&gt;

&lt;h3&gt;
  
  
  8. View All installed Programs in the Command Prompt.
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;wmic product get name&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;this command will show you all the programs installed in your machine.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fmGhTyXD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5um8xoc6zwwpnbb0g4wy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fmGhTyXD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5um8xoc6zwwpnbb0g4wy.png" alt="Programs see using cmd" width="880" height="457"&gt;&lt;/a&gt;  &lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>commandprompt</category>
      <category>trick</category>
    </item>
    <item>
      <title>How to Store Images on GitHub ?</title>
      <dc:creator>NIKHIL GAUTAM</dc:creator>
      <pubDate>Sun, 28 Aug 2022 19:27:45 +0000</pubDate>
      <link>https://dev.to/nikhilgautam090696/how-to-store-images-on-github--3eib</link>
      <guid>https://dev.to/nikhilgautam090696/how-to-store-images-on-github--3eib</guid>
      <description>&lt;h5&gt;
  
  
  In this quick walk-through you'll learn how to create a separate branch in your repo to store your screenshots and demo gifs for use in your master's readme.
&lt;/h5&gt;

&lt;h4&gt;
  
  
  1. Clone a fresh copy of your repo
&lt;/h4&gt;

&lt;p&gt;In order to prevent any loss of work it is best to clone the repo in a separate location to complete this task.&lt;/p&gt;

&lt;h4&gt;
  
  
  2. Create a new branch
&lt;/h4&gt;

&lt;p&gt;Create a new branch in your repo by using &lt;code&gt;git checkout --orphan assets&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This will create and switch you to a new branch called "assets". The &lt;code&gt;--orphan&lt;/code&gt; flag creates a new branch but without any prior commits. However it does still keep the working tree and index. &lt;/p&gt;

&lt;h4&gt;
  
  
  3. Remove files from the working tree
&lt;/h4&gt;

&lt;p&gt;&lt;code&gt;git rm -rf .&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;THIS WILL DELETE ALL FILES THAT THE WORKING TREE RECOGNIZES&lt;/em&gt;&lt;/strong&gt; Any files that were not added to the tree will remain left behind in the folder.&lt;/p&gt;

&lt;p&gt;We remove all files from the working tree since we do not want anything but our screenshots and images in this branch.&lt;/p&gt;

&lt;p&gt;You can also check what branch you are on anytime by using &lt;code&gt;git branch&lt;/code&gt;. The branch with the &lt;code&gt;*&lt;/code&gt; next to it is the current branch.&lt;/p&gt;

&lt;h4&gt;
  
  
  4. Add your images and screenshots and commit the change
&lt;/h4&gt;

&lt;p&gt;&lt;code&gt;git add screenshot.png demo.gif logo.png&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;git commit -m "Added Assets"&lt;/code&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  4. Finally push your changes
&lt;/h4&gt;

&lt;p&gt;&lt;code&gt;git push origin assets&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Use the images in your README
&lt;/h2&gt;

&lt;p&gt;You can now use&lt;br&gt;
&lt;code&gt;![Demo Animation](../assets/demo.gif?raw=true)&lt;/code&gt;&lt;br&gt;
in your README to have the gif display on your master's readme.&lt;/p&gt;

</description>
      <category>github</category>
      <category>githunt</category>
      <category>beginners</category>
      <category>webdev</category>
    </item>
    <item>
      <title>React - Part(1)</title>
      <dc:creator>NIKHIL GAUTAM</dc:creator>
      <pubDate>Fri, 26 Aug 2022 21:03:00 +0000</pubDate>
      <link>https://dev.to/nikhilgautam090696/react-intro-83h</link>
      <guid>https://dev.to/nikhilgautam090696/react-intro-83h</guid>
      <description>&lt;p&gt;&lt;strong&gt;What is React?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open Source library for building user Interfaces&lt;/li&gt;
&lt;li&gt;Not a framework&lt;/li&gt;
&lt;li&gt;Focus on UI&lt;/li&gt;
&lt;li&gt;Rich ecosystem&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Why learn React?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Created and maintained by Facebook&lt;/li&gt;
&lt;li&gt;More than 100k stars on Github &lt;/li&gt;
&lt;li&gt;Huge Community &lt;/li&gt;
&lt;li&gt;In demand skillset&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Component Based Architecture&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;This lets you break down your Application into small encapsulated parts which can then be composed to make more complex UI's.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---JC12Uri--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9bdzk8czeyk0zrjckzp5.png" alt="React Architecture" width="405" height="510"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Reusable Code&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;you could have a component for an article on React the same article can be reused for angular &amp;amp; vue by passing the right data into the article component.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--i-uI4MKO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xtznidmzkg78apqefgrp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--i-uI4MKO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xtznidmzkg78apqefgrp.png" alt="reusability" width="880" height="437"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;React is declarative&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tell React what you want and React with it's react dom library will build the actual UI this is a declarative paradigm.&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;There are two types of paradigm&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Imperative &lt;/li&gt;
&lt;li&gt;Declarative&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;

&lt;p&gt;Let's understand it with a real life example.&lt;br&gt;
Let say you go to an artist you ask them to draw a landscape you don't tell them how to draw it it's up to them this is declarative. (you tell what has to be done and artist will get it done for you)&lt;br&gt;
now the same task you ask of a 5 yrs old child but this time you've to explicitly explain each step draw mountain,river,trees etc.. and best part is that you are in control of flow of landscape that is declarative paradigm. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;React will handle efficiently updating and rendering of the components.&lt;/li&gt;
&lt;li&gt;DOM updates are handles gracefully in React.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;More on Why React?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Seamless integrate react into any of your applications.&lt;/li&gt;
&lt;li&gt;Portion of your page or a complete page or even a entire application itself. &lt;/li&gt;
&lt;li&gt;React native for mobile applications.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Prequisites&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HTML ,CSS and JavaScript fundamentals &lt;/li&gt;
&lt;li&gt;ES6&lt;/li&gt;
&lt;li&gt;JavaScript - 'this' Keyword,filter,map and reduce&lt;/li&gt;
&lt;li&gt;ES6 - let &amp;amp; const ,arrow functions,template literals,default parameters,object literals,rest and spread operators and destructuring assignments.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/nikhilgautam090696/node-js-2k64"&gt;Node
&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/nikhilgautam090696/npm-55pl"&gt;NPM&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Let's get Started &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Install &lt;a href="https://nodejs.org/en/"&gt;node&lt;/a&gt; on your machine.&lt;/li&gt;
&lt;li&gt;Install IDE (&lt;a href="https://code.visualstudio.com/download"&gt;Vs code&lt;/a&gt;)&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>beginners</category>
      <category>react</category>
      <category>codenewbie</category>
    </item>
    <item>
      <title>JSON</title>
      <dc:creator>NIKHIL GAUTAM</dc:creator>
      <pubDate>Wed, 24 Aug 2022 17:33:00 +0000</pubDate>
      <link>https://dev.to/nikhilgautam090696/json-3c4e</link>
      <guid>https://dev.to/nikhilgautam090696/json-3c4e</guid>
      <description>&lt;h2&gt;
  
  
  What is JSON ?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;JavaScript Object Notation.&lt;/li&gt;
&lt;li&gt;Lightweight data-interchange format.&lt;/li&gt;
&lt;li&gt;Based on a subset of JavaScript.&lt;/li&gt;
&lt;li&gt;Easy to read and write.&lt;/li&gt;
&lt;li&gt;Often used with AJAX(Asynchronous JavaScript XML).&lt;/li&gt;
&lt;li&gt;Can be used with most modern languages.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Data Types
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Number&lt;/strong&gt; : No difference between integer and floats.&lt;br&gt;
&lt;strong&gt;String&lt;/strong&gt; : string of Unicode characters. Use double quotes.&lt;br&gt;
&lt;strong&gt;Boolean&lt;/strong&gt; : True or False.&lt;br&gt;
&lt;strong&gt;Array&lt;/strong&gt; : Ordered list of 0 or more values.&lt;br&gt;
&lt;strong&gt;Object&lt;/strong&gt; : Unordered collection of key/value pairs.&lt;br&gt;
&lt;strong&gt;Null&lt;/strong&gt; : Empty values.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;💡 &lt;strong&gt;Tip&lt;/strong&gt; One way to remember JSON-valid data types: &lt;strong&gt;BASONN&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Booleans&lt;/li&gt;
&lt;li&gt;Arrays&lt;/li&gt;
&lt;li&gt;Strings&lt;/li&gt;
&lt;li&gt;Objects&lt;/li&gt;
&lt;li&gt;Numbers&lt;/li&gt;
&lt;li&gt;Null&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  JSON Syntax Rules
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Use key/value pairs - {"name":"John"}&lt;/li&gt;
&lt;li&gt;Uses double quotes around KEY and VALUES.&lt;/li&gt;
&lt;li&gt;Must use the specific data types.&lt;/li&gt;
&lt;li&gt;File type is ".json".&lt;/li&gt;
&lt;li&gt;MIME type is "Application/json".&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  JSON Example
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;name&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;John&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;age&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;35&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;address&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:{&lt;/span&gt;
        &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;street&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;5 main street&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;city&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Boston&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
    &lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;children&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Michel&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Nick&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>api</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Markdown</title>
      <dc:creator>NIKHIL GAUTAM</dc:creator>
      <pubDate>Tue, 23 Aug 2022 09:38:00 +0000</pubDate>
      <link>https://dev.to/nikhilgautam090696/markdown-4ij0</link>
      <guid>https://dev.to/nikhilgautam090696/markdown-4ij0</guid>
      <description>&lt;h1&gt;
  
  
  Markdown
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;What is Markdown?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Markdown is a lightweight markup language for creating formatted text using a plain-text editor. and is kinda similar to HTML.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Why Should I learn this?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;After having a good understanding of Md you can build a good read me.md file for github,DEV community ..
&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Headings
&lt;/h1&gt;

&lt;p&gt;Below are 6 heading variations&lt;/p&gt;

&lt;h1&gt;
  
  
  Heading 1 [#]
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Heading 2 [##]
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Heading 3 [###]
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Heading 4 [####]
&lt;/h4&gt;

&lt;h5&gt;
  
  
  Heading 5 [#####]
&lt;/h5&gt;

&lt;h6&gt;
  
  
  Heading 6 [######]
&lt;/h6&gt;




&lt;h1&gt;
  
  
  Horizontal Rule
&lt;/h1&gt;

&lt;p&gt;This is a &lt;strong&gt;horizontal rule&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  use "[---]"
&lt;/h2&gt;

&lt;p&gt;It separates content&lt;/p&gt;




&lt;h1&gt;
  
  
  Text formatting
&lt;/h1&gt;

&lt;p&gt;Paragraph line spacing is important.&lt;/p&gt;

&lt;p&gt;use either * or _ at the begining or at the end. &lt;/p&gt;

&lt;p&gt;&lt;em&gt;italic text&lt;/em&gt; and &lt;em&gt;more italic text&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;_italic text_ and _more italic text_     

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;bold text&lt;/strong&gt; and &lt;strong&gt;more bold text&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;**bold text** and **more bold text**

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;*bold and italic text&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;**\*bold and italic text**

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;mix &lt;em&gt;and&lt;/em&gt; match&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;**mix _and_ match**

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;del&gt;strikethrough text&lt;/del&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;~~nikhil~~
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;del&gt;nikhil&lt;/del&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  List
&lt;/h1&gt;

&lt;h3&gt;
  
  
  Ordered List
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Item 1&lt;/li&gt;
&lt;li&gt;Item 2&lt;/li&gt;
&lt;li&gt;Item 3&lt;/li&gt;
&lt;li&gt;Item 3&lt;/li&gt;
&lt;li&gt;Item 3&lt;/li&gt;
&lt;li&gt;Item 3&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Markdown automatically take care of the order of list&lt;/p&gt;

&lt;p&gt;Unordered List&lt;/p&gt;

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

&lt;h1&gt;
  
  
  Code formatting
&lt;/h1&gt;

&lt;p&gt;Inline: Use JavaScript &lt;code&gt;map()&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;`map()`
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;we can highlight a specific part of code by using backticks&lt;/p&gt;

&lt;p&gt;Fenced code block&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;sum&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;b&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;a&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;b&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nx"&gt;sum&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;we can mention the programming language in code block  by simply mentioning the programming language after  backtick..&lt;br&gt;
for&lt;br&gt;
JavaScript (js)&lt;br&gt;
Python (py)&lt;br&gt;
typescript (ts)&lt;/p&gt;
&lt;h1&gt;
  
  
  Blockquote
&lt;/h1&gt;

&lt;blockquote&gt;
&lt;p&gt;This is a blockquote&lt;br&gt;
&lt;/p&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Nested blockquote
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;this is nested blockquote.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Some text&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;gt; this is nested blockquote.
&amp;gt;
&amp;gt; &amp;gt; Some text
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h1&gt;
  
  
  Task List
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;[x] Task 1&lt;/li&gt;
&lt;li&gt;[x] Task 2&lt;/li&gt;
&lt;li&gt;[] Task 3&lt;/li&gt;
&lt;li&gt;[] Task 4&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Callouts
&lt;/h1&gt;

&lt;blockquote&gt;
&lt;p&gt;💡 &lt;strong&gt;Tip&lt;/strong&gt; Here's an important tip to remember!&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;gt; :bulb: **Tip** Here's an important tip to remember!
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Links
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.linkedin.com/in/nikhilgautam1996/"&gt;Follow me on Linkedin&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Twitter&lt;/p&gt;

&lt;p&gt;&lt;a href="https://twitter.com/Nikhil09061996"&gt;Nikhil Gautam&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;for more &lt;a href="https://www.markdownguide.org/cheat-sheet/"&gt;Markdown&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>What is Model View Controller AKA MVC 🖥</title>
      <dc:creator>NIKHIL GAUTAM</dc:creator>
      <pubDate>Tue, 16 Aug 2022 19:34:00 +0000</pubDate>
      <link>https://dev.to/nikhilgautam090696/mvc-modern-view-controller-1d28</link>
      <guid>https://dev.to/nikhilgautam090696/mvc-modern-view-controller-1d28</guid>
      <description>&lt;p&gt;&lt;strong&gt;WHAT IS MVC?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Model View Controller&lt;/li&gt;
&lt;li&gt;Software Architectural Design Pattern&lt;/li&gt;
&lt;li&gt;One of the most frequent used patterns&lt;/li&gt;
&lt;li&gt;Seperates application functionality&lt;/li&gt;
&lt;li&gt;Promotes organized programming  &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UjbuN8px--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xsf3i0sp68pnn0yw936m.png" alt="MVC Diagram" width="279" height="273"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Some Web Framework That Use MVC Concepts&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Ruby on Rails (Ruby)&lt;/li&gt;
&lt;li&gt;Sinatr(Ruby)&lt;/li&gt;
&lt;li&gt;Laravel (PHP)&lt;/li&gt;
&lt;li&gt;Codeifniter(PHP)&lt;/li&gt;
&lt;li&gt;Zend(PHP)&lt;/li&gt;
&lt;li&gt;Express(JS)&lt;/li&gt;
&lt;li&gt;Backbone(JS)&lt;/li&gt;
&lt;li&gt;Angular(JS)&lt;/li&gt;
&lt;li&gt;Django(Python)&lt;/li&gt;
&lt;li&gt;Flask(Python)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Model&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Data related logic&lt;/li&gt;
&lt;li&gt;Interactions with database (SELECT,INSERT,UPDATE,DELETE)&lt;/li&gt;
&lt;li&gt;Communicates with controller &lt;/li&gt;
&lt;li&gt;Can sometimes update the view (Depends on framework)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;View&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What the end user sees (UI)&lt;/li&gt;
&lt;li&gt;Usually consists of HTML/CSS&lt;/li&gt;
&lt;li&gt;Communicates with the Controller&lt;/li&gt;
&lt;li&gt;Can be passed dynamic values from the controller&lt;/li&gt;
&lt;li&gt;Template Engines&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Controller&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Receives input (from view,url)&lt;/li&gt;
&lt;li&gt;Processes requests (GET,POST,PUT,DELETE)&lt;/li&gt;
&lt;li&gt;Gets data from the model&lt;/li&gt;
&lt;li&gt;Passes data to the view&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pNNxCmZ3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uoi92yomwww7qpg24td7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pNNxCmZ3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uoi92yomwww7qpg24td7.png" alt="Diagram of MVC" width="691" height="486"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>webdev</category>
      <category>programming</category>
    </item>
    <item>
      <title>URL(Uniform Resource Locators)</title>
      <dc:creator>NIKHIL GAUTAM</dc:creator>
      <pubDate>Mon, 15 Aug 2022 09:50:00 +0000</pubDate>
      <link>https://dev.to/nikhilgautam090696/urluniform-resource-locators-566c</link>
      <guid>https://dev.to/nikhilgautam090696/urluniform-resource-locators-566c</guid>
      <description>&lt;p&gt;&lt;strong&gt;What is a URL?&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;URL&lt;/strong&gt; stands for Uniform Resource Locator. A URL is nothing more than the address of a given unique resource on the Web.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;resources can be an HTML page, a CSS document, an image, etc.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Basics: anatomy of a URL&lt;/strong&gt;&lt;br&gt;
A URL is composed of different parts, some mandatory and others optional. The most important parts are highlighted on the URL below (details are provided in the following sections):&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--wDrAy90r--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4gz3lyqa37pj78dkw60c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--wDrAy90r--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4gz3lyqa37pj78dkw60c.png" alt="Image description" width="880" height="85"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scheme&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0pHjnZic--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/253ksjvaf0u34flucs0c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0pHjnZic--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/253ksjvaf0u34flucs0c.png" alt="Image description" width="787" height="140"&gt;&lt;/a&gt;&lt;br&gt;
The first part of the URL is the scheme, which indicates the protocol that the browser must use to request the resource (a protocol is a set method for exchanging or transferring data around a computer network). Usually for websites the protocol is HTTPS or HTTP (its unsecured version). Addressing web pages requires one of these two, but browsers also know how to handle other schemes such as mailto: (to open a mail client), so don't be surprised if you see other protocols.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Authority&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--sQ9TSAV3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ds4rhsboqepl4fufowyf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--sQ9TSAV3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ds4rhsboqepl4fufowyf.png" alt="Image description" width="880" height="137"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The domain indicates which Web server is being requested. Usually this is a domain name, but an IP address may also be used (but this is rare as it is much less convenient).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The port indicates the technical "gate" used to access the resources on the web server. It is usually omitted if the web server uses the standard ports of the HTTP protocol (80 for HTTP and 443 for HTTPS) to grant access to its resources. Otherwise it is mandatory.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Path to resource&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZXA5ZCW1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rm81ustxmzx681r7fdnq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZXA5ZCW1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rm81ustxmzx681r7fdnq.png" alt="Image description" width="880" height="140"&gt;&lt;/a&gt;&lt;br&gt;
/path/to/myfile.html is the path to the resource on the Web server. In the early days of the Web, a path like this represented a physical file location on the Web server. Nowadays, it is mostly an abstraction handled by Web servers without any physical reality.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Parameters&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--sH_HYoft--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0dpypughkzpy1rv1oh62.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--sH_HYoft--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0dpypughkzpy1rv1oh62.png" alt="Image description" width="880" height="140"&gt;&lt;/a&gt;&lt;br&gt;
?key1=value1&amp;amp;key2=value2 are extra parameters provided to the Web server. Those parameters are a list of key/value pairs separated with the &amp;amp; symbol. The Web server can use those parameters to do extra stuff before returning the resource. Each Web server has its own rules regarding parameters, and the only reliable way to know if a specific Web server is handling parameters is by asking the Web server owner.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Anchor&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zs0Btz7B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/11e14d9eg78h7o1sdxky.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zs0Btz7B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/11e14d9eg78h7o1sdxky.png" alt="Image description" width="880" height="140"&gt;&lt;/a&gt;&lt;br&gt;
SomewhereInTheDocument is an anchor to another part of the resource itself. An anchor represents a sort of "bookmark" inside the resource, giving the browser the directions to show the content located at that "bookmarked" spot. On an HTML document, for example, the browser will scroll to the point where the anchor is defined; on a video or audio document, the browser will try to go to the time the anchor represents. It is worth noting that the part after the #, also known as the fragment identifier, is never sent to the server with the request.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Absolute URLs vs relative URLs&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;An absolute URL contains all the information necessary to locate a resource.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A relative URL locates a resource using an absolute URL as a starting point. In effect, the "complete URL" of the target is specified by concatenating the absolute and relative URLs.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;An absolute URL uses the following format: scheme://server/path/resource&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A relative URL typically consists only of the path, and optionally, the resource, but no scheme or server. The following tables define the individual parts of the complete URL format.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;scheme&lt;br&gt;
Specifies how the resource is to be accessed.&lt;/p&gt;

&lt;p&gt;server&lt;br&gt;
Specifies the name of the computer where the resource is located.&lt;/p&gt;

&lt;p&gt;path&lt;br&gt;
Specifies the sequence of directories leading to the target. If resource is omitted, the target is the last directory in path.&lt;/p&gt;

&lt;p&gt;resource&lt;br&gt;
If included, resource is the target, and is typically the name of a file. It may be a simple file, containing a single binary stream of bytes, or a structured document, containing one or more storages and binary streams of bytes.&lt;/p&gt;

&lt;p&gt;Video tutorial: &lt;a href="https://youtu.be/5Jr-_Za5yQM"&gt;https://youtu.be/5Jr-_Za5yQM&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>HTTP</title>
      <dc:creator>NIKHIL GAUTAM</dc:creator>
      <pubDate>Mon, 15 Aug 2022 09:20:00 +0000</pubDate>
      <link>https://dev.to/nikhilgautam090696/http-6mi</link>
      <guid>https://dev.to/nikhilgautam090696/http-6mi</guid>
      <description>&lt;p&gt;&lt;strong&gt;WHAT IS HTTP ?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Hyper Text Transfer Protocol&lt;/li&gt;
&lt;li&gt;Communication between web servers &amp;amp; clients&lt;/li&gt;
&lt;li&gt;HTTP Request/Responses&lt;/li&gt;
&lt;li&gt;Loading pages, form submit, Ajax calls&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;HTTP IS STATELESS&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Every request is completely &lt;strong&gt;independent&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Similar to transactions&lt;/li&gt;
&lt;li&gt;Programming,Local Storages,Cookies,Sessions are used to create enchanced user experiences.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;WHAT IS HTTPS?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Hyper Text Transfer Protocol Secure&lt;/li&gt;
&lt;li&gt;Data sent is encrypted &lt;/li&gt;
&lt;li&gt;SSL/TLS &lt;/li&gt;
&lt;li&gt;Install certificate on web host&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;Protocol means "set of rules"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;SSL : SSL Stands for Secure Sockets Layer.&lt;/strong&gt;&lt;br&gt;
  &lt;strong&gt;TLS : TLS Stands for Transport Layer Security.&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;SSL is a protocol used to send information securely through the network. Websites use SSL to secure user account pages and for online checkouts. It encrypts the data to avoid a third party accessing the transmitting data. On the other hand, TLS protocol is a successor to SSL. It provides privacy, integrity, and protection to the data. It allows communication across the network without interference by eavesdropping and tampering. In brief, the TLS is more secure and efficient than the SSL.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;HTTP METHODS&lt;/strong&gt; &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;when a request is made to a server it has some kind of methods attached to it.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;GET - Retrives data from the server.&lt;/li&gt;
&lt;li&gt;POST - Submit data to the server.&lt;/li&gt;
&lt;li&gt;PUT - Update data already on the server.&lt;/li&gt;
&lt;li&gt;DELETE - Delete data from the server.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;HTTP HEADER FIELDS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;1.General: Request URL , Request Method , status code , Remote Address,Referrer Policy.&lt;/p&gt;

&lt;p&gt;2.Response: Server,Set Cookies ,Content-Type,Content-Length,Date.&lt;/p&gt;

&lt;p&gt;3.Request: Cookies,Accept-XXX,Content-Type,Authorization,User Agent ,Referrer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;General:&lt;/strong&gt;&lt;br&gt;
1.Request URL - contains the URL request you are requesting. &lt;br&gt;
2.Request Method - GET,POST,PUT &amp;amp; DELETE request &lt;br&gt;
3.Status Code - &lt;br&gt;
4.Remote Address - Ip of the remote computer.&lt;br&gt;
5.Referrer Policy - if you go from one page to another page&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Response:&lt;/strong&gt;&lt;br&gt;
1.Server - The Server header describes the software used by the origin server that handled the request — that is, the server that generated the response.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Set-Cookies- used for servers to send small pieces of data called cookies from the server to the client&lt;/li&gt;
&lt;li&gt;Content-Type- Every response has a content type If it's HTML = text/html , CSS = text/css, Images = image/png,image/jpeg ,JSON= Application/JSON
4.Content Length -  octets 8-bit bytes .
5.Date
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Request:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Cookies&lt;/li&gt;
&lt;li&gt;Accept -xxx
3.Content-Type
4.Content-Length
5.Authorization
6.User-Agent
7.Referrer&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;HTTP STATUS CODES&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Informational responses (100–199)&lt;/li&gt;
&lt;li&gt;Successful responses (200–299)&lt;/li&gt;
&lt;li&gt;Redirection messages (300–399)&lt;/li&gt;
&lt;li&gt;Client error responses (400–499)&lt;/li&gt;
&lt;li&gt;Server error responses (500–599)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Some Commonly Used Status Codes are:&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;200- OK&lt;br&gt;
201 -Ok created&lt;br&gt;
301-Moved to new URL&lt;br&gt;
304-Not modified (Cached version)&lt;br&gt;
400-Bad request &lt;br&gt;
401-Unauthorized &lt;br&gt;
404- Not found&lt;br&gt;
500-Internal server error&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;HTTP/2&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Major revision of HTTP&lt;/li&gt;
&lt;li&gt;Under the hood changes&lt;/li&gt;
&lt;li&gt;Respond with more data&lt;/li&gt;
&lt;li&gt;Reduce latency by enabling full request and response multiplexing.&lt;/li&gt;
&lt;li&gt;Fast,efficient &amp;amp; secure.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>programming</category>
      <category>codenewbie</category>
    </item>
    <item>
      <title>VS Code Tips &amp; Tricks &amp; Extensions</title>
      <dc:creator>NIKHIL GAUTAM</dc:creator>
      <pubDate>Fri, 12 Aug 2022 15:02:00 +0000</pubDate>
      <link>https://dev.to/nikhilgautam090696/must-have-vs-code-extensions-1fe</link>
      <guid>https://dev.to/nikhilgautam090696/must-have-vs-code-extensions-1fe</guid>
      <description>&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=formulahendry.code-runner"&gt;Code Runner&lt;/a&gt;&lt;/strong&gt; - Run your code with just one click. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer"&gt;Live Server Extension&lt;/a&gt;&lt;/strong&gt; - Each time you save your code, you’ll quickly see the progressions&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=xabikos.JavaScriptSnippets"&gt;JavaScript (ES6) Code Snippets&lt;/a&gt;&lt;/strong&gt; - This extension includes all code snippets for JavaScript programming in ES6 syntax for Vs Code editor.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=ecmel.vscode-html-css"&gt;HTML and CSS Support&lt;/a&gt;&lt;/strong&gt; -  HTML id and class with auto-complete functionalities for Visual Studio Code.
&lt;code&gt;You can see a rundown of id and class suggested ideas by pressing ctrl + space.&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=donjayamanne.jquerysnippets"&gt;jQuery Code Snippets&lt;/a&gt;&lt;/strong&gt; - provides Over 130 jQuery Code Snippets for JavaScript code. To use this extension effectively Just type the letters ‘jq’ in your code editor to get a list of all available jQuery Code Snippets.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=bradlc.vscode-tailwindcss"&gt;Tailwind CSS IntelliSense&lt;/a&gt;&lt;/strong&gt; - autocomplete, syntax highlighting, and linting.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=dsznajder.es7-react-js-snippets"&gt;ES7+ React/Redux/React-Native snippets&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=ms-vscode.live-server"&gt;Live Preview&lt;/a&gt;&lt;/strong&gt; - live preview for HTML&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=bierner.markdown-emoji"&gt;Markdown Emoji&lt;/a&gt;&lt;/strong&gt; - to add emoji &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=rangav.vscode-thunder-client"&gt;Thunder Client&lt;/a&gt;&lt;/strong&gt; - lightweight Rest API Client Extension (An alternative for Postman)&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker"&gt;Code Spell Checker&lt;/a&gt; - &lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  For Beautifying your Code
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=formulahendry.auto-rename-tag"&gt;Auto Rename Tag&lt;/a&gt;&lt;/strong&gt; - Automatically rename paired HTML/XML tag&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode"&gt;Prettier&lt;/a&gt;&lt;/strong&gt; – Code Formatter&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=aaron-bond.better-comments"&gt;Better Comments&lt;/a&gt;&lt;/strong&gt; -  Add meaningful comments..&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;[ * ] for highlighted text&lt;br&gt;
 [ ! ] for errors and warnings&lt;br&gt;
 [ ? ] for queries and questions&lt;br&gt;
[ // ] for strikethrough&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Themes :&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=akamud.vscode-theme-onedark"&gt;Atom One Dark Theme&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=dracula-theme.theme-dracula"&gt;Dracula&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=wesbos.theme-cobalt2"&gt;Cobalt2 Theme Official&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=zhuangtongfa.Material-theme"&gt;One Dark Pro&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=ahmadawais.shades-of-purple"&gt;Shades of Purple&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=whizkydee.material-palenight-theme"&gt;Palenight Theme&lt;/a&gt;
7.&lt;a href="https://marketplace.visualstudio.com/items?itemName=monokai.theme-monokai-pro-vscode"&gt;Monokai Pro&lt;/a&gt;
8.&lt;a href="https://marketplace.visualstudio.com/items?itemName=Equinusocio.vsc-material-theme"&gt;Material Theme&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Icons :&lt;br&gt;
1.&lt;a href="https://marketplace.visualstudio.com/items?itemName=PKief.material-icon-theme"&gt;Material Icon Theme&lt;/a&gt;&lt;br&gt;
2.&lt;a href="https://marketplace.visualstudio.com/items?itemName=vscode-icons-team.vscode-icons"&gt;vscode-icons&lt;/a&gt;&lt;br&gt;
3.&lt;a href="https://marketplace.visualstudio.com/items?&amp;lt;br&amp;gt;%0AitemName=jamesmaj.easy-icons"&gt;Easy icon theme&lt;/a&gt;&lt;br&gt;
4.&lt;a href="https://marketplace.visualstudio.com/items?itemName=be5invis.vscode-icontheme-nomo-dark"&gt;Nomo Dark Icon Theme&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Enable Emmet for JSX &amp;amp; Typescript&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Go to setting.json file and paste this code below.&lt;br&gt;
&lt;/p&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;"emmet.includeLanguages": {
    "javascript": "javascriptreact",
    "typescript": "typescriptreact"
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>vscode</category>
      <category>productivity</category>
      <category>tooling</category>
      <category>performance</category>
    </item>
    <item>
      <title>NPM</title>
      <dc:creator>NIKHIL GAUTAM</dc:creator>
      <pubDate>Wed, 10 Aug 2022 18:53:00 +0000</pubDate>
      <link>https://dev.to/nikhilgautam090696/npm-55pl</link>
      <guid>https://dev.to/nikhilgautam090696/npm-55pl</guid>
      <description>&lt;p&gt;&lt;strong&gt;npm&lt;/strong&gt; is the world's largest software registry. Open source developers from every continent use npm to share and borrow packages, and many organizations use npm to manage private development as well.&lt;/p&gt;

&lt;p&gt;npm consists of three distinct components:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;the website
2.the Command Line Interface (CLI)
3.the registry&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://classic.yarnpkg.com/en/"&gt;Yarn&lt;/a&gt; and &lt;a href="https://classic.yarnpkg.com/en/"&gt;pnpm&lt;/a&gt; are alternatives to npm cli. You can check them out as well.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;npm manages downloads of dependencies of your project.&lt;/p&gt;

&lt;p&gt;Installing all dependencies&lt;br&gt;
If a project has a package.json file, by running&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Installing a single package&lt;br&gt;
&lt;code&gt;npm install &amp;lt;package-name&amp;gt;&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Furthermore, since npm 5, this command adds  to the package.json file dependencies. Before version 5, you needed to add the flag --save.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;1.save-dev installs and adds the entry to the package.json file devDependencies&lt;br&gt;
2.no-save installs but does not add the entry to the package.json file dependencies&lt;br&gt;
3.save-optional installs and adds the entry to the package.json file optionalDependencies&lt;br&gt;
4.no-optional will prevent optional dependencies from being installed&lt;/p&gt;

&lt;p&gt;Shorthands of the flags can also be used:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;S: --save&lt;/li&gt;
&lt;li&gt;D: --save-dev&lt;/li&gt;
&lt;li&gt;O: --save-optional&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;The difference between devDependencies and dependencies is that the former contains development tools, like a testing library, while the latter is bundled with the app in production.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Where does npm install the packages?&lt;/strong&gt;&lt;br&gt;
When you install a package using npm you can perform 2 types of installation:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a local install&lt;/li&gt;
&lt;li&gt;a global install
By default, when you type an npm install command, like
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install lodash

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;the package is installed in the current file tree, under the &lt;strong&gt;node_modules&lt;/strong&gt; subfolder.&lt;br&gt;
As this happens, &lt;strong&gt;npm&lt;/strong&gt; also adds the &lt;strong&gt;lodash&lt;/strong&gt; entry in the dependencies property of the &lt;strong&gt;package.json&lt;/strong&gt; file present in the current folder.&lt;/p&gt;

&lt;p&gt;A global installation is performed using the &lt;strong&gt;-g flag&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm install -g lodash&lt;br&gt;
&lt;/code&gt;&lt;br&gt;
When this happens, npm won't install the package under the local folder, but instead, it will use a global location.&lt;/p&gt;

&lt;p&gt;Where, exactly?&lt;/p&gt;

&lt;p&gt;The &lt;strong&gt;npm root -g&lt;/strong&gt; command will tell you where that exact location is on your machine.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The package.json guide&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;dependencies&lt;/strong&gt;&lt;br&gt;
Sets a list of npm packages installed as dependencies.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;devDependencies&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sets a list of npm packages installed as development dependencies.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;They differ from dependencies because they are meant to be installed only on a development machine, not needed to run the code in production.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;The package-lock.json file&lt;/strong&gt;&lt;br&gt;
The goal of package-lock.json file is to keep track of the exact version of every package that is installed so that a product is 100% reproducible in the same way even if packages are updated by their maintainers.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;This solves a very specific problem that package.json left unsolved. In package.json you can set which versions you ca&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;We installed express, which depends on accepts,"array-flatten","body-parser","content-disposition and these packages require some other packages &lt;/p&gt;

&lt;p&gt;So, In a nutshell if we install an package and that package in turn,  require other packages, so those packages are stored in package-lock.json.&lt;/p&gt;

</description>
      <category>node</category>
      <category>react</category>
      <category>nextjs</category>
      <category>beginners</category>
    </item>
    <item>
      <title>API(Application Programming Interface)</title>
      <dc:creator>NIKHIL GAUTAM</dc:creator>
      <pubDate>Sun, 07 Aug 2022 18:29:00 +0000</pubDate>
      <link>https://dev.to/nikhilgautam090696/apiapplication-programming-interface-5f31</link>
      <guid>https://dev.to/nikhilgautam090696/apiapplication-programming-interface-5f31</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Connectivity is an Amazing thing by now we're all used to the instant connectivity that puts the world at our fingerprint from desktops to the mobile devices we can purchase (Online Shopping) post(Facebook ,Instagram) anything from anywhere we are connected to the world and each other like never before, but how does it happen , how does data get from here to there how do different devices and application connect with each other to allow us to place an order make a reservation or book a flight with just a few types of things the unsung hero of our connected world is the API it's the engine under the hood &amp;amp;  is behind the scenes that we take for granted but it's what makes possible all the interactivity we've come to expect and rely upon but exactly What's an API?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  What is an API ?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Application programming interface&lt;/li&gt;
&lt;li&gt;Information/contract provided by one piece of software to another.&lt;/li&gt;
&lt;li&gt;Structured request and response.&lt;/li&gt;
&lt;li&gt;APIs are everywhere.&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;To speak plainly, an API is the messenger that runs and delivers your request to the provider you’re requesting it from, and then delivers the response back to you.&lt;/p&gt;

&lt;p&gt;Let's say you want to go to the America and you prefer to go by air. So you start searching for airline flights online.&lt;br&gt;
In order to book your flight, you interact with the airline’s website to access the airline’s database to see if any seats are available on those dates, and what the cost might be based on certain variables.&lt;br&gt;
But, what if you are not using the airline’s website, which has direct access to the information? What if you are using online travel service that aggregates information from many different airlines? Just like a human interacts with the airline’s website do to get that information, that's API's comes into the picture.&lt;br&gt;
The API is the interface that, like your helpful &lt;strong&gt;travel service&lt;/strong&gt;, that runs and delivers the data from that online travel service to the airline’s systems over the Internet. &lt;br&gt;
And through each step of the process it facilitates that interaction between the travel service and the airline’s systems from seat selection to payment and booking. &lt;br&gt;
So now you can see that it’s APIs that make it possible for us all to use travel sites. They interface with with airlines’ APIs to gather information in order to present options back to us.&lt;br&gt;
The same goes for all interactions between applications, data and devices - they all have API’s that allow computers to operate them, and that's what ultimately creates connectivity.&lt;/p&gt;

&lt;p&gt;API’s provide a standard way of accessing any application, data or device whether it is shopping from your phone, or accessing cloud applications at work.&lt;br&gt;
So, whenever you think of an API, just think of it as your waiter running back and forth between applications, databases and devices to deliver data and create the connectivity that puts the world at our fingertips.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PzOdQzVV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4ir46m4ysd1cstmvd4b5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PzOdQzVV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4ir46m4ysd1cstmvd4b5.png" alt="API" width="880" height="271"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What is REST?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Representational State Transfer or Restful Services.&lt;/li&gt;
&lt;li&gt;Architecture style for designing networked applications.&lt;/li&gt;
&lt;li&gt;Relies on a stateless,client-server protocol, almost always HTTP.&lt;/li&gt;
&lt;li&gt;Treats server objects as resources that can be created or destroyed.&lt;/li&gt;
&lt;li&gt;Can be used by virtually any programming language.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  HTTP Methods
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;GET&lt;/strong&gt; - Retrieve data from a specified resource.&lt;br&gt;
&lt;strong&gt;POST&lt;/strong&gt; - Submit data to be processed to a specified resource.&lt;br&gt;
&lt;strong&gt;PUT&lt;/strong&gt; -  Update a specified resource.&lt;br&gt;
&lt;strong&gt;DELETE&lt;/strong&gt; - Delete a specified resource.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;HEAD&lt;/strong&gt; - Same as get but does not return a body.&lt;br&gt;
&lt;strong&gt;OPTIONS&lt;/strong&gt; - Returns the supported HTTP methods.&lt;br&gt;
&lt;strong&gt;PATCH&lt;/strong&gt; - Update partial resources.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Endpoints
&lt;/h2&gt;

&lt;p&gt;The URI/URL where api/service can be accessed by a client application &lt;/p&gt;

&lt;h2&gt;
  
  
  Authentication
&lt;/h2&gt;

&lt;p&gt;Some API's require authentication to use their service. This could be free or paid.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Node Js</title>
      <dc:creator>NIKHIL GAUTAM</dc:creator>
      <pubDate>Sun, 07 Aug 2022 18:18:00 +0000</pubDate>
      <link>https://dev.to/nikhilgautam090696/node-js-2k64</link>
      <guid>https://dev.to/nikhilgautam090696/node-js-2k64</guid>
      <description>&lt;p&gt;&lt;strong&gt;WHAT IS NODE JS?&lt;/strong&gt;&lt;br&gt;
 Node.js is an Open source, cross-platform web application JavaScript runtime environment built on Google Chrome’s V8 JavaScript engine. &lt;br&gt;
Node.js comes with a runtime environment on which a JavaScript-based script can be interpreted and executed. This runtime allows running a JavaScript code outside of a browser.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prequisite: (It may help to learn these first)&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;HTTP (status codes,headers,etc)&lt;/li&gt;
&lt;li&gt;JSON&lt;/li&gt;
&lt;li&gt;Arrow Function&lt;/li&gt;
&lt;li&gt;Promises&lt;/li&gt;
&lt;li&gt;MVC Pattern (Modern view Control )&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;WHY USE NODE?&lt;/strong&gt;&lt;br&gt;
Some of the advantages of Node.js include:&lt;br&gt;
a) Node.js library is very fast as it is built on Google Chrome’s V8 JavaScript engine.&lt;/p&gt;

&lt;p&gt;b) All APIs in the Node.js library are asynchronous, which means a Node.js based server never waits for an API to return data rather, it moves to the next API after calling it.&lt;br&gt;
c) Node.js uses a single-threaded model with the event looping. The event mechanism helps the server respond in a non-blocking way which makes the server highly scalable.&lt;/p&gt;

&lt;p&gt;d) Node.js is portable. It is available in different operating systems like Windows, Linux, macOS, Solaris, freeBSD etc.&lt;/p&gt;
&lt;h2&gt;
  
  
  Flow diagram of Node.js?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pnYmNP6---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eh251jh8iqtp4byrpc2u.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pnYmNP6---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eh251jh8iqtp4byrpc2u.jpg" alt="working of node" width="880" height="493"&gt;&lt;/a&gt;&lt;br&gt;
The above diagram states that &lt;/p&gt;

&lt;p&gt;a) The clients send requests to the webserver to interact with the web application. The requests can be blocking or non-blocking.&lt;/p&gt;

&lt;p&gt;b) After receiving all the requests, js add those requests to the event queue.&lt;/p&gt;

&lt;p&gt;c) After that, the requests are passed through the event loop. It also checks if the requests require any external resources.&lt;/p&gt;

&lt;p&gt;d) The event loop processes the non-blocking requests and returns the responses.&lt;/p&gt;

&lt;p&gt;e) For a blocking request, a single thread from the thread pool is assigned. This thread is responsible for completing a particular blocking request by accessing external resources like computation, database, file system etc.&lt;/p&gt;

&lt;p&gt;f) After completing the task, the response is sent back to the event loop that sends the response back to the client.&lt;br&gt;
&lt;strong&gt;NON - BLOCKING I/O&lt;/strong&gt;&lt;br&gt;
    1.  Works on a single thread using non-blocking I/O calls.&lt;br&gt;
    2.Supports tens of thousands concurrent connections.&lt;br&gt;
    3.Optimizes throughput &amp;amp; scalability in apps with many I/O operations.&lt;br&gt;
    4.All of this makes Node.js apps very fast &amp;amp; efficient.&lt;/p&gt;
&lt;h3&gt;
  
  
  What is REPL in the context of Node?
&lt;/h3&gt;

&lt;p&gt;The REPL stands for &lt;strong&gt;R&lt;/strong&gt;ead &lt;strong&gt;E&lt;/strong&gt;val &lt;strong&gt;P&lt;/strong&gt;rint &lt;strong&gt;L&lt;/strong&gt;oop.&lt;br&gt;
REPL represents a computer console where a command is given, and the system responds with an output.&lt;/p&gt;

&lt;p&gt;Node.js also comes with a REPL environment which is described below,&lt;br&gt;
a) &lt;strong&gt;Read&lt;/strong&gt;: Read and parse the input.&lt;br&gt;
b) &lt;strong&gt;Eval&lt;/strong&gt;: Evaluates the data structure.&lt;br&gt;
c) &lt;strong&gt;Print&lt;/strong&gt;: Prints the result.&lt;br&gt;
d) &lt;strong&gt;Loop&lt;/strong&gt;: Loops the above command until the user terminates.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;BEST TYPES OF PROJECTS FOR NODE&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;REST API &amp;amp; Microservices.&lt;/li&gt;
&lt;li&gt;Real Time Services(Chat,Live Updates)&lt;/li&gt;
&lt;li&gt;CRUD Apps - Blogs,Shopping Carts, Social Networks.&lt;/li&gt;
&lt;li&gt;Tools &amp;amp; Utilities.&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;NOT GOOD For - Anything that is not CPU intensive.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;NPM - NODE PACKAGE MANAGER&lt;/strong&gt;&lt;br&gt;
1.Install 3rd party packages (framework,libraries,tools,etc)&lt;br&gt;
2.Packages get stored in the "node_mosules" folder.&lt;br&gt;
3.All dependencies are listed in a "package.json" file.&lt;br&gt;
4.NPM scripts can be created to run certain tasks such as run a server.&lt;/p&gt;

&lt;p&gt;npm init             -----    Generates a package.json file&lt;br&gt;
   npm install express    -----  Install a package locally&lt;br&gt;
   npm install -D nodemon  ---- Install as a dev dependency &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Make these changes to your package.json file to work with nodemon.&lt;br&gt;
&lt;/p&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;scripts&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;dev&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;nodemon server&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;npm run dev&lt;/code&gt; --- run this command to start your Server. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Package.json&lt;/strong&gt;: The package.json file is kind of a manifest for your project. It can do a lot of things, completely unrelated. It's a central repository of configuration for tools, for example. It's also where npm and yarn store the names and versions for all the installed packages.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Express&lt;/strong&gt; : Express is a fast, unopinionated and minimalist web framework for Node.js.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Nodemon&lt;/strong&gt; : Nodemon is a tool that helps develop Node.js based applications by automatically restarting the node application when file changes in the directory are detected.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Node Modules&lt;/strong&gt;&lt;br&gt;
-Node Core Modules(path,fs,http,etc)&lt;br&gt;
-3rd party modules/packages installed via NPM&lt;br&gt;
-Custom modules (files)&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;   &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;path&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;path&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;myFile&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;./myFile&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Module Wrapper Function&lt;/strong&gt; :NodeJS does not run our code directly, Under the hood it wraps the entire code inside a function before execution. This function is termed as Module Wrapper Function.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;exports&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;require&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;module&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;__filename&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;__dirname&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="c1"&gt;//module code&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It provides some global-looking variables that are specific to the module, such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The module and exports object that can be used to export values from the module.&lt;/li&gt;
&lt;li&gt;The variables like  __filename and __dirname, that tells us the module’s absolute filename and its directory path.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Build an HTTP Server&lt;/strong&gt;&lt;br&gt;
Here is a sample Hello World HTTP web server:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;http&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;http&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;port&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PORT&lt;/span&gt; &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="mi"&gt;3000&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;server&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;http&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;createServer&lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="nx"&gt;req&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;res&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;res&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;statusCode&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt;
  &lt;span class="nx"&gt;res&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;setHeader&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Content-Type&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;text/html&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="nx"&gt;res&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;end&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;&amp;lt;h1&amp;gt;Hello, World!&amp;lt;/h1&amp;gt;&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;})&lt;/span&gt;

&lt;span class="nx"&gt;server&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;listen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;port&lt;/span&gt;&lt;span class="p"&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;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`Server running at port &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;port&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&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;



</description>
      <category>node</category>
      <category>beginners</category>
      <category>tutorial</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
