<?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: ManabJB</title>
    <description>The latest articles on DEV Community by ManabJB (@mjb).</description>
    <link>https://dev.to/mjb</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%2F823199%2Fc854a190-3874-4a9d-b7fa-a42dbe3ac6ef.jpeg</url>
      <title>DEV Community: ManabJB</title>
      <link>https://dev.to/mjb</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mjb"/>
    <language>en</language>
    <item>
      <title>Piano - HTML, CSS, JavaScript</title>
      <dc:creator>ManabJB</dc:creator>
      <pubDate>Sun, 23 Oct 2022 14:12:30 +0000</pubDate>
      <link>https://dev.to/mjb/piano-html-css-javascript-1p3b</link>
      <guid>https://dev.to/mjb/piano-html-css-javascript-1p3b</guid>
      <description>&lt;p&gt;&lt;strong&gt;Hello friends I will&lt;/strong&gt; show you how you can create a simple piano using HTML, CSS and JavaScript&lt;/p&gt;

&lt;p&gt;Check out the whole project here &lt;a href="https://devinfo.w3spaces.com/piano/index.html"&gt;https://devinfo.w3spaces.com/piano/index.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This is the final look&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--I0JwY6n0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k5s5a0vcjf2b92jx24oe.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--I0JwY6n0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k5s5a0vcjf2b92jx24oe.JPG" alt="Image description" width="462" height="308"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;lets get into the code&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;this is HTML&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;link rel="stylesheet" href="style.css"&amp;gt;
    &amp;lt;title&amp;gt;Document&amp;lt;/title&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
    &amp;lt;div class="main"&amp;gt;
        &amp;lt;div class="header"&amp;gt;
            &amp;lt;p&amp;gt;Piano&amp;lt;/p&amp;gt;
        &amp;lt;/div&amp;gt;
        &amp;lt;div class="contents"&amp;gt;
            &amp;lt;div class="key" onclick="generate_sound(1)"&amp;gt;
                &amp;lt;p&amp;gt;A&amp;lt;/p&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div class="keyup" onclick="generate_sound(2)"&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div class="key" onclick="generate_sound(3)"&amp;gt;
                &amp;lt;p&amp;gt;B&amp;lt;/p&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div class="keyup" onclick="generate_sound(4)"&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div class="key" onclick="generate_sound(5)"&amp;gt;
                &amp;lt;p&amp;gt;C&amp;lt;/p&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div class="keyup" onclick="generate_sound(6)"&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div class="key" onclick="generate_sound(7)"&amp;gt;
                &amp;lt;p&amp;gt;D&amp;lt;/p&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div class="keyup" onclick="generate_sound(8)"&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div class="key" onclick="generate_sound(9)"&amp;gt;
                &amp;lt;p&amp;gt;E&amp;lt;/p&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div class="keyup" onclick="generate_sound(10)"&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div class="key keyend" onclick="generate_sound(11)"&amp;gt;
                &amp;lt;p&amp;gt;F&amp;lt;/p&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div class="keyup keyupend" onclick="generate_sound(12)"&amp;gt;
            &amp;lt;/div&amp;gt;
        &amp;lt;/div&amp;gt;
    &amp;lt;/div&amp;gt;
&amp;lt;script src="script.js"&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;this is style.css&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: black;
        }
        .main{
            display: flex;
            height: 100vh;
            background-color: black;
            flex-direction: column;
            align-items: center;
            justify-content: center;
        }
        .header{
            height: 50px;
            width: 90%;
            background-color: rgb(65, 65, 65);
            color: aliceblue;
            margin: 10px;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            border-radius: 10px;
            border: 1px solid #ffff;
        }
        .header p{
            font-size: 1.5rem;
        }
        .screen{
            background-color: rgb(44, 44, 44);
            padding: 5px;
            border-radius: 5px;
            border: 1px solid #ffff;
            height: 50px;
            width: 200px;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        .screen p{
            font-size: .8rem;
        }
        .contents{
            height: 150px;
            width: 90%;
            background-color: rgb(168, 168, 168);
            margin: 20px;
            display: flex;
            justify-content: center;
            align-items: center;
            border-radius: 10px;
            border: 1px solid #ffff;
        }
        .key{
            background-color: aliceblue;
            height: 70px;
            width: 40px;
            border: 1px solid black;
            display: flex;
            justify-content: center;
            align-items: end;        
        }
        .key p{
            margin-bottom: 5px;
        }
        .keyend{
            width: 35px;
        }
        .key:hover{
            background-color: rgb(255, 145, 0); 
        }
        .keyup{
            background-color: black;
            height: 35px;
            width: 15px;
            margin-top: -35px;
            margin-left: -20px;
            z-index: 2;
        }
        .keyupend{
            margin-left: -15px;
        }
        .keyup:hover{
            background-color: rgb(95, 95, 95);
        }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is script.js&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;var sounds= [280,300,320,340,360,380,400,420,440,460,480,500,520];

var context =
new (window.AudioContext ||  window.webkitAudioContext)();

function generate_sound(nota){
var osc = context.createOscillator();
osc.type = 'square';
osc.frequency.value=sounds[nota];
osc.connect(context.destination);
osc.start();
osc.stop(context.currentTime + .3);
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>JavaScript Compiler</title>
      <dc:creator>ManabJB</dc:creator>
      <pubDate>Mon, 28 Feb 2022 20:16:56 +0000</pubDate>
      <link>https://dev.to/mjb/javascript-compiler-273n</link>
      <guid>https://dev.to/mjb/javascript-compiler-273n</guid>
      <description>&lt;h2&gt;
  
  
  &lt;strong&gt;How to Create JavaScript Compiler Using Java/CSS/HTML5/React_Native&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;How it's gonna look&lt;/em&gt;&lt;/p&gt;

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

&lt;h3&gt;
  
  
  How to setup folders and files
&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;Go to my GitHub to clone the project&lt;/em&gt;&lt;br&gt;
&lt;a href="https://github.com/manabjb/JavaScriptCompiler.git"&gt;GitHub&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Trees
----JS_Compiler[Folder]
main.js
----js[Folder]
------sceipt.js
------main.js
-----css[Folder]
------style.css

//Don't forget to link script and style source in main.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Clone using git or download zip directly&lt;br&gt;
cloning tutorial &lt;br&gt;
for Linux/Windows/Mac[Git required]&lt;br&gt;
cmd: git clone &lt;a href="https://github.com/manabjb/JavaScriptCompiler.git"&gt;https://github.com/manabjb/JavaScriptCompiler.git&lt;/a&gt;&lt;br&gt;
also you can curl the gitlink&lt;/em&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Create main.html and paste the html code&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;This main.html source also contain essential js codes for js compiler&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&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;link href='http://fonts.googleapis.com/css?family=Lato&amp;amp;subset=latin,latin-ext' rel='stylesheet' type='text/css'&amp;gt;
    &amp;lt;title&amp;gt;JS Editor - ManabJB&amp;lt;/title&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
    &amp;lt;div class="container"&amp;gt;
       &amp;lt;div class="main"&amp;gt;
               &amp;lt;fieldset class="field"&amp;gt;
                   &amp;lt;legend&amp;gt;JS Compiler&amp;lt;/legend&amp;gt;
                   &amp;lt;textarea class="text" id="editor" placeholder="  Type your JavaScript codes here..." spellcheck="of" autocapitalize="off"&amp;gt;&amp;lt;/textarea&amp;gt;
                   &amp;lt;hr&amp;gt;
                   &amp;lt;button class="btn" id="clear"&amp;gt;Reset&amp;lt;/button&amp;gt;&amp;lt;button class="btn" id="run" onclick="comp();"&amp;gt;Run&amp;lt;/button&amp;gt;&amp;lt;button class="btn" onclick="about();"&amp;gt;About&amp;lt;/button&amp;gt;&amp;lt;input type="button" id="change" class="light" onclick="theme();" value="Dark"&amp;gt;&amp;lt;hr&amp;gt;
                   &amp;lt;div class="abar"&amp;gt;
                   &amp;lt;img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcT8q65W3zbUH3FixbfRcoIJH94HUQugM2pSJg&amp;amp;usqp=CAU"&amp;gt;
                   &amp;lt;code&amp;gt;Developed by ManabJB&amp;lt;/code&amp;gt;
                   &amp;lt;/div&amp;gt;
               &amp;lt;/fieldset&amp;gt;
       &amp;lt;/div&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;br&gt;&lt;br&gt;
&lt;strong&gt;JavaScript code that help to create JavaScript Compiler&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;create folder and file like folder js file main.js - for understanding more about folder and file setup see project trees&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;var input = document.querySelector('#clear');

var textarea = document.querySelector('#editor');
var submit = document.getElementById("run")[0];

input.addEventListener('click', function () {
    textarea.value = '';
}, false);

function about() {
  document.getElementById("editor").value = "alert('hi');\nconsole.log('Developed by ManabJB');";
}

function comp() { 
    try
        {
            eval( "" + textarea.value + "" )        }
        catch(err)
        {
           alert("Not a JavaScript Code") 
        }
} 

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

&lt;/div&gt;



&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Js for theme toggle&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;create folder and file like folder js and file script.js - for understanding more about folder and file setup see project trees&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;em&gt;It's simple we need to called theme() func in toggle button in main.js&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;function theme() 
{
    theme_change = document.getElementById("editor")
    theme_change.classList.toggle("dark")
    theme_change = document.getElementById("change")
    theme_change.classList.toggle("lights")
    var elem = document.getElementById("change"); 
    if (elem.value=="Dark") elem.value = "Light"; 
    else elem.value = "Dark";
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Final part which help to style the whole app&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;css/style.css - for understanding more about folder and file setup see project trees&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

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

{
    background-color: dodgerblue;
}
.container
{
    background-color: dodgerblue;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}
.main
{
    background:linear-gradient(gray 30%, #ddf);
    border-radius: 10px;
    backdrop-filter:blur( 14.5px );
}
.field
{
    color: whitesmoke;
    font-size: 2rem;
    border-radius: 10px;
    font-family: lato;
}
.text
{
    height: 200px;
    width: 270px;
    resize: none;
    outline: none;
    background-color: whitesmoke;
    color: gray;
    border-radius: 10px;
    border-bottom: rebeccapurple;
    font-size: 1rem;
    font-family: lato;
}
.dark
{
    background-color: black;
    color: gray;
    border-color: black;
}
.btn
{
    background-color: dodgerblue;
    height: 40px;
    width: 60px;
    outline: none;
    border-color: transparent;
    color: whitesmoke;
    border-radius: 10px;
    border: none;
    font-family: lato;
    margin-right: 5px;
    font-size: 1rem;
}
.btn:active
{
    color: dodgerblue;
    background-color: whitesmoke;
}
.light
{
    background-color: dodgerblue;
    height: 40px;
    width: 60px;
    outline: none;
    border-color: transparent;
    color: whitesmoke;
    border-radius: 10px;
    text-decoration: none;
    border: none;
    font-family: lato;
    margin-right: 5px;
    font-size: 1rem;
}
.lights
{
    color: dodgerblue;
    background-color: whitesmoke;
}
hr
{
    color: whitesmoke;
}
code
{
    font-size: 16px;
    font-family: lato;
}
img
{
    height: 50px;
    width: 50px;
    border-radius: 50%;
    box-shadow: 0 0 10px black;
}
.abar
{
    display: flex;
    font-size: 1rem;
    font-family: lato;
    align-items: center;
    gap: 15px;
}
.console
{
    height: 50px;
    width: 270px;
    resize: none;
    outline: none;
    background-color: whitesmoke;
    color: green;
    border-radius: 10px;
    border-bottom: rebeccapurple;
    font-size: 1rem;
    font-family: lato;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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