<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: iFTekhar</title>
    <description>The latest articles on Forem by iFTekhar (@iftekhs).</description>
    <link>https://forem.com/iftekhs</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%2F599851%2Ff18e3c1e-468d-42a5-9819-25bf538306f3.png</url>
      <title>Forem: iFTekhar</title>
      <link>https://forem.com/iftekhs</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/iftekhs"/>
    <language>en</language>
    <item>
      <title>10 HTML tags and attributes maybe you didn't know!😶</title>
      <dc:creator>iFTekhar</dc:creator>
      <pubDate>Tue, 23 Mar 2021 16:12:41 +0000</pubDate>
      <link>https://forem.com/iftekhs/10-html-tags-and-attributes-maybe-you-didn-t-know-ake</link>
      <guid>https://forem.com/iftekhs/10-html-tags-and-attributes-maybe-you-didn-t-know-ake</guid>
      <description>&lt;p&gt;In this article, I am going to show some HTML tags and attributes maybe you didn't know so, enjoy guys!&lt;/p&gt;

&lt;p&gt;Some examples were taken from W3school's&lt;/p&gt;


&lt;h2&gt;1)2 Submit buttons in 1 form!🤯&lt;h2&gt;

&lt;/h2&gt;
&lt;/h2&gt;
&lt;p&gt;Did you know you can have 2 submit buttons in 1 form?&lt;br&gt;
you can use the formaction attribute in order to specify which button will submit to which page.&lt;/p&gt;

&lt;p&gt;It can be very useful in some cases.&lt;/p&gt;

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


&lt;h2&gt;2)The &lt;code&gt;template&lt;/code&gt; Tag&lt;h2&gt;

&lt;/h2&gt;
&lt;/h2&gt;
&lt;p&gt;You can use the &lt;code&gt;template&lt;/code&gt; tag in order to hide some content from the user when the page loads.&lt;/p&gt;

&lt;p&gt;You can then use some javascript to show the content later on.&lt;/p&gt;

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

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


&lt;h2&gt;3)The wbr tag&lt;h2&gt;

&lt;/h2&gt;
&lt;/h2&gt;
&lt;p&gt;Sometimes the browser automatically breaks long word in an incorrect position so you can use the wbr tag in order to tell the browser where it is safe to break the line&lt;/p&gt;

&lt;p&gt;it is not going to break any line but it will let the browser know is it safe to break the line there.&lt;/p&gt;

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


&lt;h2&gt;4)The contenteditable attribute&lt;h2&gt;

&lt;/h2&gt;
&lt;/h2&gt;
&lt;p&gt;You can use the contenteditable attribute in order to enable the user to edit the content or disable the user to edit the content.&lt;/p&gt;

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

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


&lt;h2&gt;5)The colspan attribute&lt;h2&gt;

&lt;/h2&gt;
&lt;/h2&gt;
&lt;p&gt;You can use the colspan attribute in a td tag in order to tell that specific td how many columns it should take from the table row.&lt;/p&gt;

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

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


&lt;h2&gt;6)The meter tag&lt;h2&gt;

&lt;/h2&gt;
&lt;/h2&gt;
&lt;p&gt;The  tag defines a scalar measurement within a known range, or a fractional value. This is also known as a gauge.&lt;/p&gt;

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

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


&lt;h2&gt;7)The Title attribute&lt;h2&gt;

&lt;/h2&gt;
&lt;/h2&gt;
&lt;p&gt;You can use the title attribute in an element that shows more info about the content as a tooltip&lt;/p&gt;

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

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


&lt;h2&gt;8)The picture tag&lt;h2&gt;

&lt;/h2&gt;
&lt;/h2&gt;
&lt;p&gt;You can use the picture tag to show different images for different window sizes.&lt;/p&gt;

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


&lt;h2&gt;9)The blockquote tag&lt;h2&gt;

&lt;/h2&gt;
&lt;/h2&gt;
&lt;p&gt;The &lt;/p&gt;
&lt;blockquote&gt; tag specifies a section that is quoted from another source.

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

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



&lt;h2&gt;10)The multiple attribute&lt;h2&gt;

&lt;/h2&gt;

&lt;/h2&gt;


&lt;p&gt;You can use the multiple attribute in order to let the input take multiple values.&lt;/p&gt;

&lt;p&gt;You can also use the multiple attribute in a select tag.&lt;/p&gt;

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

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

&lt;p&gt;That was it! Thank you for reading my article hope this helps you and let me know if you like this little article of mine. Thank you so much for reading this!🙂  &lt;/p&gt;


&lt;/blockquote&gt;

</description>
      <category>html</category>
      <category>webdev</category>
      <category>tutorial</category>
      <category>codenewbie</category>
    </item>
    <item>
      <title>What is JWT? How does it work? Why JWT?</title>
      <dc:creator>iFTekhar</dc:creator>
      <pubDate>Mon, 22 Mar 2021 10:46:09 +0000</pubDate>
      <link>https://forem.com/iftekhs/all-you-need-to-know-about-jwt-3njh</link>
      <guid>https://forem.com/iftekhs/all-you-need-to-know-about-jwt-3njh</guid>
      <description>&lt;p&gt;Hey in this blog I will briefly explain what is JWT? how does it work? and why JWT? So keep reading thoroughly.&lt;/p&gt;

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

&lt;p&gt;🔴 What is JWT?&lt;br&gt;
JWT stands for “ JSON web token ” it is an open standard (RFC 7519) that defines a compact and self-contained way for securely transmitting information between parties as a JSON object.&lt;br&gt;
JWT is simply a token that is written in JSON format. It is really safe to use because it can be signed in using a secret (with the HMAC algorithm) or a public/private key pair using RSA or ECDSA.&lt;/p&gt;

&lt;p&gt;🔴How does JWT work?&lt;br&gt;
JWT contains 3 parts 1) The header 2) The payload 3) The signature&lt;/p&gt;

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

&lt;p&gt;The header of the JWT token is just some metadata for the token such as the algorithm name and type.&lt;/p&gt;

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

&lt;p&gt;The payload is some data that you can encode into the jwt which will be saved in the token payload and later you can use those unique data to identify the specific user. The more data you add the bigger the jwt token will be.&lt;/p&gt;

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

&lt;p&gt;And keep in mind that the header and the payload will get added as an encoded plain text but it is not going to get encrypted so anyone can decode them so we cannot save any sensitive data in the payload.&lt;br&gt;
The secret is created with the header, the payload, and the secret that is stored on the server and this will process the signing JWT.&lt;/p&gt;

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

&lt;p&gt;So, the signing algorithm is just an algorithm of JWT to verify if the token is correct. The signing algorithm creates a unique signature using the header, payload, and the secret, and only these data + the secret saved in your server can create this signature. Then this signature and header+payload forms the JWT Token which then is sent to the client&lt;/p&gt;

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

&lt;p&gt;So, how does this process really work?&lt;br&gt;
First, a user sends a post request to the server with the username and the password. Then the server checks the username and password is valid if this information is valid a JWT Token is formed and then gets send to the client and save in a cookie.&lt;/p&gt;

&lt;p&gt;Now every time the server receives a JWT Token and grant the user access to the protected page it needs to verify the JWT Token in order to determine if the user really is the user he/she claims to be. In other words, it's gonna check that if no one manipulated the header and the payload data of the token. So it is gonna make sure that no 3rd party has manipulated the header and the payload data.&lt;/p&gt;

&lt;p&gt;So how does the verification work? Well, whenever a JWT Token is received the verification method will take the header+paylaod and add the secret to it which is still on your server so no one can manipulate your secret, and then create a Test signature. and the original signature still remains on the JWT Token itself so now the Verification will compare the Test Signature with the original signature and if these two matched then that means the Token was not modified so the verification method will be successful but if it didn't match then that means someone did something with the Token so the verification method will fail.&lt;/p&gt;

&lt;p&gt;🔴 Why JWT?&lt;br&gt;
There are lots of reasons why you should use jwt but mostly you're going to choose it because of its simplicity and secure approach. The JWT token is also stateless which is just enough good for a restful API.&lt;br&gt;
So that was the little blog I hope it helped you understand What is JWT? How does it work? Why choose it?&lt;br&gt;
Thank you for reading…🙂     &lt;/p&gt;

</description>
      <category>javascript</category>
      <category>tutorial</category>
      <category>webdev</category>
      <category>jwt</category>
    </item>
    <item>
      <title>Awesome Uniquee 5 HTML tags and attributes</title>
      <dc:creator>iFTekhar</dc:creator>
      <pubDate>Sat, 20 Mar 2021 15:45:24 +0000</pubDate>
      <link>https://forem.com/iftekhs/awesome-5-html-tags-and-attributes-3gjf</link>
      <guid>https://forem.com/iftekhs/awesome-5-html-tags-and-attributes-3gjf</guid>
      <description>&lt;p&gt;Hey in this article I am about to show you some awesome tags and attribute in HTML that can help you a lot in some cases. enjoy guys!&lt;/p&gt;

&lt;h2&gt;1) The defer attribute &lt;/h2&gt;

&lt;p&gt;You might want to tell the browser to load your HTML DOM first them the javascript scripts. well, that is really easy to do by using the &lt;code&gt; defer &lt;/code&gt; attribute in the script tag.&lt;/p&gt;

&lt;p&gt;It tells the browser to load the HTML DOM first and not wait for the javascript scripts to load.&lt;/p&gt;

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

&lt;h2&gt;2) The Ordered list starting value&lt;/h2&gt;
 

&lt;p&gt;I'm sure you have used or heard about the li tag. it makes a list with nice-looking order numbers such as 1. , 2. ... But you can also change this order number and can put a starting attribute in order to tell the ol from which number it should start listing &lt;/p&gt;

&lt;p&gt;You can also use the value attribute on the li tag in order to give it a specific order number.&lt;/p&gt;

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

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

&lt;h2&gt;3) The details tag &lt;/h2&gt;

&lt;p&gt;In HTML there is a tag called details tag which you can use in order to specify additional details that the user can open and close on demand.&lt;/p&gt;

&lt;p&gt;which means you can put some details on the details tag and it would only show the heading and when the user opens the full details tag then the user can see all details inside the details tag&lt;/p&gt;

&lt;p&gt;I know you got confused by what I wrote so there is an example below from which you will understand completely what I was saying.&lt;/p&gt;

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

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

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

&lt;h2&gt;4) Sending mail using HTML &lt;/h2&gt;

&lt;p&gt;Now you guys are going crazy by reading the title and thinking that this guy is crazy. But actually, you really can make functionality to allow the users to send mail using HTML.&lt;/p&gt;

&lt;p&gt;When the user clicks that link a user will get a popup from which the user can choose from which service the user wants to send the mail from then after selecting the service such as Gmail the user will be redirected to Gmail (or other services) compose with the details that are provided on the link.&lt;/p&gt;

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

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

&lt;h2&gt;5) The required attribute &lt;/h2&gt;

&lt;p&gt;Maybe most of you know this about the required attribute but it is easy to forget.&lt;br&gt;
instead of using javascript and if statements and all those fancy stuff you can just put the required attribute on the input to make it a required field.&lt;/p&gt;

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

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

</description>
      <category>html</category>
      <category>tutorial</category>
      <category>codenewbie</category>
      <category>webdev</category>
    </item>
    <item>
      <title>4 things you might not know about javascript.</title>
      <dc:creator>iFTekhar</dc:creator>
      <pubDate>Fri, 19 Mar 2021 15:55:53 +0000</pubDate>
      <link>https://forem.com/iftekhs/5-things-you-might-not-know-about-javascript-488</link>
      <guid>https://forem.com/iftekhs/5-things-you-might-not-know-about-javascript-488</guid>
      <description>&lt;p&gt;Hey in this article I am going to be showing some unique things that you may not know about javascript! enjoy guys!&lt;/p&gt;

&lt;h2&gt; 1) The -0 &lt;/h2&gt;

&lt;p&gt;Did you know that javascript has a -0 number? we actually use the +0 number as default but you know what they return 0 anyway so both of them are equal.&lt;/p&gt;

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

&lt;h2&gt;2) NaN (Not a number) is a special number! &lt;/h2&gt;

&lt;p&gt;If you didn't know NaN is actually a special number. if you don't believe me just use the code that is given below and you would be surprised!&lt;/p&gt;

&lt;p&gt;One more weird and interesting thing about this is NaN is not equal to itself meaning &lt;code&gt; NaN !== NaN &lt;/code&gt;&lt;/p&gt;

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

&lt;h2&gt; 3) Setting and reading the urlparams using searchParams &lt;/h2&gt;

&lt;p&gt;You can use the &lt;code&gt; search params &lt;/code&gt; to get the value of any param and also you can set a param with a value using this.&lt;/p&gt;

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

&lt;h2&gt; 4) Some cool icons using HTML Entity &lt;/h2&gt;

&lt;p&gt;There are some basic icons that you might wanna use in your site so instead of importing font and do all those time-consuming things&lt;/p&gt;

&lt;p&gt;you can use some cool icons using the HTML Entity some examples are given below&lt;/p&gt;

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

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

&lt;p&gt;That was it! Thank you for reading my article hope you enjoyed it and let me know if you like this little article of mine. Thank you so much for reading this!🙂&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>codenewbie</category>
      <category>tutorial</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Awesome 5 javascript Shorthands</title>
      <dc:creator>iFTekhar</dc:creator>
      <pubDate>Fri, 19 Mar 2021 13:51:57 +0000</pubDate>
      <link>https://forem.com/iftekhs/awesome-5-javascript-shorthands-41h2</link>
      <guid>https://forem.com/iftekhs/awesome-5-javascript-shorthands-41h2</guid>
      <description>&lt;p&gt;In this blog, I have shared 5 awesome shorthand tricks to make a developer's life faster!&lt;/p&gt;

&lt;h2&gt;1) Setting the variables values&lt;/h2&gt;

&lt;p&gt;Normally you would define a variable then say x = value and if you have lots of variables (obviously) then it could take more time.&lt;/p&gt;

&lt;p&gt;So you can simply define variables inside a set of square brackets then put the values on another set of square brackets like this.&lt;/p&gt;

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

&lt;h2&gt;2) Using Double Bitwise NOT operator instead of &lt;code&gt; Math.floor() &lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;Well you might have surely used &lt;code&gt; Math.floor() &lt;/code&gt; to get rid of the decimal points but there is an easier way of doing the same operation using the Double Bitwise  NOT operator it performs the same operation much faster.&lt;/p&gt;

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

&lt;h2&gt;3) For loop short hand &lt;/h2&gt;

&lt;p&gt;Instead of using a for-loop like the way we usually use you can just simply do this. &lt;/p&gt;

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

&lt;h2&gt;4) The logical AND operator &lt;/h2&gt;

&lt;p&gt;Suppose you want to call a function if one condition or statement is true or false. you would say &lt;code&gt;if(something)&lt;/code&gt; then call function but instead of doing that there is a really better way of doing it which is to say &lt;code&gt;something &amp;amp;&amp;amp; callFunction()&lt;/code&gt; which means if the something is true then that function is going to be called.&lt;/p&gt;

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

&lt;h2&gt;5) Turning array into object&lt;/h2&gt;

&lt;p&gt;You might do a lot of things in order to just turn an array into an object. but the simplest way I think is to use the so-called spread operator or the  ... operator &lt;/p&gt;

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

&lt;p&gt;That was it! Thank you for reading my blog hope this makes your developing life fast and let me know if you like this little blog of mine. Thank you so much for reading this!🙂&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>codenewbie</category>
      <category>tutorial</category>
      <category>codequality</category>
    </item>
  </channel>
</rss>
