<?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: adwait12345</title>
    <description>The latest articles on DEV Community by adwait12345 (@adwait12345).</description>
    <link>https://dev.to/adwait12345</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%2F737753%2F77137caf-ee91-4226-b5a0-f3fc46db5795.png</url>
      <title>DEV Community: adwait12345</title>
      <link>https://dev.to/adwait12345</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/adwait12345"/>
    <language>en</language>
    <item>
      <title>How fetch(keepalive) Broke in High-Latency Regions</title>
      <dc:creator>adwait12345</dc:creator>
      <pubDate>Thu, 19 Feb 2026 06:47:24 +0000</pubDate>
      <link>https://dev.to/adwait12345/why-fetchkeepalive-broke-my-analytics-events-in-high-latency-regions-3p44</link>
      <guid>https://dev.to/adwait12345/why-fetchkeepalive-broke-my-analytics-events-in-high-latency-regions-3p44</guid>
      <description>&lt;p&gt;So recently I built a so-called analytics service for fun. If you don’t know, make sure you check out &lt;a href="https://www.adwait.me/writings/building-my-own-google-analytics" rel="noopener noreferrer"&gt;here&lt;/a&gt; once. Alright, so I put the base MVP version for testing with my last article randomly.&lt;/p&gt;

&lt;p&gt;I thought, okay, let’s test how much data it can collect. I shared that article on Hacker News, Dev.to, WhatsApp, etc., around 10:30 AM. Everything was normal — the analytics dashboard started showing views, sessions, unique visitors, etc. I went for lunch in the afternoon, and when I came back, I saw a very big spike — almost 800 new sessions recorded. It looked like it was working crazy solid.&lt;/p&gt;

&lt;p&gt;It was a nice serotonin hit until I saw the Activity Logs.&lt;/p&gt;

&lt;p&gt;There were some &lt;code&gt;scroll_depth&lt;/code&gt; requests from certain unique visitors, but the &lt;code&gt;page_view&lt;/code&gt; request logs were completely missing for that visitor_id.&lt;/p&gt;

&lt;p&gt;Something f**ked up.&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%2Fsouliea4ouy1aweazhqb.webp" 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%2Fsouliea4ouy1aweazhqb.webp" alt="Issue" width="800" height="293"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you haven’t realised yet what’s happening 😂, let me explain the logic first.&lt;/p&gt;

&lt;p&gt;In the analytics service, when a new visitor lands on a webpage, a &lt;code&gt;page_view&lt;/code&gt; event is called first, and then eventually &lt;code&gt;scroll_depth&lt;/code&gt; happens (only if you love to scroll 🙂).&lt;/p&gt;

&lt;p&gt;I found this bug because you always love scrolling, right 😉&lt;/p&gt;

&lt;p&gt;Practically, the order should be:&lt;/p&gt;

&lt;p&gt;(&lt;code&gt;page_view&lt;/code&gt; → &lt;code&gt;scroll_depth&lt;/code&gt; → and so on…)&lt;/p&gt;

&lt;p&gt;This was happening majorly for some requests from the Europe/US region.&lt;/p&gt;

&lt;p&gt;Even if it were a race condition, it would appear after the scroll event, but there was complete silence.&lt;/p&gt;

&lt;p&gt;Continue &lt;a href="https://www.adwait.me/writings/broke-my-analytics-events-in-high-latency-regions" rel="noopener noreferrer"&gt;Here&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>performance</category>
      <category>analytics</category>
    </item>
    <item>
      <title>Building My Own Google Analytics for $0</title>
      <dc:creator>adwait12345</dc:creator>
      <pubDate>Wed, 11 Feb 2026 06:53:13 +0000</pubDate>
      <link>https://dev.to/adwait12345/building-my-own-google-analytics-for-0-13eo</link>
      <guid>https://dev.to/adwait12345/building-my-own-google-analytics-for-0-13eo</guid>
      <description>&lt;p&gt;&lt;strong&gt;Prerequisite:&lt;/strong&gt; &lt;em&gt;You must at least have heard about GA or its use case.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;If you are a developer then you would have already encountered GA or equivalent.&lt;br&gt;
So without wasting anymore time im gonna waste your time by forcing you to understand how Analytics services (like Google Analytics, Posthog, Cloudflare Web Analytics, etc) actually work.&lt;/p&gt;

&lt;p&gt;It's very simple and interesting at same time. Let's say you have a webpage which is hosted on some domain. Now if you want to track views coming on webpage, then&lt;br&gt;
If I ask you how would you track (without using analytics services)?&lt;/p&gt;

&lt;p&gt;The most common answer would be:&lt;br&gt;
Add a &lt;strong&gt;viewCounter&lt;/strong&gt; to page and as soon as someone lands do &lt;strong&gt;viewCounter++&lt;/strong&gt;&lt;br&gt;
OR &lt;br&gt;
Built an endpoint to increment counter&lt;br&gt;
And that's how simple it is!! &lt;br&gt;
Then I thought why not build one for myself.&lt;br&gt;
 &lt;/p&gt;
&lt;h2&gt;
  
  
  Reverse Engineering Google Analytics
&lt;/h2&gt;

&lt;p&gt;Before writing code, I like to reverse engineer.&lt;br&gt;
Let's hop some website which use GA&lt;/p&gt;

&lt;p&gt;Ex: &lt;a href="https://solocreators.app/" rel="noopener noreferrer"&gt;https://solocreators.app&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As soon as we land on the page, &lt;strong&gt;collect request&lt;/strong&gt; triggers.&lt;br&gt;
So there is some client side Script which is being executed after we land on the page and send a request to googleAnalytics server with some payload data.&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%2F1xop3lfqqht2c4gtm8p2.jpeg" 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%2F1xop3lfqqht2c4gtm8p2.jpeg" alt="Solo" width="800" height="414"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If I try to scroll down the page more collect requests happen, with payload, if i click on any button then again collect request happens.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do you notice the pattern?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you play around you will realize collect requests are being done on almost every event.&lt;br&gt;
 &lt;/p&gt;
&lt;h2&gt;
  
  
  The Basic Architecture
&lt;/h2&gt;

&lt;p&gt;So we need following components:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;User's Browser
    ↓
Tracking Script (track.js)
    ↓
Backend API
    ↓
Database
    ↓
Dashboard
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you are interested I documented the full build and architecture here:&lt;br&gt;
&lt;a href="https://www.adwait.me/writings/building-my-own-google-analytics" rel="noopener noreferrer"&gt;https://www.adwait.me/writings/building-my-own-google-analytics&lt;/a&gt;&lt;/p&gt;

</description>
      <category>analytics</category>
      <category>sideprojects</category>
      <category>tutorial</category>
      <category>webdev</category>
    </item>
    <item>
      <title>API integration like Enterprise scale React based applications.</title>
      <dc:creator>adwait12345</dc:creator>
      <pubDate>Mon, 18 Aug 2025 12:37:26 +0000</pubDate>
      <link>https://dev.to/adwait12345/api-integration-like-enterprise-scale-react-based-applications-1dpo</link>
      <guid>https://dev.to/adwait12345/api-integration-like-enterprise-scale-react-based-applications-1dpo</guid>
      <description>&lt;p&gt;Integrating API (Application interface protocol) with frontend applications which makes the software industry run today. And integrating API is by far the easiest job on this planet until you realize that the code you are writing is not for you. Lets start very simple, as such no prerequisite needed if you understand JavaScript that will be more than enough.&lt;/p&gt;

&lt;p&gt;So let's dive deep, we will be using Axios for handling all HTTP requests. If you don’t know what Axios is ? It's almost the same with fetch which is natively provided in browsers. Being a 3rd party, Axios provides advanced request handling, parsing, request interception, etc.&lt;/p&gt;

&lt;p&gt;This is how a normal api request looks like using Axios.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import axios from "axios";
async function getUserList() {
  try {
    const response = await axios.get("https://example.com/v1/users");
    console.log(response);
  } catch (error) {
    console.log(error);
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can set custom headers according to your need&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import axios from "axios";
const options = {
  method: "POST",
  headers: { Authorization: `Bearer ${data.token}` },
};
async function getUserList() {
  try {
    const response = await axios.get("https://example.com/v1/users", options);
    console.log(response);
  } catch (error) {
    console.log(error);
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If your frontend application handles 2-4 API endpoint connections then the above method is the best in case you want to save your time. What if your application is going to handle more than a couple hundred requests in that case Axios Interceptor comes into picture, it's gonna save you a lot of time and you’re gonna thank me later. It’s almost used everywhere in industry in enterprise scale applications.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key Highlights:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Consistent error handling throughout all the api requests.&lt;/li&gt;
&lt;li&gt;Attaching an auth token to every request without repeating code for every request.&lt;/li&gt;
&lt;li&gt;Global response formatting.&lt;/li&gt;
&lt;li&gt;Cancelling initiated request.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Let’s see how the basic implementation of interceptor will look like&lt;/p&gt;

&lt;p&gt;Create one file lets say &lt;code&gt;interceptor.ts&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import axios from "axios";
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Create an instance from axios&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const api = axios.create({
 baseURL: "https://example.com/", // replace with your API
 timeout: 5000,
});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After an instance is initiated, we are ready to intercept the requests going through this instance. Now we want to send authorization headers with &lt;code&gt;Bearer token&lt;/code&gt; with every request from the frontend. Axios has internal methods built in to intercept ongoing requests before it happens and send custom headers. This is how it will look like&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;api.interceptors.request.use(
  (config) =&amp;gt; {
    const token = localStorage.getItem("token"); // get token from storage
    if (token) {
      config.headers.Authorization = `Bearer ${token}`;
    }
    return config;
  },
  (error) =&amp;gt; {
    // Do something before request is sent
    return Promise.reject(error);
  }
);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now we have successfully intercepted ongoing requests using Axios. Lets use it for unwrap response structure globally rather than doing it on every single request. This is how it will look like, We are getting &lt;code&gt;response&lt;/code&gt; from server and &lt;code&gt;response.data&lt;/code&gt; is the useful part so we will return &lt;code&gt;response.data&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;api.interceptors.response.use(
  (response) =&amp;gt; {
    // You can modify response globally
    return response.data; // now you get res.data directly
  },
  (error) =&amp;gt; {
    if (error.response?.status === 401) {
      console.error("Unauthorized! Redirecting to login...");
      window.location.href = "/login"; // redirect user
    }
    return Promise.reject(error);
  }
);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now export the instance&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;export default api;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is how actually usage will look like&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import api from "./interceptor";
async function getUserList() {
  try {
    const response = await api.get("/users");
    console.log(response);
  } catch (error) {
    console.log(error);
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now lets look into how to cancel an ongoing request using Axios interceptor. To cancel an ongoing request Axios provides &lt;code&gt;AbortController&lt;/code&gt; terminates ongoing request instantly, and this is how it will look like&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;api.interceptors.request.use((config) =&amp;gt; {
  if (config.cancel === true) {
    const controller = new AbortController();
    controller.abort(); // cancel immediately
    config.signal = controller.signal;
  }
  return config;
});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Usage&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import api from "./axios";

// Normal request (works fine)
api
  .get("/users")
  .then((res) =&amp;gt; console.log("✅ Success:", res.data))
  .catch((err) =&amp;gt; console.error(err));
// Cancelled request
api
  .get("/users", { cancel: true })
  .then((res) =&amp;gt; console.log(res))
  .catch((err) =&amp;gt; console.error("❌ Cancelled:", err.message));
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>webdev</category>
      <category>api</category>
      <category>programming</category>
      <category>react</category>
    </item>
    <item>
      <title>How JavaScript code is Executed under the hood !!</title>
      <dc:creator>adwait12345</dc:creator>
      <pubDate>Fri, 19 Jan 2024 13:59:36 +0000</pubDate>
      <link>https://dev.to/adwait12345/how-javascript-code-is-executed-under-the-hood--39o</link>
      <guid>https://dev.to/adwait12345/how-javascript-code-is-executed-under-the-hood--39o</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;JavaScript is one of the most simultaneously hated and loved programming languages on this planet&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;Today JavaScript is used almost everywhere like in mobiles, televisions, even in light bulbs🤯&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;In this article, we will try to understand how JavaScript works under the hood. Despite its widespread use, around 98% of developers still don't fully grasp how JavaScript works. By the end of this article, I assure you that you'll in top 2% 😉&lt;/p&gt;

&lt;p&gt;&lt;em&gt;JavaScript is a synchronous and single-threaded language&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Synchronous&lt;/strong&gt; means that when JavaScript code runs, it goes through line by line and executes each line without waiting for anyone! (Don't worry; we'll get to the asynchronous part later. If you're not familiar with asynchronous JS, mark my words, you're going to love it!)&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;thread&lt;/strong&gt; refers to a call stack, a data structure that keeps track of the code currently being executed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iW4oL9ZS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3dxezv09yzq9jvyl3c4g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iW4oL9ZS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3dxezv09yzq9jvyl3c4g.png" alt="Call_Stack" width="435" height="1052"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Now, here comes the main part !!
&lt;/h2&gt;

&lt;p&gt;How JavaScript code is compiled ?&lt;/p&gt;

&lt;p&gt;JavaScript is a high-level programming language, remember it cannot be ran on any terminal/system, it need js runtime environment to work. &lt;/p&gt;

&lt;p&gt;What is JavaScript Runtime Environment?&lt;br&gt;
It is just an environment where JavaScript's high level code is converted to low machine level code. That's all you need to know about JS Runtime.&lt;br&gt;
Examples of Runtime are :- Chrome uses &lt;strong&gt;V8 Engine&lt;/strong&gt;, NodeJS also use &lt;strong&gt;V8&lt;/strong&gt;, Firefox uses &lt;strong&gt;SpiderMonkey&lt;/strong&gt;, Edge uses &lt;strong&gt;Chakra&lt;/strong&gt;, etc.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;How JavaScript is Executed ?&lt;br&gt;
*&lt;/em&gt;&lt;br&gt;
A brand new Execution context is created and after that&lt;/p&gt;

&lt;p&gt;JavaScript Code is executed in two phase:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Memory allocation&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Code Execution&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZV9rYfRG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5122o9xdny1j5no9nd77.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZV9rYfRG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5122o9xdny1j5no9nd77.png" alt="Execution_Context" width="800" height="330"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As you can see in above illustration there are two phases&lt;/p&gt;

&lt;p&gt;Let's try to understand with the help of code sample&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;var a = 1
var b = "Luffy"
function Random () {
console.log("Favorite no of " + b + " is " + a);
}
Random();
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When we try to execute above code it will go through two phases&lt;br&gt;
Memory Allocation &amp;amp; Code Execution.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Memory Allocation:&lt;/strong&gt;&lt;br&gt;
In this phase JS runtime goes through every line of code one by one from top to bottom and allocate memory to every variables, functions and constants. &lt;br&gt;
As this part is mainly allocation phase so no computation is required.&lt;/p&gt;

&lt;p&gt;You can refer the below illustration for visualization.  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--O2hhMgc1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eqdtfjqlx1e9xuwm73br.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--O2hhMgc1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eqdtfjqlx1e9xuwm73br.png" alt="Memory_Allocation" width="800" height="484"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now you might wonder what is undefined I see in this figure.&lt;br&gt;
So, undefined is special keyword in JavaScript which is given to variables before assigning values to them.&lt;br&gt;
(Note: let &amp;amp; const works differently in that case we will discuss later).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Code Execution:&lt;/strong&gt;&lt;br&gt;
In this phase JS runtime again goes through line by line code from top to bottom, and now allocates the values to &lt;code&gt;var&lt;/code&gt; if in case of variable declared, calls and executes the function and after going through complete code it pops itself from main call stack.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--OkF-dUUR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i72yxe2ztzrloe7opzl1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--OkF-dUUR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i72yxe2ztzrloe7opzl1.png" alt="Code_Execution" width="800" height="318"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As you can see in above reference image how code is being executed. And in case of any function call a brand new execution context is created and after its execution it just gets popped off.&lt;/p&gt;

&lt;p&gt;That's all how code is executed in JavaScript 🎉 &lt;/p&gt;

&lt;p&gt;&lt;em&gt;Please add comment if you find any mistake&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;If you like such content let's connect !!&lt;br&gt;
&lt;a href="https://twitter.com/AdwaitBokade"&gt;Twitter&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>typescript</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>📢Announcing Synergia Hackfest</title>
      <dc:creator>adwait12345</dc:creator>
      <pubDate>Sun, 18 Jun 2023 06:22:35 +0000</pubDate>
      <link>https://dev.to/adwait12345/announcing-synergia-hackfest-18mm</link>
      <guid>https://dev.to/adwait12345/announcing-synergia-hackfest-18mm</guid>
      <description>&lt;h2&gt;
  
  
  Hola Folks!
&lt;/h2&gt;

&lt;p&gt;🚀 Calling all aspiring developers and tech enthusiasts! 🖥️&lt;/p&gt;

&lt;p&gt;We are thrilled to announce our first upcoming Hackathon event, where innovation, collaboration, and problem-solving skills will take center stage. 🌟 Whether you're a coding prodigy or a novice looking to explore the world of technology, this event is the perfect platform to showcase your talent, learn new skills, and network with like-minded individuals.&lt;/p&gt;

&lt;p&gt;📅  Date: 23 June 2023&lt;br&gt;
📍  Venue: Online&lt;br&gt;
🔗  Registration Link: &lt;em&gt;&lt;a href="http://bit.ly/3NAwXCn"&gt;http://bit.ly/3NAwXCn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;🔥 Event Highlights:&lt;/p&gt;

&lt;p&gt;1️⃣  Round 1: Registration and Idea Submission&lt;br&gt;
2️⃣  Round 2: Competition and Development&lt;br&gt;
3️⃣  Round 3: Result &lt;/p&gt;

&lt;p&gt;✨ The top projects will be shortlisted as finalists.&lt;/p&gt;

&lt;p&gt;🔥 Perks :&lt;/p&gt;

&lt;p&gt;1️⃣  Networking Opportunities&lt;br&gt;
2️⃣  Job Interview Opportunities &lt;br&gt;
3️⃣  Certificate of Achievement&lt;/p&gt;

&lt;p&gt;🤙 Contact Us/Join :&lt;/p&gt;

&lt;p&gt;Discord: &lt;em&gt;&lt;a href="https://discord.gg/wBXEeHEwMr"&gt;https://discord.gg/wBXEeHEwMr&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
Email Us: &lt;em&gt;&lt;a href="mailto:team@synergialabs.tech"&gt;team@synergialabs.tech&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
Website: &lt;em&gt;&lt;a href="https://synergialabs.tech/"&gt;https://synergialabs.tech/&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;⚠️ Important Note: Every participant MUST join discord server of Synergia for the Hackathon&lt;/p&gt;

&lt;p&gt;We look forward to seeing you at the Hackathon!&lt;/p&gt;

</description>
      <category>hackathon</category>
      <category>community</category>
      <category>programming</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Summer Internship at Synergia Labs</title>
      <dc:creator>adwait12345</dc:creator>
      <pubDate>Fri, 07 Apr 2023 12:30:41 +0000</pubDate>
      <link>https://dev.to/adwait12345/internship-and-project-opportunity-with-synergia-labs-5jb</link>
      <guid>https://dev.to/adwait12345/internship-and-project-opportunity-with-synergia-labs-5jb</guid>
      <description>&lt;p&gt;&lt;a href="https://dev.tourl"&gt;&lt;/a&gt;Fellow Developers &amp;amp; students,&lt;/p&gt;

&lt;p&gt;At Synergia Labs, we are committed to providing valuable learning experiences for students like you. As part of this mission, we will be offering exciting projects and internships in the near future.&lt;/p&gt;

&lt;p&gt;To help us tailor these opportunities to your interests and goals, we kindly request that you fill out the survey form linked below. Your feedback will be crucial in shaping the types of projects and internships we offer, as well as ensuring that we provide the best possible learning experience for you.&lt;/p&gt;

&lt;p&gt;Thank you for taking the time to fill out this survey. We look forward to working with you soon!&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
      &lt;div class="c-embed__cover"&gt;
        &lt;a href="https://docs.google.com/forms/d/e/1FAIpQLSf6DLz_yekH7rb45cc47uFm4n6xPT0_1tO0Vs6zVsCsTEuA6Q/viewform?usp=send_form" class="c-link s:max-w-50 align-middle" rel="noopener noreferrer"&gt;
          &lt;img alt="" src="https://res.cloudinary.com/practicaldev/image/fetch/s--cA1iXGnz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://lh6.googleusercontent.com/l8UtEU_rfXSF8qFWYklERY5enTOEdbP9gIExIixR8ozwWIttmqtdw8CaXodp6N8hOF4w5aECWfk%3Dw1200-h630-p" height="462" class="m-0" width="880"&gt;
        &lt;/a&gt;
      &lt;/div&gt;
    &lt;div class="c-embed__body"&gt;
      &lt;h2 class="fs-xl lh-tight"&gt;
        &lt;a href="https://docs.google.com/forms/d/e/1FAIpQLSf6DLz_yekH7rb45cc47uFm4n6xPT0_1tO0Vs6zVsCsTEuA6Q/viewform?usp=send_form" rel="noopener noreferrer" class="c-link"&gt;
          Survey Form
        &lt;/a&gt;
      &lt;/h2&gt;
      &lt;div class="color-secondary fs-s flex items-center"&gt;
          &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://res.cloudinary.com/practicaldev/image/fetch/s--NakE4-Dl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://ssl.gstatic.com/docs/spreadsheets/forms/favicon_qp2.png" width="16" height="16"&gt;
        docs.google.com
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Best regards,&lt;br&gt;
The Synergia Labs team&lt;/p&gt;

</description>
      <category>career</category>
      <category>startup</category>
      <category>news</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How to built a Instagram Navbar Clone | HTML CSS &amp; Js</title>
      <dc:creator>adwait12345</dc:creator>
      <pubDate>Sat, 27 Nov 2021 06:17:15 +0000</pubDate>
      <link>https://dev.to/adwait12345/how-to-built-a-instagram-navbar-clone-html-css-js-27h9</link>
      <guid>https://dev.to/adwait12345/how-to-built-a-instagram-navbar-clone-html-css-js-27h9</guid>
      <description>&lt;p&gt;Learn how to create an Instagram Navbar clone with pure HTML CSS and JavaScript! &lt;br&gt;
This project is good for beginners to start with , and  after completing this project you will be confident enough to built like Instagram's components.&lt;br&gt;
&lt;strong&gt;Below is the reference video for proper execution&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/OjOtrUYDo3M"&gt;
&lt;/iframe&gt;
 &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to Subscribe Bocadmium:&lt;/strong&gt; &lt;a href="https://www.youtube.com/channel/UC-AjAUV5Q42VV1Yv8oh6apg"&gt;https://www.youtube.com/channel/UC-AjAUV5Q42VV1Yv8oh6apg&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Source Code:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1)index.html&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;&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html lang="en"&amp;gt;

&amp;lt;head&amp;gt;
    &amp;lt;meta charset="UTF-8"&amp;gt;
    &amp;lt;meta http-equiv="X-UA-Compatible" content="IE=edge"&amp;gt;
    &amp;lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&amp;gt;
    &amp;lt;!-- Linking Css file  --&amp;gt;
    &amp;lt;link rel="stylesheet" href="style.css"&amp;gt;
    &amp;lt;!-- Linking Js file  --&amp;gt;
    &amp;lt;script src="main.js"&amp;gt;&amp;lt;/script&amp;gt;
    &amp;lt;!-- Title  --&amp;gt;
    &amp;lt;title&amp;gt;Instagram&amp;lt;/title&amp;gt;
&amp;lt;/head&amp;gt;

&amp;lt;body&amp;gt;
    &amp;lt;!-- Created Nav  --&amp;gt;
    &amp;lt;nav class="nav"&amp;gt;
         &amp;lt;!-- Created a container  --&amp;gt;
         &amp;lt;div class="wrapper"&amp;gt;
         &amp;lt;!-- Made a logo container  --&amp;gt;
            &amp;lt;div class="logo" style="padding-top: 8px;padding-right: 110px;"&amp;gt;
                &amp;lt;img src="https://www.instagram.com/static/images/web/mobile_nav_type_logo.png/735145cfe0a4.png" alt=""&amp;gt;
             &amp;lt;/div&amp;gt;
             &amp;lt;!-- Logo container ends here --&amp;gt;

             &amp;lt;!-- Created search container  --&amp;gt;
            &amp;lt;div class="search"&amp;gt;
                &amp;lt;input
                    style="border: 1px solid #dbdbdb; background-color: #fafafa; height: 27.5px;width: 12.5rem ;border-radius: 3.5px;padding-left: 25px;font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif ;"
                    type="text" placeholder="Search"&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;!-- search Container ends here  --&amp;gt;

            &amp;lt;!-- Created icons container  --&amp;gt;
            &amp;lt;div class="icons"&amp;gt;
                &amp;lt;!-- Home starts  --&amp;gt;
                &amp;lt;div class="home"&amp;gt;
                    &amp;lt;svg aria-label="Home" class="_8-yf5 " color="#262626" fill="#262626" height="22" role="img"
                        viewBox="0 0 48 48" width="22"&amp;gt;
                        &amp;lt;path id="home1"
                            d="M45.5 48H30.1c-.8 0-1.5-.7-1.5-1.5V34.2c0-2.6-2.1-4.6-4.6-4.6s-4.6 2.1-4.6 4.6v12.3c0 .8-.7 1.5-1.5 1.5H2.5c-.8 0-1.5-.7-1.5-1.5V23c0-.4.2-.8.4-1.1L22.9.4c.6-.6 1.6-.6 2.1 0l21.5 21.5c.3.3.4.7.4 1.1v23.5c.1.8-.6 1.5-1.4 1.5z"&amp;gt;
                        &amp;lt;/path&amp;gt;
                    &amp;lt;/svg&amp;gt;
                &amp;lt;/div&amp;gt;
                     &amp;lt;!-- Home ends  --&amp;gt;

                     &amp;lt;!-- explore starts  --&amp;gt;
                &amp;lt;div class="explore"&amp;gt;
                    &amp;lt;svg aria-label="Direct" class="_8-yf5 " color="#262626" fill="#262626" height="22" role="img"
                        viewBox="0 0 48 48" width="22"&amp;gt;
                        &amp;lt;path
                            d="M47.8 3.8c-.3-.5-.8-.8-1.3-.8h-45C.9 3.1.3 3.5.1 4S0 5.2.4 5.7l15.9 15.6 5.5 22.6c.1.6.6 1 1.2 1.1h.2c.5 0 1-.3 1.3-.7l23.2-39c.4-.4.4-1 .1-1.5zM5.2 6.1h35.5L18 18.7 5.2 6.1zm18.7 33.6l-4.4-18.4L42.4 8.6 23.9 39.7z"&amp;gt;
                        &amp;lt;/path&amp;gt;
                    &amp;lt;/svg&amp;gt;
                &amp;lt;/div&amp;gt;
                      &amp;lt;!-- explore ends  --&amp;gt;

                      &amp;lt;!-- create starts  --&amp;gt;
                &amp;lt;div class="create"&amp;gt;
                    &amp;lt;svg aria-label="New Post" class="_8-yf5 " color="#262626" fill="#262626" height="22" role="img"
                        viewBox="0 0 48 48" width="22"&amp;gt;
                        &amp;lt;path
                            d="M31.8 48H16.2c-6.6 0-9.6-1.6-12.1-4C1.6 41.4 0 38.4 0 31.8V16.2C0 9.6 1.6 6.6 4 4.1 6.6 1.6 9.6 0 16.2 0h15.6c6.6 0 9.6 1.6 12.1 4C46.4 6.6 48 9.6 48 16.2v15.6c0 6.6-1.6 9.6-4 12.1-2.6 2.5-5.6 4.1-12.2 4.1zM16.2 3C10 3 7.8 4.6 6.1 6.2 4.6 7.8 3 10 3 16.2v15.6c0 6.2 1.6 8.4 3.2 10.1 1.6 1.6 3.8 3.1 10 3.1h15.6c6.2 0 8.4-1.6 10.1-3.2 1.6-1.6 3.1-3.8 3.1-10V16.2c0-6.2-1.6-8.4-3.2-10.1C40.2 4.6 38 3 31.8 3H16.2z"&amp;gt;
                        &amp;lt;/path&amp;gt;
                        &amp;lt;path
                            d="M36.3 25.5H11.7c-.8 0-1.5-.7-1.5-1.5s.7-1.5 1.5-1.5h24.6c.8 0 1.5.7 1.5 1.5s-.7 1.5-1.5 1.5z"&amp;gt;
                        &amp;lt;/path&amp;gt;
                        &amp;lt;path
                            d="M24 37.8c-.8 0-1.5-.7-1.5-1.5V11.7c0-.8.7-1.5 1.5-1.5s1.5.7 1.5 1.5v24.6c0 .8-.7 1.5-1.5 1.5z"&amp;gt;
                        &amp;lt;/path&amp;gt;
                    &amp;lt;/svg&amp;gt;
                &amp;lt;/div&amp;gt;
                       &amp;lt;!-- create ends  --&amp;gt;

                       &amp;lt;!-- compass starts  --&amp;gt;
                &amp;lt;div class="compass"&amp;gt;
                    &amp;lt;svg aria-label="Find People" class="_8-yf5 " color="#262626" fill="#262626" height="22" role="img"
                        viewBox="0 0 48 48" width="22"&amp;gt;
                        &amp;lt;path clip-rule="evenodd"
                            d="M24 0C10.8 0 0 10.8 0 24s10.8 24 24 24 24-10.8 24-24S37.2 0 24 0zm0 45C12.4 45 3 35.6 3 24S12.4 3 24 3s21 9.4 21 21-9.4 21-21 21zm10.2-33.2l-14.8 7c-.3.1-.6.4-.7.7l-7 14.8c-.3.6-.2 1.3.3 1.7.3.3.7.4 1.1.4.2 0 .4 0 .6-.1l14.8-7c.3-.1.6-.4.7-.7l7-14.8c.3-.6.2-1.3-.3-1.7-.4-.5-1.1-.6-1.7-.3zm-7.4 15l-5.5-5.5 10.5-5-5 10.5z"
                            fill-rule="evenodd"&amp;gt;&amp;lt;/path&amp;gt;
                    &amp;lt;/svg&amp;gt;
                &amp;lt;/div&amp;gt;
                         &amp;lt;!-- compass ends  --&amp;gt;

                         &amp;lt;!-- Heart starts   --&amp;gt;
                &amp;lt;div class="heart"&amp;gt;
                    &amp;lt;svg aria-label="Activity Feed" class="_8-yf5 " color="#262626" fill="#262626" height="22"
                        role="img" viewBox="0 0 48 48" width="22"&amp;gt;
                        &amp;lt;path
                            d="M34.6 6.1c5.7 0 10.4 5.2 10.4 11.5 0 6.8-5.9 11-11.5 16S25 41.3 24 41.9c-1.1-.7-4.7-4-9.5-8.3-5.7-5-11.5-9.2-11.5-16C3 11.3 7.7 6.1 13.4 6.1c4.2 0 6.5 2 8.1 4.3 1.9 2.6 2.2 3.9 2.5 3.9.3 0 .6-1.3 2.5-3.9 1.6-2.3 3.9-4.3 8.1-4.3m0-3c-4.5 0-7.9 1.8-10.6 5.6-2.7-3.7-6.1-5.5-10.6-5.5C6 3.1 0 9.6 0 17.6c0 7.3 5.4 12 10.6 16.5.6.5 1.3 1.1 1.9 1.7l2.3 2c4.4 3.9 6.6 5.9 7.6 6.5.5.3 1.1.5 1.6.5.6 0 1.1-.2 1.6-.5 1-.6 2.8-2.2 7.8-6.8l2-1.8c.7-.6 1.3-1.2 2-1.7C42.7 29.6 48 25 48 17.6c0-8-6-14.5-13.4-14.5z"&amp;gt;
                        &amp;lt;/path&amp;gt;
                    &amp;lt;/svg&amp;gt;
                &amp;lt;/div&amp;gt;
                           &amp;lt;!-- Heart ends  --&amp;gt;

                           &amp;lt;!-- Profile image starts  --&amp;gt;
                &amp;lt;div class="profile-img"&amp;gt;
                     &amp;lt;!-- Profile icon start  --&amp;gt;
                    &amp;lt;div&amp;gt; &amp;lt;span style="width:22px;height:22px; border: 1px solid #fafafa;"&amp;gt;
                            &amp;lt;img style="width:22px;height:22px;border-radius: 100%;" src="./images/profile.png" alt=""&amp;gt;
                        &amp;lt;/span&amp;gt;
                    &amp;lt;/div&amp;gt;
                    &amp;lt;!-- Profile icons ends  --&amp;gt;

                    &amp;lt;!-- Drop down menu starts  --&amp;gt;
                    &amp;lt;div class="drop-down"&amp;gt;
                        &amp;lt;!-- pointer for drop down  --&amp;gt;
                        &amp;lt;div class="square" style="
                            width: 15px;
                            height: 15px;
                            background-color: #ffffff;
                            position: absolute;
                            top: -8px;
                            right: 18px;
                            z-index: 0;
                            transform: rotateZ(45deg);
                            box-shadow:-5px -5px 5px 0px rgb(0 0 0 / 10%);"&amp;gt;
                            &amp;lt;/div&amp;gt;
                            &amp;lt;!-- pointer ends  --&amp;gt;

                        &amp;lt;ul&amp;gt;
                            &amp;lt;!-- 1 item start  --&amp;gt;
                            &amp;lt;li&amp;gt;
                                &amp;lt;svg aria-label="Profile" class="_8-yf5 " color="#262626" fill="#262626" height="16"
                                    role="img" viewBox="0 0 32 32" width="16"&amp;gt;
                                    &amp;lt;path
                                        d="M16 0C7.2 0 0 7.1 0 16c0 4.8 2.1 9.1 5.5 12l.3.3C8.5 30.6 12.1 32 16 32s7.5-1.4 10.2-3.7l.3-.3c3.4-3 5.5-7.2 5.5-12 0-8.9-7.2-16-16-16zm0 29c-2.8 0-5.3-.9-7.5-2.4.5-.9.9-1.3 1.4-1.8.7-.5 1.5-.8 2.4-.8h7.2c.9 0 1.7.3 2.4.8.5.4.9.8 1.4 1.8-2 1.5-4.5 2.4-7.3 2.4zm9.7-4.4c-.5-.9-1.1-1.5-1.9-2.1-1.2-.9-2.7-1.4-4.2-1.4h-7.2c-1.5 0-3 .5-4.2 1.4-.8.6-1.4 1.2-1.9 2.1C4.2 22.3 3 19.3 3 16 3 8.8 8.8 3 16 3s13 5.8 13 13c0 3.3-1.2 6.3-3.3 8.6zM16 5.7c-3.9 0-7 3.1-7 7s3.1 7 7 7 7-3.1 7-7-3.1-7-7-7zm0 11c-2.2 0-4-1.8-4-4s1.8-4 4-4 4 1.8 4 4-1.8 4-4 4z"&amp;gt;
                                    &amp;lt;/path&amp;gt;
                                &amp;lt;/svg&amp;gt;
                                &amp;lt;a href="#"&amp;gt;Profile&amp;lt;/a&amp;gt;
                            &amp;lt;/li&amp;gt;
                            &amp;lt;!-- 1 ends  --&amp;gt;

                            &amp;lt;!-- 2 item starts  --&amp;gt;
                            &amp;lt;li&amp;gt;
                                &amp;lt;svg aria-label="Saved" class="_8-yf5 " color="#262626" fill="#262626" height="16"
                                    role="img" viewBox="0 0 32 32" width="16"&amp;gt;
                                    &amp;lt;path
                                        d="M28.7 32c-.4 0-.8-.2-1.1-.4L16 19.9 4.4 31.6c-.4.4-1.1.6-1.6.3-.6-.2-.9-.8-.9-1.4v-29C1.8.7 2.5 0 3.3 0h25.4c.8 0 1.5.7 1.5 1.5v29c0 .6-.4 1.2-.9 1.4-.2.1-.4.1-.6.1zM4.8 3v23.9l9.4-9.4c.9-.9 2.6-.9 3.5 0l9.4 9.4V3H4.8z"&amp;gt;
                                    &amp;lt;/path&amp;gt;
                                &amp;lt;/svg&amp;gt;
                                &amp;lt;a href="#"&amp;gt;Saved&amp;lt;/a&amp;gt;
                            &amp;lt;/li&amp;gt;
                            &amp;lt;!-- 2 ends  --&amp;gt;

                            &amp;lt;!-- 3 item starts  --&amp;gt;
                            &amp;lt;li&amp;gt;
                                &amp;lt;svg aria-label="Settings" class="_8-yf5 " color="#262626" fill="#262626" height="16"
                                    role="img" viewBox="0 0 32 32" width="16"&amp;gt;
                                    &amp;lt;path
                                        d="M31.2 13.4l-1.4-.7c-.1 0-.2-.1-.2-.2v-.2c-.3-1.1-.7-2.1-1.3-3.1v-.1l-.2-.1v-.3l.5-1.5c.2-.5 0-1.1-.4-1.5l-1.9-1.9c-.4-.4-1-.5-1.5-.4l-1.5.5H23l-.1-.1h-.1c-1-.5-2-1-3.1-1.3h-.2c-.1 0-.1-.1-.2-.2L18.6.9c-.2-.5-.7-.9-1.2-.9h-2.7c-.5 0-1 .3-1.3.8l-.7 1.4c0 .1-.1.2-.2.2h-.2c-1.1.3-2.1.7-3.1 1.3h-.1l-.1.2h-.3l-1.5-.5c-.5-.2-1.1 0-1.5.4L3.8 5.7c-.4.4-.5 1-.4 1.5l.5 1.5v.5c-.5 1-1 2-1.3 3.1v.2c0 .1-.1.1-.2.2l-1.4.7c-.6.2-1 .7-1 1.2v2.7c0 .5.3 1 .8 1.3l1.4.7c.1 0 .2.1.2.2v.2c.3 1.1.7 2.1 1.3 3.1v.1l.2.1v.3l-.5 1.5c-.2.5 0 1.1.4 1.5l1.9 1.9c.3.3.6.4 1 .4.2 0 .3 0 .5-.1l1.5-.5H9l.1.1h.1c1 .5 2 1 3.1 1.3h.2c.1 0 .1.1.2.2l.7 1.4c.2.5.7.8 1.3.8h2.7c.5 0 1-.3 1.3-.8l.7-1.4c0-.1.1-.2.2-.2h.2c1.1-.3 2.1-.7 3.1-1.3h.1l.1-.1h.3l1.5.5c.1 0 .3.1.5.1.4 0 .7-.1 1-.4l1.9-1.9c.4-.4.5-1 .4-1.5l-.5-1.5V23l.1-.1v-.1c.5-1 1-2 1.3-3.1v-.2c0-.1.1-.1.2-.2l1.4-.7c.5-.2.8-.7.8-1.3v-2.7c0-.5-.4-1-.8-1.2zM16 27.1c-6.1 0-11.1-5-11.1-11.1S9.9 4.9 16 4.9s11.1 5 11.1 11.1-5 11.1-11.1 11.1z"&amp;gt;
                                    &amp;lt;/path&amp;gt;
                                &amp;lt;/svg&amp;gt;
                                &amp;lt;a href="#"&amp;gt;Settings&amp;lt;/a&amp;gt;
                            &amp;lt;/li&amp;gt;
                            &amp;lt;!-- 3 ends  --&amp;gt;

                            &amp;lt;!-- 4 item starts  --&amp;gt;
                            &amp;lt;li&amp;gt;
                                &amp;lt;svg aria-label="Switch Accounts" class="_8-yf5 " color="#262626" fill="#262626"
                                    height="16" role="img" viewBox="0 0 32 32" width="16"&amp;gt;
                                    &amp;lt;path
                                        d="M10.3 10.7c0-.8-.7-1.5-1.5-1.5H4.9C7.2 5.4 11.4 3 16 3c3.6 0 7 1.5 9.5 4.1.5.6 1.5.6 2.1.1.6-.6.6-1.5.1-2.1-3-3.2-7.3-5-11.7-5C10.7 0 6 2.5 3 6.7V3.5C3 2.7 2.3 2 1.5 2S0 2.7 0 3.5v7.2c0 .8.7 1.5 1.5 1.5h7.3c.8 0 1.5-.6 1.5-1.5zm20.2 9.1h-7.2c-.8 0-1.5.7-1.5 1.5s.7 1.5 1.5 1.5h3.8C24.8 26.6 20.6 29 16 29c-3.6 0-7-1.5-9.5-4.1-.5-.6-1.5-.6-2.1-.1-.6.6-.6 1.5-.1 2.1 3 3.2 7.3 5 11.7 5 5.3 0 10-2.5 13-6.7v3.2c0 .8.7 1.5 1.5 1.5s1.5-.7 1.5-1.5v-7.2c0-.8-.7-1.4-1.5-1.4z"&amp;gt;
                                    &amp;lt;/path&amp;gt;
                                &amp;lt;/svg&amp;gt;
                                &amp;lt;a href="#"&amp;gt;Switch Accounts&amp;lt;/a&amp;gt;
                            &amp;lt;/li&amp;gt;
                            &amp;lt;!-- 5 item starts  --&amp;gt;
                            &amp;lt;li style="border-top:2px solid #dbdbdb;"&amp;gt;&amp;lt;a href="#"&amp;gt;Log Out&amp;lt;/a&amp;gt;
                            &amp;lt;/li&amp;gt;
                            &amp;lt;!-- 5 ends  --&amp;gt;
                        &amp;lt;/ul&amp;gt;
                    &amp;lt;/div&amp;gt;&amp;lt;!-- Drop down menu ends  --&amp;gt;  

                &amp;lt;/div&amp;gt; &amp;lt;!-- Profile image ends  --&amp;gt;

            &amp;lt;/div&amp;gt;&amp;lt;!-- Icons container ends here  --&amp;gt;

           &amp;lt;/div&amp;gt;&amp;lt;!-- Container ends here  --&amp;gt;

    &amp;lt;/nav&amp;gt;&amp;lt;!-- Nav ends here --&amp;gt;

&amp;lt;/body&amp;gt;


&amp;lt;/html&amp;gt;






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

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;2) style.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;* {
  margin: 0;
  padding: 0;
}
body {
  background-color: #fafafa;
}
.nav {
  position: absolute;
  width: 100%;
  height: 54px;
  top: 0;
  background-color: #ffffff;
  border-bottom: 1px solid #dbdbdb;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
}
.wrapper {
  position: relative;
  width: 975px;
  height: 54px;
  top: 0;
  background-color: #ffffff;

  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0px 0px 0px 18px;
}
.icons {
  width: 300px;
  display: flex;
  justify-content: space-evenly;
}
.logo,
.home,
.explore,
.create,
.compass,
.heart,
.profile-img {
  cursor: pointer;
}
/* drop-down */
.drop-down {
  position: absolute;
  top: 53px;
  width: 201px;
  height: 200px;
  box-shadow: 0 0 5px 1px rgb(0 0 0 / 10%);
  background-color: #ffffff;
  border-radius: 5px;
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  z-index: 1;
  right: 1%;
  visibility: hidden;
}
.drop-down ul {
  display: flex;
  flex-direction: column;
}
.drop-down ul li {
  padding: 8px 16px;
  list-style: none;
}
.drop-down ul li:hover {
  background-color: #fafafa;
}
.drop-down ul li a {
  text-decoration: none;

  color: #2b2b2b;
}

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

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;3) main.js&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 togglestatus = true;
document.addEventListener("DOMContentLoaded", (event) =&amp;gt; {
  console.log("hi");
  const p = document.querySelector(".profile-img");
  p.addEventListener("click", () =&amp;gt; {
    if (togglestatus === false) {
      document.querySelector(".drop-down").style.visibility = "hidden";
      document
        .querySelector("#home1")
        .setAttribute(
          "d",
          "M45.5 48H30.1c-.8 0-1.5-.7-1.5-1.5V34.2c0-2.6-2.1-4.6-4.6-4.6s-4.6 2.1-4.6 4.6v12.3c0 .8-.7 1.5-1.5 1.5H2.5c-.8 0-1.5-.7-1.5-1.5V23c0-.4.2-.8.4-1.1L22.9.4c.6-.6 1.6-.6 2.1 0l21.5 21.5c.3.3.4.7.4 1.1v23.5c.1.8-.6 1.5-1.4 1.5z"
        );

      togglestatus = true;
    } else if (togglestatus === true) {
      document.querySelector(".drop-down").style.visibility = "visible";
      document
        .querySelector("#home1")
        .setAttribute(
          "d",
          "M45.3 48H30c-.8 0-1.5-.7-1.5-1.5V34.2c0-2.6-2-4.6-4.6-4.6s-4.6 2-4.6 4.6v12.3c0 .8-.7 1.5-1.5 1.5H2.5c-.8 0-1.5-.7-1.5-1.5V23c0-.4.2-.8.4-1.1L22.9.4c.6-.6 1.5-.6 2.1 0l21.5 21.5c.4.4.6 1.1.3 1.6 0 .1-.1.1-.1.2v22.8c.1.8-.6 1.5-1.4 1.5zm-13.8-3h12.3V23.4L24 3.6l-20 20V45h12.3V34.2c0-4.3 3.3-7.6 7.6-7.6s7.6 3.3 7.6 7.6V45z"
        );
      togglestatus = false;
    }
  });
});

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

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Thank you 😊&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>html</category>
      <category>javascript</category>
      <category>css</category>
      <category>beginners</category>
    </item>
    <item>
      <title>TypeWriter Effect with Javascript | HTML, CSS &amp; JS</title>
      <dc:creator>adwait12345</dc:creator>
      <pubDate>Sat, 06 Nov 2021 18:05:13 +0000</pubDate>
      <link>https://dev.to/adwait12345/typewriter-effect-with-javascript-html-css-js-3m0n</link>
      <guid>https://dev.to/adwait12345/typewriter-effect-with-javascript-html-css-js-3m0n</guid>
      <description>&lt;p&gt;Hello Everyone ,&lt;br&gt;
        Today we are going to learn how to do the type write effect in vanilla JavaScript. You would be surprised how simple it is and we can build it in only in few lines of JavaScript code. &lt;/p&gt;

&lt;p&gt;Tools used in this video: VS Code, HTML , CSS , JavaScript&lt;/p&gt;

&lt;p&gt;Follow my video tutorial :-&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/2ivrQrry394"&gt;
&lt;/iframe&gt;
 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Friends if you like it then also follow my youtube channel &lt;strong&gt;Bocadmium&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to Subscribe Bocadmium: &lt;a href="https://www.youtube.com/channel/UC-AjAUV5Q42VV1Yv8oh6apg"&gt;https://www.youtube.com/channel/UC-AjAUV5Q42VV1Yv8oh6apg&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Source Code :&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;1)index.html&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;&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html lang="en"&amp;gt;
&amp;lt;head&amp;gt;
    &amp;lt;meta charset="UTF-8"&amp;gt;
    &amp;lt;meta http-equiv="X-UA-Compatible" content="IE=edge"&amp;gt;
    &amp;lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&amp;gt;
    &amp;lt;title&amp;gt;Type writer&amp;lt;/title&amp;gt;
    &amp;lt;script src="main.js"&amp;gt;&amp;lt;/script&amp;gt;
    &amp;lt;link rel="stylesheet" href="style.css"&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
    &amp;lt;div class="box-main"&amp;gt;
        &amp;lt;p class="text-big"&amp;gt;
            &amp;lt;span class="text-change" data-wait="3000" data-words='["Premium Education for all!","Suscribe to Bocadmium"]'&amp;gt;&amp;lt;/span&amp;gt;
        &amp;lt;/p&amp;gt;
    &amp;lt;/div&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;2)style.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;.box-main{
    display: flex;
    justify-content: center;
    align-items: center;
    color: grey;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    max-width: 100%;
    font-size: 30px;
}

/* cursor */
.text-change &amp;gt; .txt{
    border-right: 0.2rem solid #777;
    animation: blink 575ms infinite;
}
@keyframes blink {
    to{
        border-right: 0.2rem solid transparent;
    }
}

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

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;3)main.js&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;const TypeWriter = function(txtElement, words, wait = 3000){
    this.txtElement = txtElement;
    this.words = words;
    this.txt = '';
    this.wordIndex=0;
    this.wait = parseInt(wait,10);
    this.type();
    this.isDeleting = false;
}
// Type Method
TypeWriter.prototype.type = function(){
   // current index of word
   const current = this.wordIndex % this.words.length;
// Get full text of curent word 
const fulltxt = this.words[current];
// check if deleting
if(this.isDeleting){
//Remove a character
this.txt = fulltxt.substring(0, this.txt.length - 1);
}else{
// Add a character
this.txt = fulltxt.substring(0, this.txt.length + 1);

}

// Insert txt into Element
this.txtElement.innerHTML = `&amp;lt;span class="txt"&amp;gt;${this.txt}&amp;lt;/span&amp;gt;`;

// type speed
let typespeed = 50;

if(this.isDeleting){
    typespeed = typespeed / 2;
}

//if word is complete
if(!this.isDeleting &amp;amp;&amp;amp; this.txt === fulltxt)
{
    //Make a pause at end
   typespeed = this.wait;
    // set delete is true
    this.isDeleting = true;

}else if(this.isDeleting &amp;amp;&amp;amp; this.txt === '') {
    this.isDeleting = false;
    //move to next word
this.wordIndex++;
//Pause before start typing
typespeed = 500;

}
setTimeout(() =&amp;gt;this.type(), typespeed)

}
// init on dom load
document.addEventListener('DOMContentLoaded', init);

//init app
function init(){
  const txtElement = document.querySelector('.text-change');
  const words = JSON.parse(txtElement.getAttribute('data-words'));
  const wait = txtElement.getAttribute('data-wait');
  //init type writer
new TypeWriter(txtElement, words, wait);
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>css</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>How to built your own Map | HTML , CSS , JavaScript &amp; Leaflet.js in just 10 min</title>
      <dc:creator>adwait12345</dc:creator>
      <pubDate>Sat, 30 Oct 2021 12:22:59 +0000</pubDate>
      <link>https://dev.to/adwait12345/how-to-built-your-own-map-html-css-javascript-leafletjs-57eg</link>
      <guid>https://dev.to/adwait12345/how-to-built-your-own-map-html-css-javascript-leafletjs-57eg</guid>
      <description>&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/VFjCGfwB3Qs"&gt;
&lt;/iframe&gt;
&lt;br&gt;
Hi folks ,&lt;br&gt;
 In this todays video you will get to learn how to built your own &lt;br&gt;
Dynamic map with HTML , CSS , JavaScript &amp;amp; Leaflet.js . It is going to be to to much interesting with only little amount of code . In this video you will also come across through usage of API and its implementation. &lt;br&gt;
This is going to be completely responsive design and map is going to be completely dynamic &amp;amp; you can search anything by search indexing used in map and this is one of best project for junior developers !&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Map will appear like blank but it not ,you have to zoom it in demo&lt;/strong&gt;&lt;br&gt;
Git hub link for demo: &lt;a href="https://adwait12345.github.io/Responsive-maps/"&gt;https://adwait12345.github.io/Responsive-maps/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Please watch this video it will be really helpful to you and try to watch complete because 1/2 is dangerous sometimes 😅&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you like it really, please do subscribe my youtube channel -&lt;/strong&gt;🤘&lt;br&gt;
&lt;a href="https://youtube.com/channel/UC-AjAUV5Q42VV1Yv8oh6apg"&gt;https://youtube.com/channel/UC-AjAUV5Q42VV1Yv8oh6apg&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Source code :&lt;br&gt;
&lt;strong&gt;1)index.html&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;&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html lang="en"&amp;gt;
&amp;lt;head&amp;gt;
    &amp;lt;meta charset="UTF-8"&amp;gt;
    &amp;lt;meta http-equiv="X-UA-Compatible" content="IE=edge"&amp;gt;
    &amp;lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&amp;gt;
    &amp;lt;title&amp;gt;Toggle Menu&amp;lt;/title&amp;gt;
    &amp;lt;link rel="stylesheet" href="style.css"&amp;gt;
    &amp;lt;link rel="stylesheet" media="screen and (max-width:1080px)" href="phone.css" &amp;gt;

    &amp;lt;link rel="stylesheet" media="screen and (max-width:875px)" href="small.css" &amp;gt;
 &amp;lt;!--map  --&amp;gt;
    &amp;lt;link rel="stylesheet" href="https://unpkg.com/leaflet@1.7.1/dist/leaflet.css"
   integrity="sha512-xodZBNTC5n17Xt2atTPuE1HxjVMSvLVW9ocqUKLsCC5CXdbqCmblAshOMAS6/keqq/sMZMZ19scR4PsZChSR7A=="
   crossorigin=""/&amp;gt;
   &amp;lt;script src="https://unpkg.com/leaflet@1.7.1/dist/leaflet.js"
   integrity="sha512-XQoYMqMTK8LvdxXYG3nZ448hOEQiglfqkJs1NOQV44cWnUrBc8PkAOcXy20w0vlaXaVUearIOBhiXZ5V3ynxwA=="
   crossorigin=""&amp;gt;&amp;lt;/script&amp;gt;

 &amp;lt;link rel="stylesheet" href="https://unpkg.com/leaflet-control-geocoder/dist/Control.Geocoder.css" /&amp;gt;
&amp;lt;script src="https://unpkg.com/leaflet-control-geocoder/dist/Control.Geocoder.js"&amp;gt;&amp;lt;/script&amp;gt; 

&amp;lt;/head&amp;gt;
&amp;lt;body id="buddy"&amp;gt;
    &amp;lt;section&amp;gt;
    &amp;lt;nav class="nav-main"&amp;gt;
        &amp;lt;div class="logo"&amp;gt;&amp;lt;img src="./Bocadmium-logos_black2.png" alt=""&amp;gt;&amp;lt;/div&amp;gt;
        &amp;lt;ul&amp;gt;
           &amp;lt;li&amp;gt; &amp;lt;a href="#"&amp;gt;Home&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
           &amp;lt;li&amp;gt; &amp;lt;a href="#"&amp;gt;Portfolio&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
           &amp;lt;li&amp;gt; &amp;lt;a href="#"&amp;gt;About Us&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
           &amp;lt;li&amp;gt; &amp;lt;a href="#"&amp;gt;Gallery&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
           &amp;lt;li&amp;gt; &amp;lt;a href="#"&amp;gt;Contact&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
        &amp;lt;/ul&amp;gt;
    &amp;lt;/nav&amp;gt;

&amp;lt;div class="toggle"&amp;gt;
    &amp;lt;button id="hit"&amp;gt;
        &amp;lt;svg  viewBox="0 -2 100 80" width="40" height="30"style="
        overflow: visible; 
    "&amp;gt; &amp;gt;
            &amp;lt;rect id="change0"width="75" height="10" fill="#2666C1"&amp;gt;&amp;lt;/rect&amp;gt;
            &amp;lt;rect id="change" y="30" width="75" height="10"fill="#2666C1"&amp;gt;&amp;lt;/rect&amp;gt;
            &amp;lt;rect id="change1" y="60" width="75" height="10"fill="#2666C1"&amp;gt;&amp;lt;/rect&amp;gt;
&amp;lt;/svg&amp;gt;  
    &amp;lt;/button&amp;gt;
&amp;lt;/div&amp;gt;&amp;lt;/section&amp;gt;
&amp;lt;section&amp;gt;
    &amp;lt;div id="mapid"&amp;gt;&amp;lt;/div&amp;gt;

&amp;lt;/section&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;script src="main.js"&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;/html&amp;gt;

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

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;2)style.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: #f1f1f1;
}

.nav-main{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height:14vh;
    background-color: #fff;
    display: flex;
    flex-wrap: wrap;
    z-index: 1;
    justify-content: center;
    align-items: center;
}
.logo img {
    width: 349px;
    height: 110px;
    position: relative;
    left: -1px;
    top: -5px;
}


.nav-main ul{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    padding: 15px;
    top: -5px;
}
.nav-main ul li{
list-style: none;
line-height: 0px;
padding: 10px 55px 0 0;
}

.nav-main ul li a{
    display: block;
    height: 200%;
    padding: 0 10px;
    text-transform: uppercase;
    text-decoration: none;
    color: #111;
    font-family: arial;
    font-size: 16px;
}

/* map */

#mapid{
    position: fixed;
    height:650px;
    width: 100%;
    border-radius: 10px;
    top: 105px;
    left: 0;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;3)phone.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: #f1f1f1;
}

.logo img {
    width: 289px;
    height: 96px;
    position: relative;
    top: -16px;
    left: -129px;



 }.logo  {
    width: 100px;
    height: 100px;
    position: absolute;


 }
 .nav-main ul {
    display: flex;
    position: absolute;
    flex-wrap: wrap;
    padding: 15px;
   justify-content: center;
   align-items: baseline;
   top: 62px;
}
.nav-main{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height:20vh;
    background-color: #fff;
    display: flex;
    flex-wrap: wrap;
    z-index: 1;
    justify-content: center;
    align-items: center;
}
/* map */
#mapid{
    position: fixed;
    height:600px;
    width: 100%;
    border-radius: 10px;
    top: 150px;
    left: 0;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;4)small.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;.logo  {
    width: 100%;
    height: 70px;
    position: absolute;

    display: flex;
    justify-content: start;
    align-self: center;

 }

 .logo img {
    display: block;
    width: 223px;
    height: 65px;
    position: absolute;
    left: -9px;
    top: 2px;

 }

 .nav-main ul {
     height: 40vh;
     width: 200px;
     position: fixed;
     top: -1px;
   right: 10px;
     background-color: whitesmoke;
     border-radius: 10px;
     visibility: hidden;

     box-shadow: none;
 }
 .nav-main ul li {

     position: relative;
     left: 30px;
     top: 10px;

 }
 .nav-main{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height:8vh;
    background-color: #fff;
    display: flex;
    flex-wrap: wrap;
    z-index: 1;
    justify-content: center;
    align-items: center;

}
.toggle button {
    position: absolute;
    right: 10px;
    z-index: 1;
   top: 17px;
    background: transparent;
    border: none;
}
#mapid{
    position: fixed;
    height:90vh;
    width: 100%;
    /* border-radius: 0px; */
    top: 8vh;
    left: 0px;
    z-index: -1;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;5)main.js&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;console.log("hi there");
let togglestatus = false;
let toggle = document.getElementById('hit');
let element =  document.querySelector('.nav-main ul')
toggle.addEventListener('click',()=&amp;gt;{

 if(togglestatus === false) { document.getElementById('change').setAttribute('transform','rotate(45),translate(0)')
   document.getElementById('change').setAttribute('y','0')
    document.getElementById('change1').setAttribute('transform','rotate(-45),translate(-45)')
   document.getElementById('change1').setAttribute('y','30')
     document.getElementById('change0').setAttribute('transform','rotate(-45),translate(-40)')
   document.getElementById('change0').setAttribute('y','30')
    }
    else if (togglestatus === true){
        document.getElementById('change').setAttribute('transform','rotate(0),translate(0)')
   document.getElementById('change').setAttribute('y','30')
    document.getElementById('change1').setAttribute('transform','rotate(0),translate(0)')
   document.getElementById('change1').setAttribute('y','60')
     document.getElementById('change0').setAttribute('transform','rotate(0),translate(0)')
   document.getElementById('change0').setAttribute('y','0')
    }
   if(togglestatus === false)
{ 
    element.style.visibility="visible";
    element.style.boxShadow= "0 10px 25px rgba(92, 99, 105, .2)";
    togglestatus = true;
    }
  else if(togglestatus === true){

    element.style.visibility="hidden";
    togglestatus = false;
  }
});


// API

var mymap = L.map('mapid').fitWorld();



L.tileLayer('https://api.maptiler.com/maps/streets/{z}/{x}/{y}.png?key=add your own key', {
    attribution: '&amp;lt;a href="https://www.maptiler.com/copyright/" target="_blank"&amp;gt;&amp;amp;copy; MapTiler&amp;lt;/a&amp;gt; &amp;lt;a href="https://www.openstreetmap.org/copyright" target="_blank"&amp;gt;&amp;amp;copy; OpenStreetMap contributors&amp;lt;/a&amp;gt;',
    maxZoom: 20,

    tileSize: 512,
    zoomOffset: -1,

}).addTo(mymap);
  // search
L.Control.geocoder().addTo(mymap);








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

&lt;/div&gt;



</description>
      <category>html</category>
      <category>javascript</category>
      <category>webdev</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Simple Music Player With JavaScript in just 10 min.</title>
      <dc:creator>adwait12345</dc:creator>
      <pubDate>Wed, 27 Oct 2021 20:33:35 +0000</pubDate>
      <link>https://dev.to/adwait12345/simple-music-player-with-javascript-5ffb</link>
      <guid>https://dev.to/adwait12345/simple-music-player-with-javascript-5ffb</guid>
      <description>&lt;p&gt;Hi folks in this tutorial you will learn basic DOM elements of &lt;br&gt;
JavaScript like eventlistner and will provide you a very good essence of JavaScript if you watch carefully you will definitely &lt;br&gt;
understand and with the use of basic functions you will learn to integrate.&lt;/p&gt;

&lt;p&gt;If you like plz subscribe to my channel it will be great help to me. &lt;br&gt;
Code cheat-is not available only for this tutorial because I don't&lt;br&gt;
saved files after making tutorial 😅. Don't mind plz enjoy above video tutorial. &lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/hCgv1cGTUTM"&gt;
&lt;/iframe&gt;
&lt;br&gt;
Thankyou😊&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>html</category>
      <category>webdev</category>
      <category>beginners</category>
    </item>
    <item>
      <title>How to Create a Login Form with HTML and CSS in very less time</title>
      <dc:creator>adwait12345</dc:creator>
      <pubDate>Wed, 27 Oct 2021 12:17:05 +0000</pubDate>
      <link>https://dev.to/adwait12345/how-to-create-a-login-form-with-html-and-css-3k1c</link>
      <guid>https://dev.to/adwait12345/how-to-create-a-login-form-with-html-and-css-3k1c</guid>
      <description>&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/mnoktPkRjbA"&gt;
&lt;/iframe&gt;
&lt;br&gt;
Hi folks in this tutorial you will be learning about how to create&lt;br&gt;
a beautiful login form with the help of HTML &amp;amp; CSS with snappy animations in it. You will learn basics of html &amp;amp; css as well and this is the best project for beginners. I recommend you to do this project if you are aspiring web developer. All the best do it !!&lt;br&gt;
And feel free to ask doubts !!&lt;br&gt;
Thankyou 😊&lt;br&gt;
Resource Code:&lt;br&gt;
&lt;strong&gt;1)index.html&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;&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html lang="en"&amp;gt;
&amp;lt;head&amp;gt;
    &amp;lt;meta charset="UTF-8"&amp;gt;
    &amp;lt;meta http-equiv="X-UA-Compatible" content="IE=edge"&amp;gt;
    &amp;lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&amp;gt;
    &amp;lt;title&amp;gt;Document&amp;lt;/title&amp;gt;
    &amp;lt;link rel="stylesheet" href="style.css"&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
    &amp;lt;div class="container"&amp;gt;
        &amp;lt;form class="form"&amp;gt;
            &amp;lt;h2 class="form_title"&amp;gt;Log in&amp;lt;/h2&amp;gt;
            &amp;lt;div class="form_div"&amp;gt;
                &amp;lt;input type="text" class="form_input" placeholder=" "&amp;gt;
                &amp;lt;label class="form_label"&amp;gt;Username/Email&amp;lt;/label&amp;gt;
            &amp;lt;/div&amp;gt; 
            &amp;lt;div class="form_div"&amp;gt;
                &amp;lt;input type="password" class="form_input" placeholder=" "&amp;gt;
                &amp;lt;label class="form_label"&amp;gt;Password&amp;lt;/label&amp;gt;
            &amp;lt;/div&amp;gt;
             &amp;lt;button class="btn"&amp;gt;Next&amp;lt;/button&amp;gt;
             &amp;lt;div class="already1"&amp;gt;

                    &amp;lt;div&amp;gt; &amp;lt;a href="#"&amp;gt;Forgot password&amp;lt;/a&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;br&amp;gt;

                     &amp;lt;p&amp;gt;New User?&amp;lt;a href="#"&amp;gt;Create accunt&amp;lt;/a&amp;gt;&amp;lt;/p&amp;gt;

             &amp;lt;/div&amp;gt;
        &amp;lt;/form&amp;gt;
    &amp;lt;/div&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;2)style.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;*{
    margin: 0;
    padding: 0;
}


.container{
    display: flex;
    position: relative;
    top: 50vh;
    justify-content: center;

    align-items: center;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.form {
    position: absolute;
    width: 360px;
    padding: 4rem 2rem;
    border-radius: 1em;
    box-shadow: 0 10px 25px rgba(92, 99, 105, .2);
    height: 40vh;
}

.form_title{
    font-weight: 400;
    margin-bottom: 3rem;
    color: #076086;
}
.form_div{
    position: relative;
    height: 48px;
    margin-bottom: 1.5rem;
}
.form_input{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-size: 18px;
    border: 1px solid #DADCE0;
    border-radius: 0.5rem;
    outline: none;
    padding-left: 7px;
    background: none;
    z-index: 1;
}
.form_label{
    position: absolute;
    left: 1rem;
    top: 0.85rem;
    padding: 0 .30rem;
    background-color: #fff;
    color: #80868B;
    font-size: 18px;
    transition: .3s;
    border-radius: 5px;
}
.btn{
    display: block;
    border:2px solid #076086;
    border-radius: 0.5rem;
    font-size: 20px;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    padding: 0.75rem 2rem;
    float: right;
    color: #076086;
    transition: .3s;
    cursor: pointer;
    background-color: #fff;
}
.btn:hover {
    font-size: 22px;
}

.form_input:focus + .form_label{
    top: -.5rem;
    left: 0.8rem;
    color: #076086;
    font-size: 14px;
    font-weight: 400;
    z-index: 10;

}
.form_input:not(:placeholder-shown).form_input:not(:focus) + .form_label {
    top: -.5rem;
    left: 0.8rem;
    font-size: 14px;
    font-weight: 400;
    z-index: 10;
}
.form_input:focus{
    border: 1.5px solid #076086;
}

.already1{
    position: relative;
    float: left;
    padding-top: 1px;
    padding-left: 10px;
    top: 15px;
    text-decoration: none;
    font-size: 14px;
}
.already1 a{
    text-decoration: none;
    font-size: 14px;
    color: #076086;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>css</category>
      <category>html</category>
    </item>
    <item>
      <title>Responsive Navbar &amp; Toggle menu |HTML,CSS &amp; JavaScript only in few minutes </title>
      <dc:creator>adwait12345</dc:creator>
      <pubDate>Wed, 27 Oct 2021 10:13:42 +0000</pubDate>
      <link>https://dev.to/adwait12345/responsive-navbar-toggle-menu-htmlcss-javascript-1mfp</link>
      <guid>https://dev.to/adwait12345/responsive-navbar-toggle-menu-htmlcss-javascript-1mfp</guid>
      <description>&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/YVeDVVhrzUI"&gt;
&lt;/iframe&gt;
&lt;br&gt;
☝ Hi folks,  this is the complete tutorial for how to built you own responsive web design according to the size of devices , I have done here with navigation bar and simply understanding my tutorial you will able to built complete responsive websites, and here I also built toggle menu with help of javascript,  I included it  for mobile size devices. Please do checkout my video. And don't forget to give remark if it was helpful or not or what improvements should I do.&lt;br&gt;
Thank-you 😊&lt;br&gt;
I Recommend you to watch above tutorial rather than just copying code below ! Happy coding &amp;lt;/&amp;gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to Subscribe Bocadmium: &lt;a href="https://www.youtube.com/channel/UC-AjAUV5Q42VV1Yv8oh6apg"&gt;https://www.youtube.com/channel/UC-AjAUV5Q42VV1Yv8oh6apg&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Resource Code:&lt;br&gt;
&lt;strong&gt;1)index.html&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;&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html lang="en"&amp;gt;
&amp;lt;head&amp;gt;
    &amp;lt;meta charset="UTF-8"&amp;gt;
    &amp;lt;meta http-equiv="X-UA-Compatible" content="IE=edge"&amp;gt;
    &amp;lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&amp;gt;
    &amp;lt;title&amp;gt;Toggle Menu&amp;lt;/title&amp;gt;
    &amp;lt;link rel="stylesheet" href="style.css"&amp;gt;
    &amp;lt;link rel="stylesheet" media="screen and (max-width:1080px)" href="phone.css" &amp;gt; 
    &amp;lt;link rel="stylesheet" media="screen and (max-width:875px)" href="small.css" &amp;gt; 
&amp;lt;/head&amp;gt;
&amp;lt;body id="buddy"&amp;gt;
    &amp;lt;section&amp;gt;
    &amp;lt;nav class="nav-main"&amp;gt;
        &amp;lt;div class="logo"&amp;gt;&amp;lt;img src="./Bocadmium-logos_black2.png" alt=""&amp;gt;&amp;lt;/div&amp;gt;
        &amp;lt;ul&amp;gt;
           &amp;lt;li&amp;gt; &amp;lt;a href="#"&amp;gt;Home&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
           &amp;lt;li&amp;gt; &amp;lt;a href="#"&amp;gt;Portfolio&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
           &amp;lt;li&amp;gt; &amp;lt;a href="#"&amp;gt;About Us&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
           &amp;lt;li&amp;gt; &amp;lt;a href="#"&amp;gt;Gallery&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
           &amp;lt;li&amp;gt; &amp;lt;a href="#"&amp;gt;Contact&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;
        &amp;lt;/ul&amp;gt;
    &amp;lt;/nav&amp;gt;

&amp;lt;div class="toggle"&amp;gt;
    &amp;lt;button id="hit"&amp;gt;
        &amp;lt;svg  viewBox="0 -2 100 80" width="40" height="30"style="
        overflow: visible; 
    "&amp;gt; &amp;gt;
            &amp;lt;rect id="change0"width="75" height="10" fill="#2666C1"&amp;gt;&amp;lt;/rect&amp;gt;
            &amp;lt;rect id="change" y="30" width="75" height="10"fill="#2666C1"&amp;gt;&amp;lt;/rect&amp;gt;
            &amp;lt;rect id="change1" y="60" width="75" height="10"fill="#2666C1"&amp;gt;&amp;lt;/rect&amp;gt;
 &amp;lt;/svg&amp;gt;  
    &amp;lt;/button&amp;gt;
&amp;lt;/div&amp;gt;&amp;lt;/section&amp;gt;
&amp;lt;section&amp;gt;
    &amp;lt;div id="mapid"&amp;gt;&amp;lt;/div&amp;gt;

&amp;lt;/section&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;script src="main.js"&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;2)style.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: #f1f1f1;
}

.nav-main{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height:14vh;
    background-color: #fff;
    display: flex;
    flex-wrap: wrap;
    z-index: 1;
    justify-content: center;
    align-items: center;
}
.logo img {
    width: 349px;
    height: 110px;
    position: relative;
    left: -1px;

    /* border-radius: 100%; */
    top: -5px;
}


.nav-main ul{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    padding: 15px;
    top: -5px;
}
.nav-main ul li{
list-style: none;
line-height: 0px;
padding: 10px 55px 0 0;
}

.nav-main ul li a{
    display: block;
    height: 200%;
    padding: 0 10px;
    text-transform: uppercase;
    text-decoration: none;
    color: #111;
    font-family: arial;
    font-size: 16px;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;3)phone.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: #f1f1f1;
}

.logo img {
    width: 289px;
    height: 96px;
    position: relative;
    top: -16px;
    left: -129px;



 }.logo  {
    width: 100px;
    height: 100px;
    position: absolute;



 }
 .nav-main ul {
    display: flex;
    position: absolute;
    flex-wrap: wrap;
    padding: 15px;
   justify-content: center;
   align-items: baseline;
   top: 70px;
}
.nav-main{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height:20vh;
    background-color: #fff;
    display: flex;
    flex-wrap: wrap;
    z-index: 1;
    justify-content: center;
    align-items: center;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;4)small.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;.logo  {
    width: 100%;
    height: 70px;
    position: absolute;

    display: flex;
    justify-content: start;
    align-self: center;

 }

 .logo img {
    display: block;
    width: 223px;
    height: 65px;
    position: absolute;
    left: -9px;
    top: 2px;

 }

 .nav-main ul {
     height: 40vh;
     width: 200px;
     position: fixed;
     top: -1px;
   right: 10px;
     background-color: whitesmoke;
     border-radius: 10px;
     visibility: hidden;

     box-shadow: none;
 }
 .nav-main ul li {

     position: relative;
     left: 30px;
     top: 10px;

 }
 .nav-main{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height:8vh;
    background-color: #fff;
    display: flex;
    flex-wrap: wrap;
    z-index: 1;
    justify-content: center;
    align-items: center;

}
.toggle button {
    position: absolute;
    right: 10px;
    z-index: 1;
   top: 17px;
    background: transparent;
    border: none;
}


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

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;5)main.js&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;console.log("hi there");
let togglestatus = false;
let toggle = document.getElementById('hit');
let element =  document.querySelector('.nav-main ul')
toggle.addEventListener('click',()=&amp;gt;{

 if(togglestatus === false) { document.getElementById('change').setAttribute('transform','rotate(45),translate(0)')
   document.getElementById('change').setAttribute('y','0')
    document.getElementById('change1').setAttribute('transform','rotate(-45),translate(-45)')
   document.getElementById('change1').setAttribute('y','30')
     document.getElementById('change0').setAttribute('transform','rotate(-45),translate(-40)')
   document.getElementById('change0').setAttribute('y','30')
    }
    else if (togglestatus === true){
        document.getElementById('change').setAttribute('transform','rotate(0),translate(0)')
   document.getElementById('change').setAttribute('y','30')
    document.getElementById('change1').setAttribute('transform','rotate(0),translate(0)')
   document.getElementById('change1').setAttribute('y','60')
     document.getElementById('change0').setAttribute('transform','rotate(0),translate(0)')
   document.getElementById('change0').setAttribute('y','0')
    }
   if(togglestatus === false)
{ 
    element.style.visibility="visible";
    element.style.boxShadow= "0 10px 25px rgba(92, 99, 105, .2)";
    togglestatus = true;
    }
  else if(togglestatus === true){

    element.style.visibility="hidden";
    togglestatus = false;
  }
});

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

&lt;/div&gt;



</description>
      <category>javascript</category>
      <category>html</category>
      <category>css</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
