<?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: Segun Adebayo</title>
    <description>The latest articles on DEV Community by Segun Adebayo (@segunadebayo).</description>
    <link>https://dev.to/segunadebayo</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%2F199945%2F9bcbcb0c-987f-43c2-a0cd-21065b0077df.jpeg</url>
      <title>DEV Community: Segun Adebayo</title>
      <link>https://dev.to/segunadebayo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/segunadebayo"/>
    <language>en</language>
    <item>
      <title>Migrating to React 17 and Fixing the JSX Runtime Error with Emotion</title>
      <dc:creator>Segun Adebayo</dc:creator>
      <pubDate>Sun, 08 Nov 2020 09:27:10 +0000</pubDate>
      <link>https://dev.to/segunadebayo/migrating-to-react-17-and-fixing-the-jsx-runtime-error-with-emotion-l4n</link>
      <guid>https://dev.to/segunadebayo/migrating-to-react-17-and-fixing-the-jsx-runtime-error-with-emotion-l4n</guid>
      <description>&lt;p&gt;If you use &lt;a href="https://emotion.sh"&gt;Emotion&lt;/a&gt; in your project and you're migrating to react 17, you might run into this error if you use the &lt;code&gt;css&lt;/code&gt; prop:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pragma and pragmaFrag cannot be &lt;span class="nb"&gt;set &lt;/span&gt;when runtime is automatic.

&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; 1 | /&lt;span class="k"&gt;**&lt;/span&gt;@jsx jsx &lt;span class="k"&gt;*&lt;/span&gt;/
    | ^
  2 | import &lt;span class="o"&gt;{&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This error is due to the new JSX runtime feature introduced by &lt;a href="https://reactjs.org/blog/2020/09/22/introducing-the-new-jsx-transform.html"&gt;React 17&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After researching several solutions, here are some solutions that fix this:&lt;/p&gt;

&lt;h2&gt;
  
  
  Solution 1
&lt;/h2&gt;

&lt;p&gt;Add another jsx pragma that configures the new jsx runtime to &lt;code&gt;classic&lt;/code&gt; mode.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/system-ui/theme-ui/issues/1160"&gt;🔗 Reference&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight diff"&gt;&lt;code&gt;&lt;span class="gi"&gt;+/** @jsxRuntime classic */
&lt;/span&gt;&lt;span class="err"&gt;/**&lt;/span&gt; @jsx jsx */
&lt;span class="p"&gt;import { jsx } from '@emotion/core';
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Solution 2
&lt;/h2&gt;

&lt;p&gt;Change the jsx pragma&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/emotion-js/emotion/blob/master/packages/core/CHANGELOG.md#minor-changes"&gt;🔗 Reference&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight diff"&gt;&lt;code&gt;&lt;span class="gd"&gt;- /**@jsx jsx */
&lt;/span&gt;&lt;span class="gi"&gt;+ /** @jsxImportSource @emotion/core */
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Solution 3
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Remove the jsx pragma &lt;code&gt;/**@jsx jsx*/&lt;/code&gt; from all files&lt;/li&gt;
&lt;li&gt;Install &lt;code&gt;@emotion/babel-preset-css-prop&lt;/code&gt; as &lt;code&gt;devDependency&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Upgrade &lt;code&gt;@emotion/core&lt;/code&gt; to &lt;code&gt;10.1.1&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"presets"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"@emotion/babel-preset-css-prop"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://emotion.sh/docs/@emotion/babel-preset-css-prop"&gt;🔗 Reference&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you find this useful, feel free to like this post and share it.&lt;/p&gt;

&lt;p&gt;Cheers!&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If you had this issue in your project and managed to solve it a different way, feel free to comment below.&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>emotion</category>
      <category>react</category>
      <category>jsx</category>
      <category>runtime</category>
    </item>
    <item>
      <title>How to Introduce yourself</title>
      <dc:creator>Segun Adebayo</dc:creator>
      <pubDate>Sat, 18 Jul 2020 20:05:16 +0000</pubDate>
      <link>https://dev.to/segunadebayo/how-to-introduce-yourself-2g4d</link>
      <guid>https://dev.to/segunadebayo/how-to-introduce-yourself-2g4d</guid>
      <description>&lt;p&gt;As a Software engineer, learning how to introduce yourself and communicating what you do clearly can make a lot of difference in your career.&lt;/p&gt;

&lt;p&gt;If you ever need to talk about yourself via DM or email, here are some tips I discovered:&lt;/p&gt;

&lt;h2&gt;
  
  
  ✅ Talk about your success
&lt;/h2&gt;

&lt;p&gt;Share your experience or background, and what you've achieved recently that you're proud of. Add links or references to back up your claim 🔗&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"I have been developing..."&lt;/li&gt;
&lt;li&gt;"My background is ..."&lt;/li&gt;
&lt;li&gt;"I specialize in..."&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These are good ways to start.&lt;/p&gt;

&lt;h2&gt;
  
  
  ✅ Talk about your strengths
&lt;/h2&gt;

&lt;p&gt;Even though you might have experience with a lot of tools or technologies, it's important to point out areas you really excel 🌟🌟🌟&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"My strength is..."&lt;/li&gt;
&lt;li&gt;"Over the years, I realized that my real strength is..."&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These are good ways to start.&lt;/p&gt;

&lt;h2&gt;
  
  
  ✅ Tie it all together
&lt;/h2&gt;

&lt;p&gt;Meaning, how do your experience and strengths apply to the other person or the company you're applying to. 🎯&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"What I'm looking for is..."&lt;/li&gt;
&lt;li&gt;"I believe I can add value to your company by..."&lt;/li&gt;
&lt;li&gt;"I'm looking to achieve...."&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  ✅ End with a question
&lt;/h2&gt;

&lt;p&gt;Whoever asks a question controls the conversation. Always end with these kinds of questions: Red question mark ornament&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Am I the kind of person you're looking for?"&lt;/li&gt;
&lt;li&gt;"Is this what company X is looking for?"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Let the other person "say" you're the right fit, not you.&lt;/p&gt;

&lt;p&gt;Hope you find this useful 😇&lt;/p&gt;

</description>
      <category>career</category>
      <category>software</category>
      <category>interview</category>
      <category>tips</category>
    </item>
    <item>
      <title>Design System: Creating a Breadcrumb</title>
      <dc:creator>Segun Adebayo</dc:creator>
      <pubDate>Thu, 14 May 2020 17:13:22 +0000</pubDate>
      <link>https://dev.to/segunadebayo/design-system-creating-a-breadcrumb-1732</link>
      <guid>https://dev.to/segunadebayo/design-system-creating-a-breadcrumb-1732</guid>
      <description>&lt;p&gt;&lt;strong&gt;Why they exist&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;User experience is just as important as the content of your website. A user should be able to easily and intuitively navigate through your website. This is why “breadcrumbs” exists.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What it means&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In simple terms, a breadcrumb is a footprint that helps a visitor navigate a website in an organized way.&lt;/p&gt;

&lt;p&gt;In technical terms, a breadcrumb is a navigational element used to indicate the current page the user is relative to the page's hierarchy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scenario&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Let's say we need to design a breadcrumb for when the user is searching for the award-winning fiction books.&lt;/p&gt;

&lt;p&gt;Books › Science Fiction › Award Winners&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UI exploration&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;HTML blueprint&lt;/strong&gt;&lt;br&gt;
Let's start with the semantic HTML Structure of a breadcrumb and I'll break down each part:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;nav&lt;/span&gt; &lt;span class="na"&gt;aria-label=&lt;/span&gt;&lt;span class="s"&gt;"breadcrumb"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;ol&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;li&amp;gt;&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;a&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"http://site.com/books"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Books&lt;span class="nt"&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;li&amp;gt;&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;a&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"http://site.com/books/sciencefiction"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Science Fiction&lt;span class="nt"&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;li&amp;gt;&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;a&lt;/span&gt;
        &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"http://site.com/books/sciencefiction/award-winners"&lt;/span&gt;
        &lt;span class="na"&gt;aria-current=&lt;/span&gt;&lt;span class="s"&gt;"page"&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        Award Winners
      &lt;span class="nt"&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;/ol&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/nav&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;&amp;lt;nav&amp;gt;&lt;/code&gt; tag shows that the breadcrumb is a navigation element. Adding &lt;code&gt;aria-label&lt;/code&gt; gives it a label that screen readers can announce.&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;A screen reader is a technology that speaks out text on a screen based on where the user is currently focused.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The &lt;code&gt;&amp;lt;ol&amp;gt;&lt;/code&gt; tag shows that the breadcrumb is an ordered list of links.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The &lt;code&gt;&amp;lt;li&amp;gt;&lt;/code&gt; tag represents a breadcrumb item that houses the link.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;Typically when you use &lt;code&gt;&amp;lt;ol&amp;gt;&lt;/code&gt; or &lt;code&gt;&amp;lt;ui&amp;gt;&lt;/code&gt; in HTML, it needs to have a &lt;code&gt;&amp;lt;li&amp;gt;&lt;/code&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;&amp;lt;a&amp;gt;&lt;/code&gt; tag represents a breadcrumb link. Notice the last link has &lt;code&gt;aria-current="page"&lt;/code&gt;. This is used to indicate that it represents the current page.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Styling the breadcrumb&lt;/strong&gt;&lt;br&gt;
When styling widgets like this, I tend to limit the use of class names and prefer to leverage the structure of the HTML in CSS.&lt;/p&gt;

&lt;p&gt;Recap: Here's the HTML structure&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;nav&lt;/span&gt; &lt;span class="na"&gt;aria-label=&lt;/span&gt;&lt;span class="s"&gt;"breadcrumb"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;ol&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;li&amp;gt;&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;a&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"http://site.com/books"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Books&lt;span class="nt"&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;li&amp;gt;&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;a&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"http://site.com/books/sciencefiction"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Science Fiction&lt;span class="nt"&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;li&amp;gt;&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;lt;a&lt;/span&gt;
        &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"http://site.com/books/sciencefiction/award-winners"&lt;/span&gt;
        &lt;span class="na"&gt;aria-current=&lt;/span&gt;&lt;span class="s"&gt;"page"&lt;/span&gt;
      &lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        Award Winners
      &lt;span class="nt"&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/li&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;/ol&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/nav&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then here's how I'd style it using SASS or SCSS.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;nav&lt;/span&gt;&lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="nt"&gt;aria-label&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"breadcrumb"&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;padding&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;10px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="err"&gt;ol&lt;/span&gt; &lt;span class="err"&gt;{&lt;/span&gt;
    &lt;span class="nl"&gt;list-style-type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;none&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nl"&gt;display&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;flex&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

    &lt;span class="err"&gt;li&lt;/span&gt; &lt;span class="err"&gt;{&lt;/span&gt;
      &lt;span class="err"&gt;//&lt;/span&gt; &lt;span class="err"&gt;little&lt;/span&gt; &lt;span class="err"&gt;trick&lt;/span&gt; &lt;span class="err"&gt;to&lt;/span&gt; &lt;span class="err"&gt;add&lt;/span&gt; &lt;span class="err"&gt;"/"&lt;/span&gt; &lt;span class="err"&gt;separators&lt;/span&gt;
      &lt;span class="err"&gt;&amp;amp;:not(:last-child):after{&lt;/span&gt;
        &lt;span class="nl"&gt;content&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;"/"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="nl"&gt;color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;#c4c4c4&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="nl"&gt;display&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;inline-block&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="nl"&gt;margin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="m"&gt;12px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
      &lt;span class="p"&gt;}&lt;/span&gt;

      &lt;span class="nt"&gt;a&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nl"&gt;color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;rgb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;102&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="m"&gt;112&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="m"&gt;255&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
        &lt;span class="nl"&gt;text-decoration&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;none&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

        &lt;span class="err"&gt;&amp;amp;:hover{&lt;/span&gt;
          &lt;span class="nl"&gt;text-decoration&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;underline&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;

      &lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="nt"&gt;style&lt;/span&gt; &lt;span class="nt"&gt;the&lt;/span&gt; &lt;span class="nt"&gt;breadcrumb&lt;/span&gt; &lt;span class="nt"&gt;that&lt;/span&gt; &lt;span class="nt"&gt;represents&lt;/span&gt; &lt;span class="nt"&gt;the&lt;/span&gt; &lt;span class="nt"&gt;current&lt;/span&gt; &lt;span class="nt"&gt;page&lt;/span&gt; 
        &lt;span class="o"&gt;&amp;amp;[&lt;/span&gt;&lt;span class="nt"&gt;aria-current&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"page"&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
          &lt;span class="nl"&gt;color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;#333&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
          &lt;span class="nl"&gt;text-decoration&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;none&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
      &lt;span class="err"&gt;}&lt;/span&gt;
    &lt;span class="err"&gt;}&lt;/span&gt;
  &lt;span class="err"&gt;}&lt;/span&gt;
&lt;span class="err"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;Here's the codesandbox for the HTML and CSS. Feel free to play with it.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;iframe src="https://codesandbox.io/embed/breadcrumbhtml-3ryf1"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Creating a component&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Since I mostly use React.js so here's I'd transform the HTML markup to composable components. I believe something similar could be done with Vue, Svelte, etc.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="c1"&gt;// encapsulate the `nav` and `ol`&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;Breadcrumb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;props&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;children&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;...&lt;/span&gt;&lt;span class="nx"&gt;rest&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;props&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;return &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;nav&lt;/span&gt; &lt;span class="na"&gt;aria-label&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="s"&gt;"breadcrumb"&lt;/span&gt; &lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt;&lt;span class="nx"&gt;rest&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;ol&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;children&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;ol&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;nav&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
  &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// make this the `li`&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;BreadcrumbItem&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;props&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;li&lt;/span&gt; &lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt;&lt;span class="nx"&gt;props&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt; &lt;span class="p"&gt;/&amp;gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// make this the `a`&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;BreadcrumbLink&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;props&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;isCurrent&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;...&lt;/span&gt;&lt;span class="nx"&gt;rest&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;props&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;a&lt;/span&gt; &lt;span class="na"&gt;aria-current&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;isCurrent&lt;/span&gt; &lt;span class="p"&gt;?&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;page&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;undefined&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt; &lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="p"&gt;...&lt;/span&gt;&lt;span class="nx"&gt;rest&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt; &lt;span class="p"&gt;/&amp;gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;// then we create the breadcrumb like this&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;Example&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;return &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nc"&gt;Breadcrumb&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nc"&gt;BreadcrumbItem&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nc"&gt;BreadcrumbLink&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Books&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nc"&gt;BreadcrumbLink&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nc"&gt;BreadcrumbItem&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nc"&gt;BreadcrumbItem&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nc"&gt;BreadcrumbLink&lt;/span&gt; &lt;span class="na"&gt;isCurrent&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Science Fiction&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nc"&gt;BreadcrumbLink&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nc"&gt;BreadcrumbItem&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nc"&gt;Breadcrumb&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
  &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;I found that breaking a widget into smaller sub-parts makes it a lot easier to extend, compose, and style them. For instance, you could pass a &lt;code&gt;style&lt;/code&gt; prop to any of the parts and style it anyhow you want.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;That's it!&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You've learned how to create a breadcrumb. Thanks for taking the time to read through this. I really hope you find it useful.&lt;/p&gt;

&lt;p&gt;Comment below to let me know your thoughts&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Feel free to check out the React component library I created called Chakra UI. Here's the link to the breadcrumb component specifically: &lt;a href="http://chakra-ui.com/breadcrumb" rel="noopener noreferrer"&gt;http://chakra-ui.com/breadcrumb&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Stay safe!&lt;/p&gt;

</description>
      <category>component</category>
      <category>breadcrumb</category>
      <category>ui</category>
      <category>design</category>
    </item>
    <item>
      <title>How to fix Github SSH Issue</title>
      <dc:creator>Segun Adebayo</dc:creator>
      <pubDate>Sun, 12 Apr 2020 14:16:46 +0000</pubDate>
      <link>https://dev.to/segunadebayo/how-to-fix-github-ssh-issue-1j6</link>
      <guid>https://dev.to/segunadebayo/how-to-fix-github-ssh-issue-1j6</guid>
      <description>&lt;p&gt;Today, I was working on Chakra UI and ran into a weird issue with git and GitHub.&lt;/p&gt;

&lt;p&gt;I saw this error:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;ssh: Could not resolve &lt;span class="nb"&gt;hostname &lt;/span&gt;github.com: nodename nor servname provided, or not known
fatal: Could not &lt;span class="nb"&gt;read &lt;/span&gt;from remote repository.

Please make sure you have the correct access rights
and the repository exists.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;I knew my SSH was there, I had the correct access and repo exists. It was a bit frustrating but I found a walkaround.&lt;/p&gt;

&lt;p&gt;Here's the solution I found for macOS users:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Go to "System Preference" &amp;gt; "Network"&lt;/li&gt;
&lt;li&gt;Select the network you're connected to&lt;/li&gt;
&lt;li&gt;Click "Advanced"&lt;/li&gt;
&lt;li&gt;Switch to the "DNS" tab and click the "+"&lt;/li&gt;
&lt;li&gt;Add Google's DNS servers below 👇
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Here are the DNS servers for Google&lt;/span&gt;

8.8.8.8
8.8.4.4
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;That solved the problem!&lt;/p&gt;

&lt;p&gt;PS: This is my very first post on DEV.to and I'm using this to flex my muscles in preparation for the other posts coming 😇&lt;/p&gt;

</description>
      <category>git</category>
      <category>ssh</category>
      <category>github</category>
    </item>
  </channel>
</rss>
