<?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: Jyotishman Saikia</title>
    <description>The latest articles on Forem by Jyotishman Saikia (@jyotishman).</description>
    <link>https://forem.com/jyotishman</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%2F184148%2F99527a9f-2324-4916-8438-450ce2210cbb.jpeg</url>
      <title>Forem: Jyotishman Saikia</title>
      <link>https://forem.com/jyotishman</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/jyotishman"/>
    <language>en</language>
    <item>
      <title>GPL: The Code Cancer</title>
      <dc:creator>Jyotishman Saikia</dc:creator>
      <pubDate>Tue, 16 Jan 2024 17:40:45 +0000</pubDate>
      <link>https://forem.com/jyotishman/gpl-the-code-cancer-488p</link>
      <guid>https://forem.com/jyotishman/gpl-the-code-cancer-488p</guid>
      <description>&lt;p&gt;From the title, you might be wondering exactly what GPL is. GPL is a type of open source software licence that stands for General Public Licence.&lt;/p&gt;

&lt;p&gt;Open source software licences are of many types, like the GNU General Public Licence, MIT Licence, Apache Licence, etc.&lt;/p&gt;

&lt;p&gt;In this article, I will be explaining only about &lt;code&gt;GNU General Public Licence&lt;/code&gt; and the benefits and harmful features of having it.&lt;/p&gt;

&lt;p&gt;The basic definition of GNU General Public Licence, or simply GPL, is a licence that ensures that everyone has the right to &lt;code&gt;use&lt;/code&gt;, &lt;code&gt;study&lt;/code&gt;, &lt;code&gt;share&lt;/code&gt; , &lt;code&gt;modify&lt;/code&gt; the software.&lt;/p&gt;

&lt;p&gt;The GPL encourages the use, modification, and sharing of software, but there is a catch.&lt;/p&gt;

&lt;p&gt;Whatever you build using GPL code, you have to share it under the same licence or a similar one. That's the cancerous property GPL has.&lt;/p&gt;

&lt;p&gt;This simply means that if you have used GPL code in your commercial project, you must also make the source code of your entire project available under the GPL. This is known as the "viral" nature of the GPL.&lt;/p&gt;

&lt;h3&gt;
  
  
  Here are some real-world examples of successful GPL-licensed commercial projects:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;WordPress: The popular content management system WordPress is licenced under the GPL, and there are many businesses that sell themes, plugins, and other services for WordPress.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Linux: The Linux operating system is also licenced under the GPL, and there are many companies that sell Linux-based software and services.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Android: The Android mobile operating system is based on the Linux kernel and is also licenced under the GPL. Many companies sell Android-based devices and apps.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;In summary, if you want to build software that everyone can use, modify, and distribute for free, then go for this licence. This licence will ensure that people who use your software for free or commercial use will also follow the same process.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>gpl</category>
      <category>opensource</category>
    </item>
    <item>
      <title>SEO: Canonical Links Vs Alternate URLs vs Redirects</title>
      <dc:creator>Jyotishman Saikia</dc:creator>
      <pubDate>Tue, 21 Nov 2023 12:50:17 +0000</pubDate>
      <link>https://forem.com/jyotishman/seo-canonical-links-vs-alternate-urls-vs-redirects-bgn</link>
      <guid>https://forem.com/jyotishman/seo-canonical-links-vs-alternate-urls-vs-redirects-bgn</guid>
      <description>&lt;h3&gt;
  
  
  1. Canonical Links: Resolving Duplicate Content
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Purpose: Mitigate duplicate content issues by specifying the preferred or "canonical" version of a page.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implementation: Insert the canonical link tag in the HTML:&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;&amp;lt;link rel="canonical" href="https://www.example.com/preferred-url" /&amp;gt;&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Example Scenario: Ideal for managing multiple URLs with similar content, ensuring search engines prioritise the designated URL.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Alternate URLs (Hreflang Annotations): Multilingual Targeting
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Purpose: Enable multilingual or multinational targeting by indicating language and regional preferences.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implementation: Utilise hreflang tags in the HTML:&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;code&gt;&amp;lt;link rel="alternate" hreflang="en" href="https://www.example.com/en/page" /&amp;gt;&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;



&lt;p&gt;&lt;code&gt;&amp;lt;link rel="alternate" hreflang="es" href="https://www.example.com/es/pagina" /&amp;gt;&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Example Scenario: Essential for websites with diverse language versions, guiding search engines to serve content based on user preferences.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Redirects: Seamless URL Transitions
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Purpose: Automatically guide users and search engines from one URL to another, crucial for URL changes or page movements.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implementation: Implement server-side redirects, like 301 for permanent moves and 302 for temporary changes.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Example Scenario: Valuable when restructuring your website or relocating content to ensure a smooth user experience and maintain search engine rankings.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Implementing these strategies ensures a streamlined web experience, resolves SEO challenges, and enhances overall site performance.&lt;/p&gt;

</description>
      <category>seo</category>
      <category>webdev</category>
      <category>html</category>
      <category>marketing</category>
    </item>
    <item>
      <title>Git tags: what are they? How do tags and branches differ from one another?</title>
      <dc:creator>Jyotishman Saikia</dc:creator>
      <pubDate>Sun, 30 Jul 2023 05:44:33 +0000</pubDate>
      <link>https://forem.com/jyotishman/git-tags-what-are-they-how-do-tags-and-branches-differ-from-one-another-58gn</link>
      <guid>https://forem.com/jyotishman/git-tags-what-are-they-how-do-tags-and-branches-differ-from-one-another-58gn</guid>
      <description>&lt;h2&gt;
  
  
  Tags vs Branch
&lt;/h2&gt;

&lt;p&gt;Let's discuss this one by one with an example.&lt;/p&gt;

&lt;p&gt;I hope you are already familiar with &lt;strong&gt;git branch&lt;/strong&gt;. For those who are new to git branch its a way to work multiple features and keep your code separated by branches.&lt;/p&gt;

&lt;p&gt;Example: You can work on two different features at the same time by creating two branch. Code from both the branch won't interfere with each other. Let's suppose &lt;strong&gt;master&lt;/strong&gt; is the stable branch where all the production code is there, from  there you can create different branch according to your dev requirement.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0dvsXq28--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1luf6t0g1zj61nbiyo74.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0dvsXq28--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1luf6t0g1zj61nbiyo74.png" alt="Creating git branches" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If there are multiple developers working on the same project on multiple features, you need to merge the code to a common branch (master) for deployment. &lt;/p&gt;

&lt;p&gt;After deploying the master branch what if there is an issue with any of the developer's branch?&lt;/p&gt;

&lt;p&gt;What should we do in this case since its breaking our production app?&lt;/p&gt;

&lt;p&gt;Quickest solution would be to revert the merge commit that has the issue. &lt;/p&gt;

&lt;p&gt;But there is an even smartest way to solve things when things go wrong on production.&lt;/p&gt;

&lt;h3&gt;
  
  
  Git tags
&lt;/h3&gt;

&lt;p&gt;This is where git tags come in. Git tags allow us to indicate certain points in a repository's history.&lt;br&gt;
We can create tags at any time and reference to a commit.&lt;br&gt;
But my suggestion would be to create a tag whenever there is commit made to &lt;strong&gt;master&lt;/strong&gt; branch.&lt;/p&gt;

&lt;p&gt;Example: Create a tag everytime a developer feature branch is merged into master.&lt;/p&gt;

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

&lt;p&gt;This way if there is any issue in any of the merge commits then we can simple go back to 2nd stable tag instead of the first tag.&lt;/p&gt;

&lt;h3&gt;
  
  
  To create a tag locally-
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;git tag tag-v.0.0.1&lt;/code&gt; &lt;/p&gt;

&lt;h3&gt;
  
  
  To push the tag-
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;git push origin tag-v.0.0.1&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This is a manual way of creating a tag and push it. But we can automate this thing by using github actions.&lt;/p&gt;

&lt;p&gt;So whenever there is any push commit to master , pick the latest tag and increment it by one.&lt;/p&gt;

&lt;p&gt;If my last tag is &lt;code&gt;tag-v.0.0.1&lt;/code&gt; it will automatically increment and create tag &lt;code&gt;tag-v.0.0.2&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;If you want to know how to create this auto tag on master comment down below. If you like this post do give a comment.&lt;/p&gt;

</description>
      <category>jenkins</category>
      <category>github</category>
      <category>git</category>
      <category>webdev</category>
    </item>
    <item>
      <title>The Valuable Time of Maturity - Poem by Mário de Andrade</title>
      <dc:creator>Jyotishman Saikia</dc:creator>
      <pubDate>Wed, 05 Jan 2022 05:25:09 +0000</pubDate>
      <link>https://forem.com/jyotishman/the-valuable-time-of-maturity-poem-by-mario-de-andrade-4o3o</link>
      <guid>https://forem.com/jyotishman/the-valuable-time-of-maturity-poem-by-mario-de-andrade-4o3o</guid>
      <description>&lt;p&gt;Beautiful poem by Mario de Andrade (San Paolo 1893-1945) Poet, novelist, essayist and musicologist. One of the founders of Brazilian modernism.&lt;/p&gt;

&lt;p&gt;I counted my years and realised that I have less time to live by, than I have lived so far.&lt;/p&gt;

&lt;p&gt;I feel like a child who won a pack of candies: at first, he ate them with pleasure but when he realised that there was little left, he began to taste them intensely.&lt;/p&gt;

&lt;p&gt;I have no time for endless meetings where the statutes, rules, procedures and internal regulations are discussed, knowing that nothing will be done.&lt;/p&gt;

&lt;p&gt;I no longer have the patience to stand absurd people who, despite their chronological age, have not grown up.&lt;/p&gt;

&lt;p&gt;My time is too short: I want the essence; my spirit is in a hurry. I do not have much candy in the package anymore.&lt;/p&gt;

&lt;p&gt;I want to live next to humans, very realistic people who know how to laugh at their mistakes and who are not inflated by their own triumphs and who take responsibility for their actions. In this way, human dignity is defended and we live in truth and honesty.&lt;/p&gt;

&lt;p&gt;It is the essentials that make life useful.&lt;/p&gt;

&lt;p&gt;I want to surround myself with people who know how to touch the hearts of those whom hard strokes of life have learned to grow with sweet touches of the soul.&lt;/p&gt;

&lt;p&gt;Yes, I'm in a hurry. I'm in a hurry to live with the intensity that only maturity can give.&lt;/p&gt;

&lt;p&gt;I do not intend to waste any of the remaining desserts. I am sure they will be exquisite, much more than those eaten so far.&lt;/p&gt;

&lt;p&gt;My goal is to reach the end satisfied and at peace with my loved ones and my conscience.&lt;/p&gt;

&lt;p&gt;We have two lives and the second begins when you realize you only have one.&lt;/p&gt;

</description>
      <category>motivation</category>
    </item>
    <item>
      <title>How to debug iPhone safari on mac in 2 steps?</title>
      <dc:creator>Jyotishman Saikia</dc:creator>
      <pubDate>Mon, 13 Sep 2021 17:25:20 +0000</pubDate>
      <link>https://forem.com/jyotishman/how-to-debug-iphone-safari-on-mac-in-2-steps-1i5l</link>
      <guid>https://forem.com/jyotishman/how-to-debug-iphone-safari-on-mac-in-2-steps-1i5l</guid>
      <description>&lt;p&gt;Debug HTML, CSS and Javascript issues for the website open on iPhone safari directly from your mac in just 2 steps.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step1: Activate the Web inspector in your iPhone.
&lt;/h2&gt;

&lt;p&gt;On your iPhone go to Settings &amp;gt; Safari &amp;gt; Advanced and toggle on Web Inspector .&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%2Flqx557dd4qjomeqnwjs6.jpeg" 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%2Flqx557dd4qjomeqnwjs6.jpeg" alt="iphone web inspector tutorial"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step2: Download Safari Technology Preview Browser
&lt;/h2&gt;

&lt;p&gt;Goto this &lt;a href="https://developer.apple.com/safari/technology-preview/" rel="noopener noreferrer"&gt;Link&lt;/a&gt; and download this super useful browser which will help in debugging the iOS safari on mac&lt;/p&gt;

&lt;p&gt;Once downloaded-&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the Safari Technology Preview&lt;/li&gt;
&lt;li&gt;Goto Develop -&amp;gt; Select your iphone -&amp;gt; click on the iphone safari tab&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Image 1&lt;br&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%2Fkuji1wg1omngab70ue77.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%2Fkuji1wg1omngab70ue77.png" alt="safari technology preview"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Image 2 &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%2Fq19xxznu0q0dkinjeuco.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%2Fq19xxznu0q0dkinjeuco.png" alt="safari technology preview"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>debugging</category>
      <category>ios</category>
    </item>
    <item>
      <title>10 useless NPM Package with millions of downloads</title>
      <dc:creator>Jyotishman Saikia</dc:creator>
      <pubDate>Sun, 22 Aug 2021 18:34:41 +0000</pubDate>
      <link>https://forem.com/jyotishman/10-useless-npm-package-with-millions-of-downloads-de9</link>
      <guid>https://forem.com/jyotishman/10-useless-npm-package-with-millions-of-downloads-de9</guid>
      <description>&lt;h2&gt;
  
  
  1. is-odd
&lt;/h2&gt;

&lt;p&gt;Detect number is odd or not - &lt;strong&gt;2M downloads/month&lt;/strong&gt; 🎉&lt;br&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%2Fz73b4dea0o9i3kws9t7n.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%2Fz73b4dea0o9i3kws9t7n.png" alt="check number is odd or not"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. is-even
&lt;/h2&gt;

&lt;p&gt;Detect number is even or not - &lt;strong&gt;855k downloads/month&lt;/strong&gt; 🎉&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhbrnrno6874s0zkauqah.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%2Fhbrnrno6874s0zkauqah.png" alt="check number is even or not"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3. upper-case
&lt;/h2&gt;

&lt;p&gt;Convert a string to upper case -  &lt;strong&gt;27M downloads/month&lt;/strong&gt; 🎉&lt;br&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%2Fj7rnuz63y6ptq6qqvqs7.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%2Fj7rnuz63y6ptq6qqvqs7.png" alt="converts a string to uppercase"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  4. is-number
&lt;/h2&gt;

&lt;p&gt;Detect a number is number or not - &lt;strong&gt;194M downloads/month&lt;/strong&gt;&lt;br&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%2F6zvb0hezci1uinafk9k5.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%2F6zvb0hezci1uinafk9k5.png" alt="check if a number or not"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;For storing and getting from localstorage - &lt;strong&gt;9.7M downloads/month&lt;/strong&gt; 🎉&lt;br&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%2Ft1hg3wfiw3rp3no9h13t.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%2Ft1hg3wfiw3rp3no9h13t.png" alt="store in localstorage"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  6. array-flatten
&lt;/h2&gt;

&lt;p&gt;Flatten nested arrays - &lt;strong&gt;103M downloads/month&lt;/strong&gt; 🎉&lt;br&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%2Fc5yph3psberpskawfw2f.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%2Fc5yph3psberpskawfw2f.png" alt="javascript flatten array"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  7. split-string
&lt;/h2&gt;

&lt;p&gt;Split a string at any desired position - &lt;strong&gt;67M downloads/month&lt;/strong&gt; &lt;br&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%2Fndyikh8mlm3xxqy0odzg.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%2Fndyikh8mlm3xxqy0odzg.png" alt="Split a string"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  8. is-boolean-object
&lt;/h2&gt;

&lt;p&gt;Detects a value is boolean or not -  &lt;strong&gt;52M downloads/month&lt;/strong&gt;&lt;br&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%2F64lgfkez45zxn6zornx6.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%2F64lgfkez45zxn6zornx6.png" alt="Detects a value is boolean or not"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  9. array-includes
&lt;/h2&gt;

&lt;p&gt;Check if a value exists in an array or not- &lt;strong&gt;52M downloads/month&lt;/strong&gt; &lt;br&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%2Ffffk93eozi8a928p29ah.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%2Ffffk93eozi8a928p29ah.png" alt="array includes"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  10. ismobilejs
&lt;/h2&gt;

&lt;p&gt;Detects if mobile or not in browser or server - &lt;strong&gt;170k download/week&lt;/strong&gt; 🎉&lt;br&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%2Fu4gfivq62a8sy2gdnm8m.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%2Fu4gfivq62a8sy2gdnm8m.png" alt="detect mobile or not using javascript"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you know any other such useless plugin  , please comment down below.&lt;/p&gt;

&lt;p&gt;Also I have started posting on twitter related to frontend tips and tricks. You can follow me at- &lt;a href="https://twitter.com/frontend_jsx" rel="noopener noreferrer"&gt;https://twitter.com/frontend_jsx&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>100daysofcode</category>
      <category>npm</category>
    </item>
    <item>
      <title>Work from Home setup of an Indian Developer 🇮🇳</title>
      <dc:creator>Jyotishman Saikia</dc:creator>
      <pubDate>Fri, 20 Aug 2021 05:43:21 +0000</pubDate>
      <link>https://forem.com/jyotishman/work-from-home-setup-of-an-indian-developer-255b</link>
      <guid>https://forem.com/jyotishman/work-from-home-setup-of-an-indian-developer-255b</guid>
      <description>&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%2Foeaaynouykl0dawntcp8.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%2Foeaaynouykl0dawntcp8.png" alt="Work from home setup"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Desk-
&lt;/h2&gt;

&lt;p&gt;The beginning of every setup is a clean and spacious desk. I am using a custom made wooden desk with a 19mm ply at the top and frame size of 6ft/3ft. The Frame is black painted and top base has a wooden mica.&lt;/p&gt;

&lt;h2&gt;
  
  
  Chair-
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fprtbg5zqfvsks0258lby.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%2Fprtbg5zqfvsks0258lby.png" alt="Ergonomic chair"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I am using an ergonomic office chair bought from Amazon at Rs 6700/- . The best part of this chair is that I can adjust both the  seat and the arm height according to  my requirement. The wheels runs smooth if I move while being seated.&lt;/p&gt;

&lt;p&gt;Amazon Link- &lt;a href="https://amzn.to/3DaAe47" rel="noopener noreferrer"&gt;https://amzn.to/3DaAe47&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Laptop- MacBook Pro
&lt;/h2&gt;

&lt;p&gt;I am using a &lt;strong&gt;MacBook Pro 16inch&lt;/strong&gt; 2019 with the configuration of 16GB RAM 2.6 GHz 6-Core Intel Core i7. This is my primary laptop and I use this to do all my tasks like- web development, app development, photo/video editing, watch movies etc&lt;/p&gt;

&lt;p&gt;Amazon Link- &lt;a href="https://amzn.to/3xVkwpy" rel="noopener noreferrer"&gt;https://amzn.to/3xVkwpy&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Secondary Monitor- Dell P Series 24-inch
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feeq0lx8y3wyfzn4vnuy5.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%2Feeq0lx8y3wyfzn4vnuy5.png" alt="Dell monitor 24 inch"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I am using this DELL 24 inch full &lt;strong&gt;HD IPS monitor&lt;/strong&gt; with an aspect ratio of 16:9 .  The monitor height can be adjusted according to my need and it can also do a 360 rotation. I bought this from Amazon at  Rs 13,000/-.&lt;/p&gt;

&lt;p&gt;Amazon Link- &lt;a href="https://amzn.to/3ggTkLL" rel="noopener noreferrer"&gt;https://amzn.to/3ggTkLL&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  External Keyboard-
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Focirh2qagqlqyt3339kq.jpg" 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%2Focirh2qagqlqyt3339kq.jpg" alt="Keychron k2 keyboard"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Keyboard plays a major role in productivity of every developers. I am using a Keycron k2 RGB Mechanical keyboard with the option to use by  both bluetooth and cable. Keychron official website ships to most of the countries except India so I bought this mechanical keyboard from keychron India website at Rs 8000/- . The typing experience is indeed awesome. &lt;/p&gt;

&lt;p&gt;Website link- &lt;a href="https://keychron.in/product/keychron-k2-v-2/" rel="noopener noreferrer"&gt;https://keychron.in/product/keychron-k2-v-2/&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  External Mouse- Logitech MX Master 3
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk49u5sbejl2v5sii20oc.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%2Fk49u5sbejl2v5sii20oc.png" alt="MX Master 3"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I am using a Logitech MX Master 3 series for productivity. Some of the best use-case which i love about this mouse are-&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Switching between windows with the switch key&lt;/li&gt;
&lt;li&gt;Browser tabs switching using the horizontal scroll.&lt;/li&gt;
&lt;li&gt;Browser forward/backward using the up/down buttons&lt;/li&gt;
&lt;li&gt;The obvious Vertical scroll with approx of 1000 lines per sec.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Amazon Link- &lt;a href="https://amzn.to/3xZ6svi" rel="noopener noreferrer"&gt;https://amzn.to/3xZ6svi&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Mobile devices-
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;iPhone 11- I use this device as my primary phone as well as a testing device.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;iPad Air 2020 + Apple Pencil- I use this device primarily to note down my daily to-do tasks and a little bit of photo and video editing. Otherwise I used this to watch Netflix or Amazon Prime video.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;OnePlus 6t- This device used to be my primary phone before but now I use this device to test android related stuffs&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Earphone and mic-
&lt;/h2&gt;

&lt;p&gt;I am not a big fan of loud music so I always use a bluetooth earphone to listen to music or to do an audio/video chat. I use OnePlus bullet if I am doing some physical activity  else I use Boat AirDope if I am in the desk. &lt;/p&gt;

&lt;p&gt;Amazon Link- &lt;a href="https://amzn.to/2Wd8HxW" rel="noopener noreferrer"&gt;https://amzn.to/2Wd8HxW&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Amazon Link- &lt;a href="https://amzn.to/3D5bGtg" rel="noopener noreferrer"&gt;https://amzn.to/3D5bGtg&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Additional accessories which are there in my desk-
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Extension board&lt;/li&gt;
&lt;li&gt;Flower pot&lt;/li&gt;
&lt;li&gt;Computer glass&lt;/li&gt;
&lt;li&gt;Laptop stand&lt;/li&gt;
&lt;li&gt;Monitor Stand&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If you liked my setup or want to give any feedback  or suggestions , please comment down below. If possible please share your setup images in the comment section.&lt;/p&gt;

&lt;p&gt;Also I have started posting on twitter related to frontend tips and tricks. You can follow me at- &lt;a href="https://twitter.com/frontend_jsx" rel="noopener noreferrer"&gt;https://twitter.com/frontend_jsx&lt;/a&gt;&lt;/p&gt;

</description>
      <category>workstations</category>
      <category>frontenddeveloper</category>
      <category>softwareengineer</category>
    </item>
    <item>
      <title>7 cases where we can use HTML instead of CSS</title>
      <dc:creator>Jyotishman Saikia</dc:creator>
      <pubDate>Wed, 11 Aug 2021 17:55:16 +0000</pubDate>
      <link>https://forem.com/jyotishman/7-cases-where-we-can-use-html-instead-of-css-238h</link>
      <guid>https://forem.com/jyotishman/7-cases-where-we-can-use-html-instead-of-css-238h</guid>
      <description>&lt;h2&gt;
  
  
  1 Hide an element
&lt;/h2&gt;

&lt;p&gt;Yes! you read it right. We can hide an element using HTML. Using the &lt;code&gt;hidden&lt;/code&gt; attribute we can hide an element.&lt;br&gt;
Example-&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;p hidden&amp;gt; Hello! I am a hidden paragraph &amp;lt;/p&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  2 Word Break
&lt;/h2&gt;

&lt;p&gt;We can break a word at any position we want by using the &lt;code&gt;&amp;lt;br&amp;gt;&lt;/code&gt; or &lt;code&gt;&amp;lt;wbr&amp;gt;&lt;/code&gt; tag according to our usecase.&lt;br&gt;
Example-&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;p&amp;gt; Hello! I am a &amp;lt;br&amp;gt; broken text &amp;lt;/br&amp;gt; &amp;lt;/p&amp;gt;

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  3 Accordion
&lt;/h2&gt;

&lt;p&gt;We can create an accordion without writing a line of css or javascript. Using the HTML &lt;code&gt;&amp;lt;details&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;summary&amp;gt;&lt;/code&gt; tag we can create an accordion.&lt;/p&gt;

&lt;p&gt;Example-&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;details&amp;gt;
    &amp;lt;summary&amp;gt;Accordion title&amp;lt;/summary&amp;gt;
    Content you want to show/hide.
&amp;lt;/details&amp;gt;

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  4 Progress Bar
&lt;/h2&gt;

&lt;p&gt;Using the HTML &lt;code&gt;&amp;lt;progress&amp;gt;&lt;/code&gt; tag we can show a progress without css or javascript &lt;/p&gt;

&lt;p&gt;Example-&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;progress id="file" value="32" max="100"&amp;gt; 32% &amp;lt;/progress&amp;gt;

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  5 Color Picker
&lt;/h2&gt;

&lt;p&gt;Using the HTML &lt;code&gt;&amp;lt;input type="color"&amp;gt;&lt;/code&gt; tag we can show a color picker and get its value.&lt;/p&gt;

&lt;p&gt;Example-&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  &amp;lt;input type="color" value="#ff0000"&amp;gt;

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  6 Delete/Underline Text
&lt;/h2&gt;

&lt;p&gt;Using the HTML &lt;code&gt;&amp;lt;del&amp;gt;&lt;/code&gt; &amp;amp; &lt;code&gt;&amp;lt;ins&amp;gt;&lt;/code&gt; tag we can strike text and underline text.&lt;/p&gt;

&lt;p&gt;Example-&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;p&amp;gt;My name is &amp;lt;del&amp;gt;jyotish&amp;lt;/del&amp;gt; &amp;lt;ins&amp;gt;jyotishman/ins&amp;gt;!&amp;lt;/p&amp;gt;

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  7 Center  text
&lt;/h2&gt;

&lt;p&gt;We can center a text without using CSS. Using the HTML &lt;code&gt;align&lt;/code&gt; attribute we can give values like- left, center or right.&lt;/p&gt;

&lt;p&gt;Example-&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;p align="center"&amp;gt;Hello! I am a center text &amp;lt;/p&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you liked my content you can follow me on twitter for more such content-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://twitter.com/frontend_jsx"&gt;https://twitter.com/frontend_jsx&lt;/a&gt;&lt;/p&gt;

</description>
      <category>html</category>
      <category>css</category>
    </item>
    <item>
      <title>Javascript Format Date without Moment.js (Eg: 17 July, 2021 )</title>
      <dc:creator>Jyotishman Saikia</dc:creator>
      <pubDate>Sat, 17 Jul 2021 13:42:44 +0000</pubDate>
      <link>https://forem.com/jyotishman/javascript-format-date-without-moment-js-eg-17-july-2021-2jma</link>
      <guid>https://forem.com/jyotishman/javascript-format-date-without-moment-js-eg-17-july-2021-2jma</guid>
      <description>&lt;p&gt;Almost everyone like me  might be using the plugin moment.js to format a date-time-stamp to a readable date or time - Eg: 14 July 2021 or 11:58 pm&lt;/p&gt;

&lt;p&gt;Fortunately, there is a native javascript API to format date and time.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo and Example to format date:
&lt;/h2&gt;

&lt;p&gt;With the help of &lt;code&gt;toLocaleDateString&lt;/code&gt; we can format a date-time-stamp to a readable language sensitive representation.&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;const date = new Date();&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;



&lt;p&gt;&lt;code&gt;Sat Jul 17 2021 19:04:31 GMT+0530 (India Standard Time)&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;



&lt;p&gt;&lt;code&gt;date.toLocaleDateString("en-IN", {&lt;br&gt;
  "year": "numeric", &lt;br&gt;
  "month": "long", &lt;br&gt;
  "day": "numeric"&lt;br&gt;
})&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;



&lt;p&gt;&lt;code&gt;"17 July 2021"&lt;/code&gt;&lt;br&gt;
&lt;br&gt;
    (Formatted Date)&lt;/p&gt;
&lt;h2&gt;
  
  
  Demo and Example to format time:
&lt;/h2&gt;

&lt;p&gt;With the help of &lt;code&gt;toLocaleTimeString&lt;/code&gt; we can format a date-time-stamp to a readable language sensitive representation.&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;const date = new Date();&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;



&lt;p&gt;&lt;code&gt;Sat Jul 17 2021 19:04:31 GMT+0530 (India Standard Time)&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;



&lt;p&gt;&lt;code&gt;date.toLocaleTimeString("en-IN", {"hour": "numeric"})&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;



&lt;p&gt;&lt;code&gt;"7 pm"&lt;/code&gt;&lt;br&gt;
&lt;br&gt;
   (Formatted Time)&lt;/p&gt;

&lt;p&gt;If you liked my content you can follow me on twitter for more such content-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://twitter.com/frontend_jsx"&gt;https://twitter.com/frontend_jsx&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>react</category>
      <category>reactnative</category>
    </item>
    <item>
      <title>Format a number to any currency using Javascript</title>
      <dc:creator>Jyotishman Saikia</dc:creator>
      <pubDate>Sat, 10 Jul 2021 06:53:32 +0000</pubDate>
      <link>https://forem.com/jyotishman/format-a-number-to-any-currency-using-javascript-ja3</link>
      <guid>https://forem.com/jyotishman/format-a-number-to-any-currency-using-javascript-ja3</guid>
      <description>&lt;p&gt;This article will explain you how to convert a number to any currency like - INR, USD, EUR etc using the Javascript international number format API- Intl.NumberFormat.&lt;/p&gt;

&lt;h3&gt;
  
  
  Basic Usage-
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;var number = 3500;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;If you don't specify any locales, it will return the  formatted number based on your location.&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%2Ffhk5oktku419zsbed8xz.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%2Ffhk5oktku419zsbed8xz.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I am from India , so it returned the Indian formatted number.&lt;/p&gt;

&lt;h3&gt;
  
  
  Format number using locales-
&lt;/h3&gt;

&lt;p&gt;You can specify location to format number according to it.&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%2Fytnxzds27fb32h9r2fr8.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%2Fytnxzds27fb32h9r2fr8.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Format number to any currency using locale-
&lt;/h3&gt;

&lt;p&gt;To convert number to currency you need to mention the &lt;strong&gt;style&lt;/strong&gt;  and the &lt;strong&gt;currency&lt;/strong&gt; format-&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;style= currency&lt;/li&gt;
&lt;li&gt;currency=  USD, INR, EUR etc &lt;/li&gt;
&lt;/ol&gt;

&lt;h5&gt;
  
  
  For Indian currency-
&lt;/h5&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%2F9uw5yae0hfmrpe4gsj3q.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%2F9uw5yae0hfmrpe4gsj3q.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h5&gt;
  
  
  For US dollar currency-
&lt;/h5&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%2Fp8fagby23tx3ddfu0y0u.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%2Fp8fagby23tx3ddfu0y0u.png" alt="image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Using this Intl.NumberFormat you can also format other number like- km/hr, litres, etc,&lt;/p&gt;

&lt;p&gt;If you liked this content you can support me by following me on twitter and Instagram for more such contents-&lt;/p&gt;

&lt;p&gt;&lt;a href="https://twitter.com/frontend_jsx" rel="noopener noreferrer"&gt;Twitter - https://twitter.com/frontend_jsx&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.instagram.com/frontend.jsx/" rel="noopener noreferrer"&gt;Instagram - https://www.instagram.com/frontend.jsx/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>react</category>
      <category>reactnative</category>
    </item>
    <item>
      <title>HTML Tip: Automatically open all links in new tab in HTML</title>
      <dc:creator>Jyotishman Saikia</dc:creator>
      <pubDate>Sun, 27 Jun 2021 07:54:12 +0000</pubDate>
      <link>https://forem.com/jyotishman/html-tip-automatically-open-all-links-in-new-tab-in-html-19ok</link>
      <guid>https://forem.com/jyotishman/html-tip-automatically-open-all-links-in-new-tab-in-html-19ok</guid>
      <description>&lt;p&gt;Did you get tired of manually adding target="_blank" in all the &lt;strong&gt;&lt;a&gt;&lt;/a&gt;&lt;/strong&gt; tags in your HTML webpage?&lt;br&gt;
or&lt;br&gt;
Have you ever forgotten to add target="_blank" in all the &lt;strong&gt;&lt;a&gt;&lt;/a&gt;&lt;/strong&gt; tags in your &lt;strong&gt;HTML&lt;/strong&gt; webpage?&lt;/p&gt;

&lt;p&gt;Well, there is a native HTML tag to handle such cases automatically. You don't need to manually add &lt;strong&gt;target="_blank"&lt;/strong&gt; in all the &lt;strong&gt;&lt;a&gt;&lt;/a&gt;&lt;/strong&gt; tag.&lt;/p&gt;

&lt;p&gt;Just add &lt;strong&gt;target="_blank"&lt;/strong&gt; in the base tag, it will open in a new tab for all the link present in the webpage.&lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1409053884794818564-303" src="https://platform.twitter.com/embed/Tweet.html?id=1409053884794818564"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1409053884794818564-303');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1409053884794818564&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;p&gt;I post very frequently on twitter related to frontend tips.&lt;br&gt;
Support my content by following on &lt;br&gt;
&lt;a href="https://twitter.com/frontend_jsx"&gt;Twitter - https://twitter.com/frontend_jsx&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.instagram.com/frontend.jsx/"&gt;Instagram - https://www.instagram.com/frontend.jsx/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>html</category>
      <category>css</category>
      <category>javascript</category>
    </item>
    <item>
      <title>My Top 5 Tweets related to Frontend Development</title>
      <dc:creator>Jyotishman Saikia</dc:creator>
      <pubDate>Tue, 22 Jun 2021 14:37:15 +0000</pubDate>
      <link>https://forem.com/jyotishman/my-top-5-tweets-related-to-frontend-development-1nae</link>
      <guid>https://forem.com/jyotishman/my-top-5-tweets-related-to-frontend-development-1nae</guid>
      <description>&lt;h3&gt;
  
  
  1/5 - Disable pull to refresh using CSS
&lt;/h3&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1400393758575710211-372" src="https://platform.twitter.com/embed/Tweet.html?id=1400393758575710211"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1400393758575710211-372');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1400393758575710211&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;h3&gt;
  
  
  2/5 - Hide HTML element natively
&lt;/h3&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1406666397116112897-676" src="https://platform.twitter.com/embed/Tweet.html?id=1406666397116112897"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1406666397116112897-676');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1406666397116112897&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;h3&gt;
  
  
  3/5 -  CSS inset shorthand property for top/right/bottom/left
&lt;/h3&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1402863094142021632-672" src="https://platform.twitter.com/embed/Tweet.html?id=1402863094142021632"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1402863094142021632-672');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1402863094142021632&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;h3&gt;
  
  
  4/5 - Detect internet speed using Javascript
&lt;/h3&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1403395076575797258-727" src="https://platform.twitter.com/embed/Tweet.html?id=1403395076575797258"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1403395076575797258-727');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1403395076575797258&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;h3&gt;
  
  
  5/5 - Prevent user from pasting into input fields
&lt;/h3&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1407009069060136961-837" src="https://platform.twitter.com/embed/Tweet.html?id=1407009069060136961"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1407009069060136961-837');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1407009069060136961&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;p&gt;I post very frequently on twitter related to frontend tips.&lt;br&gt;
Support my content by following on &lt;br&gt;
&lt;a href="https://twitter.com/frontend_jsx"&gt;Twitter - https://twitter.com/frontend_jsx&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.instagram.com/frontend.jsx/"&gt;Instagram - https://www.instagram.com/frontend.jsx/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>react</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
