<?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: Krutik Raut</title>
    <description>The latest articles on DEV Community by Krutik Raut (@krutikkkkkkkkk).</description>
    <link>https://dev.to/krutikkkkkkkkk</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%2F662379%2F0b16e17e-f1c9-496c-b574-1601005a503d.jpg</url>
      <title>DEV Community: Krutik Raut</title>
      <link>https://dev.to/krutikkkkkkkkk</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/krutikkkkkkkkk"/>
    <language>en</language>
    <item>
      <title>Train PNR Status API</title>
      <dc:creator>Krutik Raut</dc:creator>
      <pubDate>Thu, 11 Nov 2021 16:00:35 +0000</pubDate>
      <link>https://dev.to/krutikkkkkkkkk/train-pnr-status-api-175p</link>
      <guid>https://dev.to/krutikkkkkkkkk/train-pnr-status-api-175p</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkkedlzsfha54esy2lucc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkkedlzsfha54esy2lucc.png" alt="PNR Status API" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So I made a PNR status API using data scrapped from &lt;a href="https://confrimtkt.com" rel="noopener noreferrer"&gt;confirmtkt.com&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  General Information
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Built in Node.js &lt;/li&gt;
&lt;li&gt;Express Framework for routes and API handling&lt;/li&gt;
&lt;li&gt;Cheerio for Data scraping&lt;/li&gt;
&lt;li&gt;Node fetch to get response from confirmtkt&lt;/li&gt;
&lt;li&gt;Hosted on &lt;a href="https://vercel.com" rel="noopener noreferrer"&gt;Vercel.com&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Live Mode&lt;/em&gt;&lt;/strong&gt; : &lt;a href="https://pnr-status.vercel.app" rel="noopener noreferrer"&gt;https://pnr-status.vercel.app&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;End Point&lt;/strong&gt; : &lt;code&gt;api/{PNR}&lt;/code&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Reboot13
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://telegram.me/reboot13_dev" rel="noopener noreferrer"&gt;Telegram&lt;/a&gt; || &lt;a href="https://instagram.com/reboot13_dev" rel="noopener noreferrer"&gt;Instagram&lt;/a&gt; || &lt;a href="https://twitter.com/reboot13_dev" rel="noopener noreferrer"&gt;Twitter&lt;/a&gt; || &lt;a href="https://youtube.com/krutikraut" rel="noopener noreferrer"&gt;Youtube&lt;/a&gt; || &lt;a href="https://www.linkedin.com/in/reboot13" rel="noopener noreferrer"&gt;LinkedIN&lt;/a&gt; || &lt;a href="https://reboot13.hashnode.dev/donate" rel="noopener noreferrer"&gt;Donate&lt;/a&gt;&lt;/p&gt;

</description>
      <category>api</category>
      <category>github</category>
      <category>javascript</category>
      <category>node</category>
    </item>
    <item>
      <title>JavaScript Arrow Functions</title>
      <dc:creator>Krutik Raut</dc:creator>
      <pubDate>Sun, 31 Oct 2021 08:11:30 +0000</pubDate>
      <link>https://dev.to/krutikkkkkkkkk/javascript-arrow-functions-27h9</link>
      <guid>https://dev.to/krutikkkkkkkkk/javascript-arrow-functions-27h9</guid>
      <description>&lt;p&gt;&lt;strong&gt;JavaScript Arrow Function&lt;/strong&gt;&lt;br&gt;
Arrow functions were introduced in ES6.&lt;/p&gt;

&lt;p&gt;Arrow functions allow us to write shorter function syntax:&lt;/p&gt;

&lt;p&gt;Before Arrow Function&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;function hello() {
  return "Hello World!";
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After Arrow Function&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let hello =()=&amp;gt; “Hello World”;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;p&gt;&lt;strong&gt;&lt;em&gt;Arrow Function Syntax&lt;/em&gt;&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;let myFunction = (arg1, arg2, ...argN) =&amp;gt; {
    statement(s)
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If the body has single statement or expression, &lt;br&gt;
you can write arrow function as:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let myFunction = (arg1, arg2, ...argN) =&amp;gt; expression
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It gets shorter! If the function has only one statement, &lt;br&gt;
and the statement returns a value, you can remove the brackets &lt;br&gt;
and the return keyword&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;&lt;em&gt;Arrow Function with No Argument&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If a function doesn't take any argument, then you should use empty parentheses. for example,&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let greet = () =&amp;gt; console.log('Hello');
greet(); // Hello
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;&lt;em&gt;Arrow Function with One Argument&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If a function has only one argument, you can omit the parentheses. For example,&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let greet = x =&amp;gt; console.log(x);
greet('Hello'); // Hello 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;&lt;em&gt;Arrow Function with more than one Argument&lt;/em&gt;&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;let x = (x, y) =&amp;gt; x * y;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;p&gt;An arrow function expression is a compact alternative to a traditional function expression, but is limited and can't be used in all situations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Differences &amp;amp; Limitations:&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Does not have its own bindings to &lt;strong&gt;this&lt;/strong&gt; or &lt;strong&gt;super&lt;/strong&gt;, and should not be used as methods.&lt;/p&gt;

&lt;p&gt;Does not have &lt;strong&gt;new.target&lt;/strong&gt; keyword.&lt;/p&gt;

&lt;p&gt;Not suitable for &lt;strong&gt;call&lt;/strong&gt;, &lt;strong&gt;apply&lt;/strong&gt; and &lt;strong&gt;bind&lt;/strong&gt; methods, which generally rely on establishing a scope.&lt;/p&gt;

&lt;p&gt;Can not be used as &lt;strong&gt;constructors&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Can not use &lt;strong&gt;yield&lt;/strong&gt;, within its body.&lt;/p&gt;




&lt;p&gt;Thankyou&lt;/p&gt;

&lt;p&gt;Follow me on Instagram: &lt;a href="https://instagram.com/reboot13_dev" rel="noopener noreferrer"&gt;https://instagram.com/reboot13_dev&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Checkout my Github: &lt;a href="https://github.com/reboot13-git" rel="noopener noreferrer"&gt;https://github.com/reboot13-git&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>html</category>
      <category>webdev</category>
      <category>programming</category>
    </item>
    <item>
      <title>Netflix UI Clone [SCSS]</title>
      <dc:creator>Krutik Raut</dc:creator>
      <pubDate>Sat, 30 Oct 2021 13:12:09 +0000</pubDate>
      <link>https://dev.to/krutikkkkkkkkk/netflix-ui-clone-hbi</link>
      <guid>https://dev.to/krutikkkkkkkkk/netflix-ui-clone-hbi</guid>
      <description>&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/reboot13/embed/qBmNebL?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Checkout:&lt;br&gt;
&lt;a href="https://github.com/reboot13-git" rel="noopener noreferrer"&gt;https://github.com/reboot13-git&lt;/a&gt;&lt;/p&gt;

</description>
      <category>netflix</category>
      <category>scss</category>
      <category>css</category>
      <category>html</category>
    </item>
    <item>
      <title>UI Design Process</title>
      <dc:creator>Krutik Raut</dc:creator>
      <pubDate>Tue, 26 Oct 2021 08:49:11 +0000</pubDate>
      <link>https://dev.to/krutikkkkkkkkk/ui-design-process-1g5k</link>
      <guid>https://dev.to/krutikkkkkkkkk/ui-design-process-1g5k</guid>
      <description>&lt;p&gt;Here are the 6 steps I go through whenever I create &lt;strong&gt;UI Design&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Understand the problem&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Albert Einstein said: "If I had an hour to solve a problem, I would spend 55 minutes thinking about the problem and 5 minutes about the solutions.&lt;/p&gt;

&lt;p&gt;It's probably the crucial part of any process that ensures that design will be usable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Create very rough sketches&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The next step is to create super rough sketches of my ideas after thinking about the problem and solutions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3.Create detailed Wireframes&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After I'm happy with the sketches (they need to be perfect)&lt;br&gt;
I use Figma to create detailed wireframes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4.Selects Assets&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Eg: Fonts and Colors&lt;br&gt;
After the wireframes done, I choose fonts, colors and icons for the project , and also pick some photos and illustrations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5.Apply Assets to wireframes&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After this step I am pretty much done. It's basically connecting together to an actual screen.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6.Present it Properly&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After applying assets, now its time to enhance your design presentation.&lt;/p&gt;

&lt;p&gt;Credits: &lt;a href="https://dribble.com/yasirnoori" rel="noopener noreferrer"&gt;https://dribble.com/yasirnoori&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Follow me&lt;/strong&gt;&lt;br&gt;
Instagram: &lt;a href="https://instagram.com/reboot13_dev" rel="noopener noreferrer"&gt;https://instagram.com/reboot13_dev&lt;/a&gt;&lt;br&gt;
Telegram: &lt;a href="https://telegram.me/reboot13_dev" rel="noopener noreferrer"&gt;https://telegram.me/reboot13_dev&lt;/a&gt;&lt;br&gt;
Twitter: &lt;a href="https://twitter.com/reboot13_dev" rel="noopener noreferrer"&gt;https://twitter.com/reboot13_dev&lt;/a&gt;&lt;br&gt;
LinkedIn: &lt;a href="https://linkedin.com/in/reboot13" rel="noopener noreferrer"&gt;https://linkedin.com/in/reboot13&lt;/a&gt;&lt;br&gt;
Github: &lt;a href="https://github.com/reboot13-git" rel="noopener noreferrer"&gt;https://github.com/reboot13-git&lt;/a&gt;&lt;/p&gt;

</description>
      <category>uiweekly</category>
      <category>ui</category>
      <category>uidesign</category>
      <category>design</category>
    </item>
    <item>
      <title>Hosting Website on Firebase</title>
      <dc:creator>Krutik Raut</dc:creator>
      <pubDate>Mon, 25 Oct 2021 15:34:00 +0000</pubDate>
      <link>https://dev.to/krutikkkkkkkkk/hosting-website-on-firebase-5ged</link>
      <guid>https://dev.to/krutikkkkkkkkk/hosting-website-on-firebase-5ged</guid>
      <description>&lt;p&gt;This instruction is for making newbies work easy so that they can follow exactly the same steps I am giving below&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create a folder name &lt;strong&gt;&lt;em&gt;website&lt;/em&gt;&lt;/strong&gt; on desktop&lt;/li&gt;
&lt;li&gt;Create another folder within the website folder name it as &lt;strong&gt;&lt;em&gt;public&lt;/em&gt;&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Add your HTML/CSS/JS and images files to the &lt;strong&gt;&lt;em&gt;public&lt;/em&gt;&lt;/strong&gt; folder&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Make sure the main page of your website is named as an &lt;strong&gt;&lt;em&gt;index.html&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt;Firebase hosting does not support any server-side scripts such as Ruby, PHP, Python, or anything else that is processing your files before output. That would require an application engine such as Google App Engine, Heroku, or similar. The hosting service is a static website hosting service.&lt;/p&gt;

&lt;p&gt;Before starting install node js on your device.&lt;/p&gt;

&lt;p&gt;Link:  &lt;a href="https://nodejs.org/en/" rel="noopener noreferrer"&gt;https://nodejs.org/en/&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Once you are done with installing &lt;strong&gt;Node JS&lt;/strong&gt; Follow the steps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
Go to &lt;a href="https://firebase.google.com/" rel="noopener noreferrer"&gt;https://firebase.google.com/&lt;/a&gt; and click on &lt;strong&gt;Get started.&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
Click on &lt;strong&gt;Add Project&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
Enter your Project name and continue.&lt;/li&gt;
&lt;/ul&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;reboot13-dev
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;
Enable google analytics on your project if you want to track users and click on continue.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Firebase will create your project within a few seconds&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
Click on continue.&lt;/li&gt;
&lt;/ul&gt;



&lt;br&gt;
Lets Install Firebase CLI on our device

&lt;ul&gt;
&lt;li&gt;
Now Open your terminal (Command Prompt).
-
Type
&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 -g firebase-tools
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;This will install firebase tools globally on your device.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
Type
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;firebase login
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;This will redirect you to the browser&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
Now select the Gmail account in which you have created the Project.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Allow access to Firebase and get back to the terminal.&lt;/p&gt;

&lt;p&gt;Once you are logged in change the directory in the terminal.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
Type
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cd C:\Users\common\Desktop\website

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

&lt;/div&gt;


&lt;ul&gt;
&lt;li&gt;
Type
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;firebase init
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;blockquote&gt;
&lt;p&gt;You're about to initialize a Firebase project in this directory:&lt;/p&gt;

&lt;p&gt;C:\Users\common\Desktop\website? &lt;/p&gt;

&lt;p&gt;Are you ready to proceed? (Y/n)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;type &lt;strong&gt;y&lt;/strong&gt; and press enter&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;? Which Firebase CLI features do you want to set up for this folder? Press Space to select features, then Enter to confirm your choices.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Scroll down user navigation keys (arrow keys) and press space to select &lt;/p&gt;

&lt;p&gt;(*) Hosting: Configure and deploy Firebase Hosting sites&lt;/p&gt;

&lt;p&gt;(*)means it's selected.&lt;/p&gt;

&lt;p&gt;Press enter.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;? Please select an option: (Use arrow keys)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Select &amp;gt; Use an existing project and press enter.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Select a default Firebase project for this directory: (Use arrow keys)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Select your project name and press enter.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Select a default Firebase project for this directory: (Use arrow keys)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;As we named our folder public&lt;/p&gt;

&lt;p&gt;type &lt;strong&gt;public&lt;/strong&gt; and press enter&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;? Configure as a single-page app (rewrite all URLs to /index.html)?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;type &lt;strong&gt;n&lt;/strong&gt; and press enter.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;? Set up automatic builds and deploys with GitHub? (y/N)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;type &lt;strong&gt;n&lt;/strong&gt; and press enter.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;File public/404.html already exists. Overwrite? (y/N)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;type &lt;strong&gt;n&lt;/strong&gt; and press enter.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;? File public/index.html already exists. Overwrite? (y/N)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;type &lt;strong&gt;n&lt;/strong&gt; and press enter.&lt;/p&gt;

&lt;p&gt;Don't overwrite any file just type &lt;strong&gt;n&lt;/strong&gt; and press enter.&lt;/p&gt;

&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt; Firebase initialization complete!&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;
Now Type
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;firebase deploy
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt; Deploy complete!&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;p&gt;Done you successfully hosted your website on Firebase&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;project name&amp;gt;.web.app
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Check the one I hosted &lt;a href="https://reboot13-dev.web.app" rel="noopener noreferrer"&gt;https://reboot13-dev.web.app&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Youtube Video Tutorial: &lt;a href="https://www.youtube.com/watch?v=KQs7adkKNHk" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=KQs7adkKNHk&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Reboot13
&lt;/h3&gt;

&lt;p&gt;Youtube: &lt;a href="https://youtube.com/krutikraut" rel="noopener noreferrer"&gt;https://youtube.com/krutikraut&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Github: &lt;a href="https://github.com/reboot13-git" rel="noopener noreferrer"&gt;https://github.com/reboot13-git&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>firebase</category>
      <category>hosting</category>
      <category>website</category>
    </item>
    <item>
      <title>3D Cube with animations... Only CSS👀 feat.Naruto</title>
      <dc:creator>Krutik Raut</dc:creator>
      <pubDate>Sat, 23 Oct 2021 07:55:53 +0000</pubDate>
      <link>https://dev.to/krutikkkkkkkkk/3d-cube-with-animations-only-css-featnaruto-26a9</link>
      <guid>https://dev.to/krutikkkkkkkkk/3d-cube-with-animations-only-css-featnaruto-26a9</guid>
      <description>&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/reboot13/embed/wvdWQGb?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

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

&lt;p&gt;Apart from basic CSS properties, I have used some properties which change the 2D page of the view to a 3D one.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CSS properties:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;perspective&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;perspective-origin&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;transform-style&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;transform (translate/rotate)&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;To make a 3D cube we have to first make a block that contains the structure of the cube&lt;/p&gt;

&lt;p&gt;Lets White HTML first&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;div class="scene"&amp;gt;
  &amp;lt;div class="box"&amp;gt;
    &amp;lt;div class="top"&amp;gt;&amp;lt;/div&amp;gt;
    &amp;lt;div class="bottom"&amp;gt;&amp;lt;/div&amp;gt;
    &amp;lt;div class="left"&amp;gt;&amp;lt;/div&amp;gt;
    &amp;lt;div class="right"&amp;gt;&amp;lt;/div&amp;gt;
    &amp;lt;div class="back"&amp;gt;&amp;lt;/div&amp;gt;
    &amp;lt;div class="front"&amp;gt;&amp;lt;/div&amp;gt;
  &amp;lt;/div&amp;gt;
&amp;lt;/div&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The scene contains the body of the cube, I have given the CSS class names to the sides of the cube which I guess makes sense to you all.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Adding the Magic of CSS&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;body {
  background-color: #ff9152;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  overflow: hidden;
  perspective: 20em;
  perspective-origin: 50% calc(50% - 10em);
}

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

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;I have given a background color to the body, used flex to center the elements 
Use the perspective property to make the body 3D&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Checkout docs for perspective at W3school:  &lt;a href="https://www.w3schools.com/cssref/css3_pr_perspective.asp" rel="noopener noreferrer"&gt;click here&lt;/a&gt; &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Setting &lt;em&gt;perspective-origin&lt;/em&gt; by calculating the height of the body&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The perspective-origin property defines at which position the user is looking at the 3D-positioned element.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;.scene {
  position: relative;
  transform-style: preserve-3d;
  animation: rotateX 7s infinite linear;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Setting the position  to relative so the elements inside it can be positioned to absolute&lt;br&gt;
respective to the scene&lt;/p&gt;

&lt;p&gt;Adding a &lt;em&gt;transform-style: preserve-3d&lt;/em&gt;  &lt;/p&gt;

&lt;p&gt;The transform-style property specifies how nested elements are rendered in 3D space.&lt;/p&gt;

&lt;p&gt;Now let us style the cube:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;.box {
  height: 120px;
  width: 120px;
  position: relative;
  transform-style: preserve-3d;
  animation: rotateY 5s infinite linear;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Just gave some height, position, and animation&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Styling the sides of the Cube&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;.top,
.bottom,
.left,
.right,
.front,
.back {
  position: absolute;
  height: 120px;
  transform-style: preserve-3d;
  width: 120px;
  background-color: rgba(20, 116, 241, 0.281);
background-size:cover; 
box-sizing:border-box;
border: 5px solid #fff;
}
.front {
  transform: translateZ(3.7rem);
  background-image: url("https://cdn140.picsart.com/355182439052201.jpg?to=crop&amp;amp;type=webp&amp;amp;r=310x310&amp;amp;q=75");
background-size:cover;
}

.right {
  transform: rotateY(270deg) translateZ(3.7rem);
background-image: url("http://pm1.narvii.com/7533/be35ca4f98dd1790e03d932bc70c8d3588359105r1-281-281v2_uhq.jpg")

}
.back {
  transform: rotateY(180deg) translateZ(3.7rem);
background-image:url("https://cdn.costumewall.com/wp-content/uploads/2018/09/sasuke-uchiha.jpg");
background-size:cover;
}
.left {
  transform: rotateY(90deg) translateZ(3.7rem);
background-image:url("https://i1.sndcdn.com/avatars-000736438537-zvc9fi-t240x240.jpg");
background-size:cover;
}

.top {
  transform: translateY(-50%) rotateX(90deg);
scaleY(-1);
background-image:url("https://i.pinimg.com/originals/c2/c6/87/c2c687c78da549431b8903e0aad90184.png");
background-size:cover;
}
.bottom {
  bottom: -120px;
  transform: translateY(-50%) rotateX(90deg) scaleY(-1);
background-image: url("https://static.wikia.nocookie.net/08b81b8e-00c6-4f69-83c6-94bfc79f05c7/scale-to-width/755");
background-size:cover;

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

&lt;/div&gt;



&lt;p&gt;Using the transform property and with use of translate and rotate will give the desired shape of the cube&lt;/p&gt;

&lt;p&gt;Set the background with characters from &lt;strong&gt;#Naruto&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Added Some keyframes to animate the cube&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@keyframes rotateX{
  25% {
   transform: rotateX(-180deg);
  }
  50% {
    transform: rotateY(-360deg);
 }
  70%{
   transfrom: rotateX(-180deg)
}


}

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

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;And we are done&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>codepen</category>
      <category>webdev</category>
      <category>css</category>
      <category>html</category>
    </item>
    <item>
      <title>UI Design Fundamentals</title>
      <dc:creator>Krutik Raut</dc:creator>
      <pubDate>Mon, 19 Jul 2021 04:08:51 +0000</pubDate>
      <link>https://dev.to/krutikkkkkkkkk/ui-design-fundamentals-2c2m</link>
      <guid>https://dev.to/krutikkkkkkkkk/ui-design-fundamentals-2c2m</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7br6xofdc8e9le0327mf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7br6xofdc8e9le0327mf.png" alt="Custom Size – 1.png" width="800" height="999"&gt;&lt;/a&gt;&lt;/p&gt;

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

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

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

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

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

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

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

&lt;h3&gt;
  
  
  Follow me on Instagram
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://instagram.com/reboot13_dev" rel="noopener noreferrer"&gt;@reboot13_dev&lt;/a&gt;&lt;/p&gt;

</description>
      <category>uiweekly</category>
      <category>ui</category>
      <category>uidesign</category>
      <category>design</category>
    </item>
    <item>
      <title>Best Text Editor For Programming</title>
      <dc:creator>Krutik Raut</dc:creator>
      <pubDate>Sun, 18 Jul 2021 07:49:52 +0000</pubDate>
      <link>https://dev.to/krutikkkkkkkkk/best-text-editor-for-programming-5ek6</link>
      <guid>https://dev.to/krutikkkkkkkkk/best-text-editor-for-programming-5ek6</guid>
      <description>&lt;p&gt;The first question that we need to answer is what text editors are actually out there. And Stack Overflow really helps us here because they did a poll in 2019 of over 87,000 developers.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Text Editors&lt;/th&gt;
&lt;th&gt;Survey results&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Vs code&lt;/td&gt;
&lt;td&gt;50.7%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Notepad++&lt;/td&gt;
&lt;td&gt;30.5%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Vim&lt;/td&gt;
&lt;td&gt;25.4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sublime Text&lt;/td&gt;
&lt;td&gt;23.4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Atom&lt;/td&gt;
&lt;td&gt;13.3%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;



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

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Visual Studio Code is probably the master when it comes to capabilities&lt;/em&gt;&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;It's the all in one package. This is the editor that most programmers seem to use for most of their programming, and this is for good reason. &lt;br&gt;
VS Code is efficient with pretty much any project that you could come up with VS code has git integration, terminal console integration, memory consumption is low. And even on bigger projects, it runs really smoothly. And these things are not unique to the VS Code. They also exist in other editors, However, with Atom, for instance, you have to install a terminal to use it. And with the sublime, you need to install a package for Git integration. And even with that, it just doesn't work as smoothly as with VS code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://code.visualstudio.com/download" rel="noopener noreferrer"&gt;Download Vs Code&lt;/a&gt; &lt;/p&gt;



&lt;h3&gt;
  
  
  VIM
&lt;/h3&gt;

&lt;p&gt;For instance, with a text editor like vim, which is a really popular one, there is one drawback and that is the learning curve. vim uses a tonne of key bindings for navigation and writing and editing text. To use vim, you need to first learn how to write text, how to stop writing text, how to save, and finally how to quit. With all the other editors mentioned, you don't need to learn any of these things, because you will already know how to do it since it works like pretty much everything else that you're used to.&lt;br&gt;
&lt;strong&gt;&lt;em&gt;This means that the learning curve for using vim is a lot greater than it is for any of the other editors on our list.&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
But the potential for productivity benefits that this can lead to is also a lot greater. Since vim is based on being a fast editor, it means that making changes to the text should be as quick as possible, it is optimized for using the keyboard as your only input device.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.vim.org/download.php" rel="noopener noreferrer"&gt;Download VIM&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  Sublime Text
&lt;/h3&gt;

&lt;p&gt;When it comes to speed the winner is Sublime Text. It's fast, it's lightweight, it's what I would call the ultimate start editor. If you're just getting started, then Sublime Text is likely a great choice because it's lightweight and fast.&lt;br&gt;
Sublime Text is perfect for the beginner programmer and the advanced programmer because the use case for both will be very similar, even though their experience level differs greatly.&lt;br&gt;
Sublime Text, while being lighter-weight than an IDE, still supports many IDE features.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Text from the current file is used to provide autocomplete.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Project Support (folder browsing, scoped history, build-system declarations).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Refactoring support is emulated through multi-select, project-wide find and replace, and regular expression search.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Syntax-aware selection and GoTo for quickly jumping to locations in the project.&lt;br&gt;
Snippets and Macros.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A Python console for everything else.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://www.sublimetext.com/3" rel="noopener noreferrer"&gt;Download Sublime Text&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Notepad++
&lt;/h3&gt;

&lt;p&gt;Notepad++ is a powerful, feature-packed text editor that more or less has everything Notepad needs but lacks (it can replace Notepad in Windows). It supports 27 programming languages.&lt;br&gt;
It has syntax highlighting, excellent themes and support for most languages and file formats.&lt;br&gt;
If you close Notepad++ (NPP), your documents remain even if you haven't saved.&lt;br&gt;
While it is disabled by default, when enabled, it is possible to edit more than one line at a time. This is helpful in many situations.&lt;br&gt;
You can define your own custom syntax highlighting rules.&lt;br&gt;
You can now compile and run C++ programs from within Notepad++.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://notepad-plus-plus.org/downloads" rel="noopener noreferrer"&gt;Download Notepad++&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Atom by Github
&lt;/h3&gt;

&lt;p&gt;Atom is great in that it is open-source software, ensuring it can be customized without restrictions. It comes integrated with GitHub.One of the goals of the Atom is to be a text editor for both experienced and beginner programmers. You can add keyboard shortcuts, change themes, install plugins, and change core settings by clicking through a GUI, or by manually editing config files the old-fashioned way. It has the added advantage of being built using the same engine that powers Google Chrome, so actions like opening and closing tabs feel familiar, even to new or non-programmers.&lt;br&gt;
Atom has a built-in package manager and an extensive list of packages.&lt;br&gt;
But there are many disadvantages too its not lightweight as not as fast as sublime text.&lt;br&gt;
Atom is very slow to startup, which is a big disadvantage if you are accustomed to using it to make quick changes on your files.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://atom.io" rel="noopener noreferrer"&gt;Download Atom&lt;/a&gt;&lt;/p&gt;



&lt;h3&gt;
  
  
  My Preference
&lt;/h3&gt;

&lt;p&gt;So now what editors have I used? Well, this is exactly what I've used in the past VS code for my main projects and longer sessions and Sublime Text for my shorter quick-fix fast coding sessions. And honestly, this is something that came to me quite naturally. And it came from the want to use Sublime Text because I like their style a lot more. But for some reason, as soon as it was a bigger project, I always end up switching back from Sublime Text to VS code after an hour or so. And I'm not really certain why exactly that is. But something just made me do that naturally. Same goes for the opposite direction. Of course, anytime I started writing something small in VS code, &lt;/p&gt;

&lt;p&gt;Conclusion: You should use 2 text editor 1 with all functionalities to code and compile and 1 which is lightweight and to make quick fixes. &lt;/p&gt;

&lt;p&gt;I choose Vscode and Sublime text 3 what about you? &lt;br&gt;
Comment down below!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>vscode</category>
    </item>
    <item>
      <title>Setting Up Custom 404 Error Page</title>
      <dc:creator>Krutik Raut</dc:creator>
      <pubDate>Sat, 17 Jul 2021 11:50:59 +0000</pubDate>
      <link>https://dev.to/krutikkkkkkkkk/setting-up-custom-404-error-page-57c3</link>
      <guid>https://dev.to/krutikkkkkkkkk/setting-up-custom-404-error-page-57c3</guid>
      <description>&lt;h3&gt;
  
  
  What does HTTP 404 mean?
&lt;/h3&gt;

&lt;p&gt;The HTTP 404, 404 Not Found, 404, 404 Error, Page Not Found or File Not Found error message is a Hypertext Transfer Protocol standard response code, in computer network communications, to indicate that the browser was able to communicate with a given server, but the server could not find what was requested. &lt;/p&gt;




&lt;p&gt;&lt;strong&gt;The Default 404 error pages are not good looking and don't have any type of navigations&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Following are some methods you can use to auto-redirect to a custom error page.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Website Running on Apache webserver&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Create a custom webpage for 404 error and name it 404.html&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create a file name &lt;code&gt;.htaccess&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;File content: ErrorDocument {error_code}  {custom file path}&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ErrorDocument 404 /404.html 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;OR&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ErrorDocument 404 https://yourwebsite.com/404.html 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now the site will redirect to 404.html whenever the user gets a 404 HTTP response or browse the wrong URL path on your website.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here are some hosting services that run on Apache webserver&lt;/strong&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;tbody&gt;
  &lt;tr&gt;
    &lt;td&gt;Hostinger&lt;/td&gt;
    &lt;td&gt;Heroku&lt;/td&gt;
    &lt;td&gt;GoDaddy&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;Netlify&lt;/td&gt;
    &lt;td&gt;BlueHost&lt;/td&gt;
    &lt;td&gt;1&amp;amp;1&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;Cloudways&lt;/td&gt;
    &lt;td&gt;SiteGround&lt;/td&gt;
    &lt;td&gt;HostGator&lt;/td&gt;
  &lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;ul&gt;
&lt;li&gt;Website Hosted on Vercel.com&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Create a custom webpage for 404 error and name it 404.html&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create a file name &lt;code&gt;vercel.json&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;File content:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{
  "routes": [
    { "handle": "filesystem" },
    { "src": "/(.*)", "status": 404, "dest": "/404.html" }
  ]
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Read more at official docs: &lt;a href="https://vercel.com/guides/custom-404-page" rel="noopener noreferrer"&gt;https://vercel.com/guides/custom-404-page&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Website hosted on Github Page&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;The simplest so far&lt;/em&gt;&lt;/p&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Create a custom webpage for 404 error and name it 404.html&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Add this file to your repository&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Done &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;




&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Website running on Heroku&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For a PHP app hosted on Heroku follow the same method as of Apache Server&lt;/p&gt;

&lt;p&gt;OR&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Create a custom webpage for 404 error and name it 404.html&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Run this command on Heroku CLI&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;heroku config:set \ 
ERROR_PAGE_URL=//yourwebsite.com/public/404.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Read more at official docs: &lt;a href="https://devcenter.heroku.com/articles/error-pages" rel="noopener noreferrer"&gt;https://devcenter.heroku.com/articles/error-pages&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Note: Make sure the 404.html is present in your root directory with index.html&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Video Tutorial [Apache Server]&lt;/strong&gt; : &lt;a href="https://www.youtube.com/watch?v=QkB5ZxeYaJQ&amp;amp;t" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=QkB5ZxeYaJQ&amp;amp;t&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;a href="https://instagram.com/reboot13_dev" rel="noopener noreferrer"&gt;Instagram&lt;/a&gt; | &lt;a href="https://youtube.com/krutikraut" rel="noopener noreferrer"&gt;Youtube&lt;/a&gt;  | &lt;a href="https://twitter.com/reboot13_dev" rel="noopener noreferrer"&gt;Twitter&lt;/a&gt; | &lt;a href="https://codepen.io/reboot13" rel="noopener noreferrer"&gt;Codepen&lt;/a&gt;&lt;/p&gt;

&lt;center&gt; ThankYou &lt;/center&gt;

</description>
      <category>error404</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Spotify UI</title>
      <dc:creator>Krutik Raut</dc:creator>
      <pubDate>Sat, 10 Jul 2021 11:11:40 +0000</pubDate>
      <link>https://dev.to/krutikkkkkkkkk/spotify-ui-57jm</link>
      <guid>https://dev.to/krutikkkkkkkkk/spotify-ui-57jm</guid>
      <description>&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/reboot13/embed/rNmMMKZ?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>codepen</category>
      <category>spotify</category>
      <category>uidesign</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
