<?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>Forem: Abeer Rao</title>
    <description>The latest articles on Forem by Abeer Rao (@abeerrao).</description>
    <link>https://forem.com/abeerrao</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%2F1017958%2F6d5e3aac-1b12-435a-bcad-383807379f3f.png</url>
      <title>Forem: Abeer Rao</title>
      <link>https://forem.com/abeerrao</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/abeerrao"/>
    <language>en</language>
    <item>
      <title>Website Day 1</title>
      <dc:creator>Abeer Rao</dc:creator>
      <pubDate>Sat, 04 Feb 2023 06:04:44 +0000</pubDate>
      <link>https://forem.com/abeerrao/website-day-1-3f50</link>
      <guid>https://forem.com/abeerrao/website-day-1-3f50</guid>
      <description>&lt;p&gt;So yesterday I took on the challenge to actually get started on my own personal portfolio website. I got started with the design and decided that I will add the content later on when all the heavy lifting has been done. So I went to Dribble to look for some design themes.&lt;br&gt;
And the one I finalised is Neobrutalism. I am very trashy at design and know just about enough for it to pass. But this time I wanted to make the website look actually half decent. Neobrutalism follows the design of having sharp edges, bright colours, and bold strokes, which is quite different from what we see on modern websites today.&lt;br&gt;
I then came across a website called dodonut.com whose colour palette I really liked, so I took out the most used colours and got to work.&lt;br&gt;
I added a header, a basic introduction, my socials, and an about section all following the same pattern. I then realised that having a scroll progress on the header would be good so I looked up some code to do it and put it in.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const [completion, setCompletion] = useState(0)

    useEffect(() =&amp;gt; {
        const updateScroll = () =&amp;gt; {
            const progress = window.scrollY
            const scrollHeight = document.body.scrollHeight - window.innerHeight
            if (scrollHeight){
                setCompletion(
                    Number((progress / scrollHeight).toFixed(2)) * 100
                )
            }
        }
        window.addEventListener('scroll', updateScroll)
        return () =&amp;gt; window.removeEventListener('scroll', updateScroll)
    }, [])

    return completion
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This completion variable is a value between 0 and 100 depending on where you are on the page, now putting a transform property on an empty div adds a nice effect to show scroll progress.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;div
    style={{ transform: `scaleX(${completion / 100})` }}
    className={styles.progress} /&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I then pushed these changes to the GitHub repo and despite how little you can see, this took a substantial amount of time.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The reason people code is still a mystery. To put oneself through so much pain to achieve so little goes against human intuitiveness. Yet so many of us do it on a daily basis and reap happiness out of it. Humans are truly a weird race - Abeer Rao 2023&lt;/p&gt;
&lt;/blockquote&gt;

</description>
    </item>
    <item>
      <title>Creating My Personal Website</title>
      <dc:creator>Abeer Rao</dc:creator>
      <pubDate>Fri, 03 Feb 2023 05:41:20 +0000</pubDate>
      <link>https://forem.com/abeerrao/creating-my-personal-website-2j5c</link>
      <guid>https://forem.com/abeerrao/creating-my-personal-website-2j5c</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Having a personal website is a big improvement to any portfolio, especially when you are a full stack web developer. Being one for 4 years, I still don't have one myself to showcase all of my skills and projects. Instead, I rely solely on GitHub and LinkedIn. But today I will be changing that and finally start working on my own website. I will be using Next.JS along with Tailwind CSS and HeadlessUI to style it. I will use GitHub to save all the code and make it open-source.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1 - Getting started
&lt;/h2&gt;

&lt;p&gt;To get started, I created a new GitHub repo and a Next.JS application with Tailwind CSS and connected the remote workflow to the local.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx create-next-app@latest -e with-tailwindcss abr-dev
git remote add origin git@github.com:AbeerRao/abr-dev.git
git branch -M main
git push -u origin main
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And with that, a basic app has been set up. Now I will start making it look how I want it. All updates will be shared through Twitter and dev.to&lt;/p&gt;

&lt;p&gt;Link to the GitHub code : &lt;a href="https://github.com/AbeerRao/abr-dev"&gt;https://github.com/AbeerRao/abr-dev&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Follow to see how miserable I am at the end of all this.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>nextjs</category>
      <category>github</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
