<?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: Edwin Nuñez</title>
    <description>The latest articles on DEV Community by Edwin Nuñez (@edwinnv).</description>
    <link>https://dev.to/edwinnv</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%2F815810%2F062dbff3-476a-493c-ab06-43394ea69905.jpeg</url>
      <title>DEV Community: Edwin Nuñez</title>
      <link>https://dev.to/edwinnv</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/edwinnv"/>
    <language>en</language>
    <item>
      <title>How to Add Google Analytics to a React-Next.js Application 📈⚛️</title>
      <dc:creator>Edwin Nuñez</dc:creator>
      <pubDate>Fri, 02 Sep 2022 17:35:34 +0000</pubDate>
      <link>https://dev.to/edwinnv/how-to-add-google-analytics-to-a-react-nextjs-application-boc</link>
      <guid>https://dev.to/edwinnv/how-to-add-google-analytics-to-a-react-nextjs-application-boc</guid>
      <description>&lt;p&gt;Data is today the world’s most valuable commodity. So understanding how your users are using your platform is crucial for taking your business to the next level.&lt;/p&gt;

&lt;p&gt;And in the world of analytics, Google is the leader. And the great news is it’s completely free to use! 👌&lt;/p&gt;

&lt;p&gt;Today we will see how to integrate Google analytics into a Next.js application. If you are interested in pure React, another article is for you.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step-1️⃣  Get the key
&lt;/h2&gt;

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

&lt;p&gt;Create a new account on &lt;code&gt;https://analytics.google.com/&lt;/code&gt; . When you register for the first time, you will be asked to add a new property.&lt;/p&gt;

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

&lt;p&gt;The admin portion of your account allows you to add a new property if you already have a Google Analytics account. The next step is to construct a data stream. We will choose web as we are implementing this on the web.&lt;/p&gt;

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

&lt;p&gt;You will then need to give some information about your website. For now, enter some fictitious data and start the broadcast.&lt;/p&gt;

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

&lt;p&gt;Now you will have to grab the &lt;code&gt;Measurement ID&lt;/code&gt; which is the most important thing in the whole process.&lt;/p&gt;

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

&lt;p&gt;The pattern will resemble the following &lt;code&gt;G-XXXXXXXXXX&lt;/code&gt;. Adapt that.&lt;/p&gt;

&lt;p&gt;We may now incorporate this into the project itself. Do that, then!&lt;/p&gt;

&lt;h2&gt;
  
  
  Step-2️⃣ Initialize the project
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx create-next-app nextjs-google-analytics-demo
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step-3️⃣ Add to Environment
&lt;/h2&gt;

&lt;p&gt;Make a file called &lt;code&gt;.env.local&lt;/code&gt; in the project root. Then insert the subsequent code there. Although you could do this directly in the code, environment variables are preferable.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;NEXT_PUBLIC_GOOGLE_ANALYTICS= 'G-LXXGTJJDFX'
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step-4️⃣ Load Analytics
&lt;/h2&gt;

&lt;p&gt;Open the &lt;code&gt;__app.tsx&lt;/code&gt; file and add the 2 script tags there.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { AppProps } from 'next/app';
import Head from 'next/head';
import React, { useEffect } from 'react';
import './styles.css';
import Script from 'next/script';
import Router from 'next/router';


function CustomApp({ Component, pageProps, router }: AppProps) {

    return (
        &amp;lt;&amp;gt;
            &amp;lt;Script strategy="lazyOnload" src={`https://www.googletagmanager.com/gtag/js?id=${process.env.NEXT_PUBLIC_GOOGLE_ANALYTICS}`} /&amp;gt;

            &amp;lt;Script strategy="lazyOnload"&amp;gt;
                {`
                    window.dataLayer = window.dataLayer || [];
                    function gtag(){dataLayer.push(arguments);}
                    gtag('js', new Date());
                    gtag('config', '${process.env.NEXT_PUBLIC_GOOGLE_ANALYTICS}', {
                    page_path: window.location.pathname,
                    });
                `}
            &amp;lt;/Script&amp;gt;


            &amp;lt;Head&amp;gt;
                &amp;lt;title&amp;gt;Welcome!&amp;lt;/title&amp;gt;
                &amp;lt;meta name="viewport" content="initial-scale=1, width=device-width" /&amp;gt;
            &amp;lt;/Head&amp;gt;

            &amp;lt;Component {...pageProps} /&amp;gt;
        &amp;lt;/&amp;gt;
    );
}


export default CustomApp;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step-5️⃣ Check the browser
&lt;/h2&gt;

&lt;p&gt;Run the app using the following command&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm run dev&lt;/code&gt; or &lt;code&gt;yarn run&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;And go to the URL &lt;code&gt;http://localhost:3000&lt;/code&gt; and open the console.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step-6️⃣  Check if Analytics is Enabled
&lt;/h2&gt;

&lt;p&gt;Open the console on your browser and type &lt;code&gt;dataLayer&lt;/code&gt; there.&lt;/p&gt;

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

&lt;p&gt;Undefined indicates that there was a problem. Congratulations if you see something similar to the image above! Your analytics have been enabled.&lt;/p&gt;

&lt;p&gt;**Guarapo Labs **creates digital products that assist people in developing their ideas. Our staff has all of the necessary skills to work on your web and virtual reality game projects. Our commitment to educating our clients on how to provide the finest customer experience with their solutions is reflected in the high quality of our software.&lt;/p&gt;

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

</description>
      <category>javascript</category>
      <category>programming</category>
      <category>tutorial</category>
      <category>react</category>
    </item>
    <item>
      <title>Ruby Style Guide 💻💎</title>
      <dc:creator>Edwin Nuñez</dc:creator>
      <pubDate>Fri, 29 Apr 2022 20:15:53 +0000</pubDate>
      <link>https://dev.to/edwinnv/how-install-ruby-style-guide-2296</link>
      <guid>https://dev.to/edwinnv/how-install-ruby-style-guide-2296</guid>
      <description>&lt;h2&gt;
  
  
  What is Ruby Style Guide?
&lt;/h2&gt;

&lt;p&gt;Ruby is the main language at Shopify. We are primarily a Ruby shop and we are probably one of the largest out there. Ruby is the go-to language for new web projects and scripting.&lt;/p&gt;

&lt;p&gt;This Style Guide is the result of over a decade of Ruby development at Shopify. Much of its content is based on Bozhidar Batsov's Ruby Style Guide, adapted to Shopify by many contributors.&lt;/p&gt;

&lt;p&gt;— &lt;strong&gt;Installing Rubocop to Your Project&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;$ gem install rubocop&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Now let’s create a program that can be linted better&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;name = "Karthik"
puts "Hello #{name}"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now we save it and run Rubocop on it as shown:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;$ rubocop rubocop_example.rb&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;rubocop spits out some errors as shown&lt;/p&gt;

&lt;p&gt;Inspecting 1 file&lt;br&gt;
C&lt;/p&gt;

&lt;p&gt;Offenses:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;rubocop_example.rb:1:1: C: [Correctable] Style/FrozenStringLiteralComment: Missing frozen string literal comment.
name = "Karthik"
^
rubocop_example.rb:1:8: C: [Correctable] Style/StringLiterals: Prefer single-quoted strings when you don't need string interpolation or special symbols.
name = "Karthik"
       ^^^^^^^^^

1 file inspected, 2 offenses detected, 2 offenses auto-correctable
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;- Create a .yml file in the root and paste this:&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;AllCops:
  NewCops: enable
  Exclude:
    - 'db/migrate/*.rb'
    - 'config/**/*.rb'
    - 'bin/*'
    - 'spec/rails_helper.rb'
    - 'lib/**/*.rb' #it should be fixed later
    - 'spec/lib/**/*.rb' #it should be fixed later
    - 'spec/requests/**/*.rb' #it should be fixed later
Metrics/BlockLength:
  Exclude:
    - 'Rakefile'
    - '**/*.rake'
    - 'spec/**/*.rb'
    - 'app/admin/**/*.rb'
    - 'db/**/*.rb'
    - 'db/migrate/*.rb'
    - 'config/*.rb'
Documentation:
  Include:
    - 'app/models/**/*.rb'
  Exclude:
    - 'app/models/ability.rb'
    - 'app/models/application_record.rb'
    - 'app/models/concerns/**'
    - 'app/models/filter_client.rb'
    - 'app/models/filter_warehouse.rb'
Metrics/MethodLength:
  Max: 12
Metrics/ClassLength:
  Max: 1000

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

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;&lt;em&gt;That's all; Rubocop is now ready to work on your project!&lt;/em&gt;&lt;/strong&gt; 🥳 🎉&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Thank you for reading!&lt;/em&gt;📒&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Guarapo Labs&lt;/strong&gt; creates digital products that assist people in developing their ideas. Our staff has all of the necessary skills to work on your web and virtual reality game projects. Our commitment to educating our clients on how to provide the finest customer experience with their solutions is reflected in the high quality of our software.&lt;/p&gt;

&lt;p&gt;Contact us &lt;em&gt;&lt;a href="mailto:edwin.nunez@guarapo.dev"&gt;edwin.nunez@guarapo.dev&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
Guarapo Labs&lt;br&gt;
edwin-nunez - Overview&lt;/p&gt;

</description>
      <category>ruby</category>
      <category>backend</category>
      <category>programming</category>
      <category>webdev</category>
    </item>
    <item>
      <title>JavaScript Style Guide💻📔</title>
      <dc:creator>Edwin Nuñez</dc:creator>
      <pubDate>Tue, 19 Apr 2022 15:43:08 +0000</pubDate>
      <link>https://dev.to/edwinnv/javascript-style-guide-4354</link>
      <guid>https://dev.to/edwinnv/javascript-style-guide-4354</guid>
      <description>&lt;h2&gt;
  
  
  &lt;strong&gt;What is the Airbnb Style Guide?&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;The Airbnb style guide is a set of best practices and guidelines for generating quality code. It is one of the most popular style guides available on Github.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- Step 1 — Installing ESLint to Your Project&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;em&gt;ESLint is the most popular and very flexible JavaScript linting tool. It is a static code analyzer to identify problematic patterns in your JavaScript code.&lt;/em&gt;&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;To install ESLint, we need first to install npm, the package manager for JavaScript.&lt;/p&gt;

&lt;p&gt;Now we’re ready! Create a package.json file with default configuration using the following command.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm init -y&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;To set up ESLint, the next thing we need to do is, install the ESLint npm package. Finally, install ESLint with the following command.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm install eslint --save-dev&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Cool, we’re done with the ESLint installation. The next thing we have to do is install the style guide we want to use, Airbnb. Luckily, Airbnb provides an ESLint configuration that anyone can use.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- Step 2 — Installing Airbnb Style Guide to Your Project&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;ESLint needs a configuration file to implement rules. We can create the configuration file to enforce the rules type the following command&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npx eslint --init&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This command will give us several options to choose from.&lt;/p&gt;

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

&lt;p&gt;Let’s go with the third option. After choosing the third option and pressing enter, you’ll get another set of options to choose from. Select the most suitable option as per your need until you come across the following option.&lt;/p&gt;

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

&lt;p&gt;Choose the first option from here and Airbnb’s style guide from the next set of options.&lt;/p&gt;

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

&lt;p&gt;If you want to set up a &lt;a href="https://github.com/airbnb/javascript" rel="noopener noreferrer"&gt;AirBnb style guide&lt;/a&gt; for JavaScript instead of Airbnb’s style guide, you can follow the same set of instructions and choose the respective style guide from the above step.&lt;/p&gt;

&lt;p&gt;To complete the style guide installation, press enter and choose other options as per your requirement. This will create a &lt;code&gt;.eslintrc.json&lt;/code&gt; file on your working directory, and it will look like the below.&lt;/p&gt;

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

&lt;p&gt;Also, based on the options you chose, your package.json file will look like the following&lt;/p&gt;

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

&lt;p&gt;For ESLint to find and fix the bugs right on our text editor, we need to install the &lt;a href="https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint" rel="noopener noreferrer"&gt;VS Code ESLint extension&lt;/a&gt;. So, fantastic, we’re are done with the style guide implementation. Now it’s time to move on to the Prettier installation. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- Step 3 — Installing Prettier to Your Projec&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Prettier is one of the most popular code formatters. We can install Prettier locally using the following command.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm install --save-dev --save-exact prettier&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Then, we need to create a configuration file for Prettier in our root directory.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;echo {}&amp;gt; .prettierrc.json&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This JSON file holds the rules that Prettier use to format our code. In addition, I have added a few of my preferences below.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{
  "trailingComma": "es5",
  "tabWidth": 4,
  "semi": true,
  "bracketSpacing": true,
  "singleQuote": true
}

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

&lt;/div&gt;



&lt;p&gt;Now let’s install the &lt;a href="https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode" rel="noopener noreferrer"&gt;VS Code Prettier extension&lt;/a&gt;. Then we need to ensure that all our JavaScript files get formatted by Prettier. Go to the settings.json file in VS Code and change the relevant existing line as below.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{
  "editor.defaultFormatter": "esbenp.prettier-vscode",
  "[javascript]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We are almost done! To make sure Prettier formats on save, insert the following line on the same file mentioned above.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;"editor.formatOnSave": true,&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;It turns out ESLint rules might conflict with Prettier. To avoid that, we need to disable the formatting for ESLint. For that, we need to install one extra npm package&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm i eslint-config-prettier&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Then add &lt;code&gt;prettier&lt;/code&gt;to the extends array in your &lt;code&gt;.eslintrc.json&lt;/code&gt; file as below. Make sure to add it at the end of the array so that it will override other configs.&lt;/p&gt;

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

&lt;p&gt;&lt;em&gt;That’s it! Now it’s time for some fun&lt;/em&gt; 😋 &lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Testing Airbnb Style Guide&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;To test if it is working, create a &lt;code&gt;index.js&lt;/code&gt; file and add the following code line set.&lt;/p&gt;

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

&lt;p&gt;&lt;em&gt;Pretty cool, right? 😍 As you can see, ESLint finds and fix issues in our code and Prettier formats on save&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Final Thoughts&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Combining Airbnb style, ESLint, and Prettier into our workflow helps us enhance the code quality and maintain a consistent style guide. However, I suggest going ahead and look over the documentation of each of these tools.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Thank you for reading!&lt;/em&gt;📒&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Guarapo Labs&lt;/strong&gt; creates digital products that assist people in developing their ideas. Our staff has all of the necessary skills to work on your web and virtual reality game projects. Our commitment to educating our clients on how to provide the finest customer experience with their solutions is reflected in the high quality of our software.&lt;/p&gt;

&lt;p&gt;Contact us &lt;em&gt;&lt;a href="mailto:edwin.nunez@guarapo.dev"&gt;edwin.nunez@guarapo.dev&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
Guarapo Labs&lt;br&gt;
edwin-nunez - Overview&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>programming</category>
      <category>react</category>
    </item>
    <item>
      <title>Github Profile Readme Custom 🎨📌</title>
      <dc:creator>Edwin Nuñez</dc:creator>
      <pubDate>Wed, 09 Mar 2022 17:44:43 +0000</pubDate>
      <link>https://dev.to/edwinnv/github-profile-readme-custom-3akj</link>
      <guid>https://dev.to/edwinnv/github-profile-readme-custom-3akj</guid>
      <description>&lt;p&gt;Want to add a Profile README to your GitHub account but don't know how? GitHub introduced a new Profile README feature that allows users to showcase their achievements on their profile.&lt;/p&gt;

&lt;p&gt;In this post, we will learn what is a Profile level README on Github, and how you can easily create one for your account.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;What Is a Profile README?&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;If you are an experienced GitHub user, you would already know the role of a README file in a project. For those who don't, README plays an essential part on GitHub as it clearly communicates the idea of a project to its contributors and other users on the platform.&lt;/p&gt;

&lt;p&gt;Similarly, Profile README acts like a document that informs other users on GitHub about your profile. README files support Markdown, which allows you to customize the content of the file in a much better way. Also, you can add as much content as you want on your Profile README.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;How to Create a GitHub Profile README&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;✨&lt;br&gt;
Anyone with a GitHub account can create a README for their profile. All you have to do is create a new GitHub repository that has the same name as your username. Then, add a README file and customize it accordingly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;To add a GitHub Profile README to your account:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Head over to &lt;a href="https://github.com/" rel="noopener noreferrer"&gt;the official GitHub website&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Sign in to your account by entering the credentials.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click on your Profile Picture located at the top-right corner of the screen.&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fypowmxokpz2j1d6iep2s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fypowmxokpz2j1d6iep2s.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;From the drop-down menu, select the option that says Your Repositories.&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2lbi5s1s0yhf9j0sthdt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2lbi5s1s0yhf9j0sthdt.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Click on the New button to create a &lt;strong&gt;new repository&lt;/strong&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Under the** Owner label*&lt;em&gt;, you will find your username. You need to enter the same name in the **Repository Name&lt;/em&gt;* field.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scroll down and check the &lt;strong&gt;Add a README&lt;/strong&gt; File option. Then, click on the &lt;strong&gt;Create Repository&lt;/strong&gt; button.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Now head back to the Repositories tab and click on the newly created repository.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You will find a preview of the README.md file. Click on the small Edit button located in the top-right corner of the README preview.&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feqmavt9rhsaklpcxylow.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feqmavt9rhsaklpcxylow.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Type in the content you want to add to your Profile README.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Scroll down to the bottom and click on Commit Changes.You can also add a commit message to increase your GitHub reputation. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The README will now appear on your GitHub profile page.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;GitHub Profile README Generator&lt;/strong&gt;🔨
&lt;/h2&gt;

&lt;p&gt;Here you can easily generate your &lt;a href="https://rahuldkjain.github.io/gh-profile-readme-generator/" rel="noopener noreferrer"&gt;github profile with a template&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;**Guarapo Labs **creates digital products that assist people in developing their ideas. Our staff has all of the necessary skills to work on your web and virtual reality game projects. Our commitment to educating our clients on how to provide the finest customer experience with their solutions is reflected in the high quality of our software.&lt;/p&gt;

&lt;p&gt;Contact us &lt;em&gt;&lt;a href="mailto:edwin.nunez@guarapo.dev"&gt;edwin.nunez@guarapo.dev&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
Guarapo Labs&lt;br&gt;
edwin-nunez - Overview&lt;/p&gt;

</description>
      <category>git</category>
      <category>github</category>
      <category>webdev</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
