<?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: Sabih</title>
    <description>The latest articles on DEV Community by Sabih (@techbucket).</description>
    <link>https://dev.to/techbucket</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%2F3215069%2F34d84053-0572-41c6-be93-770afcb32623.jpg</url>
      <title>DEV Community: Sabih</title>
      <link>https://dev.to/techbucket</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/techbucket"/>
    <language>en</language>
    <item>
      <title>Solving Next.js Route Refresh Issues on Firebase Hosting</title>
      <dc:creator>Sabih</dc:creator>
      <pubDate>Sat, 21 Jun 2025 20:33:37 +0000</pubDate>
      <link>https://dev.to/techbucket/-340b</link>
      <guid>https://dev.to/techbucket/-340b</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/techbucket" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&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%2Fuser%2Fprofile_image%2F3215069%2F34d84053-0572-41c6-be93-770afcb32623.jpg" alt="techbucket"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/techbucket/solving-nextjs-route-refresh-issues-on-firebase-hosting-526" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Solving Next.js Route Refresh Issues on Firebase Hosting&lt;/h2&gt;
      &lt;h3&gt;Sabih ・ Jun 20&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#nextjs&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#firebase&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#webdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#frontend&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>nextjs</category>
      <category>firebase</category>
      <category>webdev</category>
      <category>frontend</category>
    </item>
    <item>
      <title>Solving Next.js Route Refresh Issues on Firebase Hosting</title>
      <dc:creator>Sabih</dc:creator>
      <pubDate>Fri, 20 Jun 2025 16:38:44 +0000</pubDate>
      <link>https://dev.to/techbucket/solving-nextjs-route-refresh-issues-on-firebase-hosting-526</link>
      <guid>https://dev.to/techbucket/solving-nextjs-route-refresh-issues-on-firebase-hosting-526</guid>
      <description>&lt;p&gt;&lt;strong&gt;Why I Rebuilt My Routing System in Production?&lt;/strong&gt;&lt;br&gt;
While deploying a Next.js web app to Firebase Hosting, I encountered a frustrating and production-breaking issue:&lt;/p&gt;

&lt;p&gt;Refreshing dynamic routes like /page/[id] would consistently throw 404 errors.&lt;/p&gt;

&lt;p&gt;This happened despite the app working perfectly in local dev mode. Once hosted on Firebase (with its default static SPA setup), navigating directly to a dynamic route — or refreshing it — failed hard.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Debugging the Issue&lt;/strong&gt;&lt;br&gt;
Firebase Hosting serves static assets, and unless you’re using Cloud Functions or configuring complex rewrites, it doesn't know how to resolve dynamic paths like /page/123.&lt;/p&gt;

&lt;p&gt;Even with attempts at rewrites in firebase.json, I realized the setup was too brittle for a smooth production experience.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My Solution: Switch to Query-Based Routing&lt;/strong&gt;&lt;br&gt;
Instead of relying on Next.js’s dynamic route folders ([id].tsx), I made a structural change:&lt;/p&gt;

&lt;p&gt;diff&lt;br&gt;
Copy&lt;br&gt;
Edit&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;/pages/page/[id].tsx&lt;/li&gt;
&lt;li&gt;/pages/page.tsx ➝ &lt;code&gt;/page?id=123&lt;/code&gt;
Now all route parameters are passed via query strings, like:

&lt;ul&gt;
&lt;li&gt;/page?id=123&lt;/li&gt;
&lt;li&gt;/profile?uid=abc&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The Results&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;No more 404s when refreshing a dynamic route&lt;/li&gt;
&lt;li&gt;Firebase SPA hosting (/index.html) works perfectly&lt;/li&gt;
&lt;li&gt;No need to deploy Cloud Functions or SSR handlers&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Faster, more predictable deployments&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Did I Give Up?&lt;/strong&gt;&lt;br&gt;
Pretty URLs like /page/123 are definitely nicer. But when weighed against:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Production stability&lt;/li&gt;
&lt;li&gt;Faster iteration&lt;/li&gt;
&lt;li&gt;Fewer moving parts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;...the choice was clear for my use case. UX and reliability beat aesthetics.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key Takeaway&lt;/strong&gt;&lt;br&gt;
If you’re deploying a static or hybrid Next.js app on Firebase Hosting and running into 404s on refresh:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Query-based routing might be the hidden fix you didn’t know you needed&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Sometimes, a small change in routing can unblock an entire launch.&lt;br&gt;
Let me know if you’ve faced the same issue — and what your workaround was! I’d love to hear how others tackled this.&lt;/p&gt;

</description>
      <category>nextjs</category>
      <category>firebase</category>
      <category>webdev</category>
      <category>frontend</category>
    </item>
    <item>
      <title>From scratch to scale — how I built a modern gaming web app with React + Firebase and lessons I learned</title>
      <dc:creator>Sabih</dc:creator>
      <pubDate>Wed, 28 May 2025 00:40:27 +0000</pubDate>
      <link>https://dev.to/techbucket/from-scratch-to-scale-how-i-built-a-modern-gaming-web-app-with-react-firebase-and-lessons-i-2gl0</link>
      <guid>https://dev.to/techbucket/from-scratch-to-scale-how-i-built-a-modern-gaming-web-app-with-react-firebase-and-lessons-i-2gl0</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/techbucket/how-i-built-a-scalable-gaming-review-platform-with-react-nextjs-firebase-3c75" class="crayons-story__hidden-navigation-link"&gt;I Built a Scalable Gaming Review Platform with React, Next.js &amp;amp; Firebase&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/techbucket" class="crayons-avatar  crayons-avatar--l  "&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%2Fuser%2Fprofile_image%2F3215069%2F34d84053-0572-41c6-be93-770afcb32623.jpg" alt="techbucket profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/techbucket" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Sabih
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Sabih
                
              
              &lt;div id="story-author-preview-content-2534661" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/techbucket" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&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%2Fuser%2Fprofile_image%2F3215069%2F34d84053-0572-41c6-be93-770afcb32623.jpg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Sabih&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/techbucket/how-i-built-a-scalable-gaming-review-platform-with-react-nextjs-firebase-3c75" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;May 27 '25&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/techbucket/how-i-built-a-scalable-gaming-review-platform-with-react-nextjs-firebase-3c75" id="article-link-2534661"&gt;
          I Built a Scalable Gaming Review Platform with React, Next.js &amp;amp; Firebase
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag crayons-tag--filled  " href="/t/showdev"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;showdev&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/react"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;react&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/nextjs"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;nextjs&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/firebase"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;firebase&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
            &lt;a href="https://dev.to/techbucket/how-i-built-a-scalable-gaming-review-platform-with-react-nextjs-firebase-3c75#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


              &lt;span class="hidden s:inline"&gt;Add Comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            2 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
      <category>react</category>
      <category>nextjs</category>
      <category>firebase</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Showcasing The Gamer Bros: my full-stack gaming review app built solo with real-time features, SEO, and more 🎮</title>
      <dc:creator>Sabih</dc:creator>
      <pubDate>Wed, 28 May 2025 00:39:49 +0000</pubDate>
      <link>https://dev.to/techbucket/showcasing-the-gamer-bros-my-full-stack-gaming-review-app-built-solo-with-real-time-features-seo-47cl</link>
      <guid>https://dev.to/techbucket/showcasing-the-gamer-bros-my-full-stack-gaming-review-app-built-solo-with-real-time-features-seo-47cl</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/techbucket/how-i-built-a-scalable-gaming-review-platform-with-react-nextjs-firebase-3c75" class="crayons-story__hidden-navigation-link"&gt;I Built a Scalable Gaming Review Platform with React, Next.js &amp;amp; Firebase&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/techbucket" class="crayons-avatar  crayons-avatar--l  "&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%2Fuser%2Fprofile_image%2F3215069%2F34d84053-0572-41c6-be93-770afcb32623.jpg" alt="techbucket profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/techbucket" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Sabih
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Sabih
                
              
              &lt;div id="story-author-preview-content-2534661" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/techbucket" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&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%2Fuser%2Fprofile_image%2F3215069%2F34d84053-0572-41c6-be93-770afcb32623.jpg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Sabih&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/techbucket/how-i-built-a-scalable-gaming-review-platform-with-react-nextjs-firebase-3c75" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;May 27 '25&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/techbucket/how-i-built-a-scalable-gaming-review-platform-with-react-nextjs-firebase-3c75" id="article-link-2534661"&gt;
          I Built a Scalable Gaming Review Platform with React, Next.js &amp;amp; Firebase
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag crayons-tag--filled  " href="/t/showdev"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;showdev&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/react"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;react&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/nextjs"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;nextjs&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/firebase"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;firebase&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
            &lt;a href="https://dev.to/techbucket/how-i-built-a-scalable-gaming-review-platform-with-react-nextjs-firebase-3c75#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


              &lt;span class="hidden s:inline"&gt;Add Comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            2 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
      <category>react</category>
      <category>nextjs</category>
      <category>firebase</category>
      <category>showdev</category>
    </item>
    <item>
      <title>I Built a Scalable Gaming Review Platform with React, Next.js &amp; Firebase</title>
      <dc:creator>Sabih</dc:creator>
      <pubDate>Tue, 27 May 2025 20:31:19 +0000</pubDate>
      <link>https://dev.to/techbucket/how-i-built-a-scalable-gaming-review-platform-with-react-nextjs-firebase-3c75</link>
      <guid>https://dev.to/techbucket/how-i-built-a-scalable-gaming-review-platform-with-react-nextjs-firebase-3c75</guid>
      <description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;Ever wondered what it takes to build a gaming reviewing platform — but solo?&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Over the past 2 years, I designed and developed The Gamer Bros, a full-stack gaming hub where users can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Create their own gaming profiles&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Write reviews for any PC or console game&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Wishlist titles they want to play&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Participate in threaded forum discussions&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This was more than a side project — it was a deep dive into scaling modern web apps using React, Next.js, Firebase, and Redux.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech Stack Overview
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend&lt;/strong&gt;: React.js + Next.js for SEO and performance&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;State Management&lt;/strong&gt;: Redux Toolkit&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;UI Library&lt;/strong&gt;: Material UI (MUI)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend&lt;/strong&gt;: Firebase (Firestore, Auth, Cloud Functions)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hosting&lt;/strong&gt;: Firebase Hosting + Vercel for hybrid routes&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Key Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Dynamic game profiles with wishlist, library, and progress tracking.&lt;/li&gt;
&lt;li&gt;Rich-text reviews with rating, spoilers toggle, and shareable links.&lt;/li&gt;
&lt;li&gt;Threaded comments like Reddit — infinitely nested.&lt;/li&gt;
&lt;li&gt;Responsive design tested across multiple browsers/devices.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Biggest Challenges
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Real-time scaling with Firestore
&lt;/h3&gt;

&lt;p&gt;Optimizing query performance and paginating large game libraries without hitting read limits.&lt;/p&gt;

&lt;h3&gt;
  
  
  Nested comment rendering
&lt;/h3&gt;

&lt;p&gt;Creating an expandable threaded forum structure using recursion while maintaining speed and readability.&lt;/p&gt;

&lt;h3&gt;
  
  
  Dynamic SEO meta rendering
&lt;/h3&gt;

&lt;p&gt;Implementing dynamic &lt;/p&gt; tags for review pages using next/head for better discoverability.
&lt;h3&gt;
  
  
  User state management
&lt;/h3&gt;

&lt;p&gt;Syncing real-time auth, game data, and profile info with Redux and Firebase listeners — without breaking hydration in SSR.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it yourself
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://thegamerbroz.com" rel="noopener noreferrer"&gt;The Gamer Broz website&lt;/a&gt;&lt;br&gt;
Check out the platform live — browse reviews, wishlist games, or create a gaming profile.&lt;/p&gt;

&lt;h2&gt;
  
  
  Screenshots from the website
&lt;/h2&gt;

&lt;h3&gt;
  
  
  User Profile Dashboard
&lt;/h3&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%2Fxch5ckl23rzh3hobmipu.png" 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%2Fxch5ckl23rzh3hobmipu.png" alt="User profile page on The Gamer Bros, showcasing the user's gaming dashboard with a banner, avatar, and a scrollable grid of games including The Last of Us, God of War Ragnarök, and Uncharted 4." width="800" height="382"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Game Details Page
&lt;/h3&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%2F0ylu0kgoqlctpztzvhl9.png" 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%2F0ylu0kgoqlctpztzvhl9.png" alt="Detailed game page for 'Uncharted 4' showing developer info, description, and user-submitted gallery." width="800" height="838"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Game Review Writing Page
&lt;/h3&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%2Fg89fq108uzzw5x2w8slx.png" 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%2Fg89fq108uzzw5x2w8slx.png" alt="Review submission form for 'Uncharted 4: A Thief’s End' where users can rate the game, select console played, and mark spoiler or recommendation status." width="800" height="583"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Game Search Page
&lt;/h3&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%2F1xxwshfo29nm7hj8w7sy.png" 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%2F1xxwshfo29nm7hj8w7sy.png" alt="Search results for " width="800" height="463"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And many more fun stuff... live on the website.&lt;/p&gt;

</description>
      <category>react</category>
      <category>nextjs</category>
      <category>firebase</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
