<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>Caleb Olojo's Blog</title>
        <link>https://meje.dev</link>
        <description>Articles around software engineering (Typescript, JavaScript, React, Next.js, Rust, TanStack, the open web and more), what i'm learning, and or reading, life, sometimes</description>
        <lastBuildDate>Sat, 09 May 2026 18:13:21 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>Feed for Node.js</generator>
        <language>en</language>
        <image>
            <title>Caleb Olojo's Blog</title>
            <url>https://meje.dev/img/favicon-two/android-chrome-512x512.png</url>
            <link>https://meje.dev</link>
        </image>
        <copyright>All rights reserved 2026, Caleb Olojo</copyright>
        <item>
            <title><![CDATA[On strings and characters in Haskell]]></title>
            <link>https://meje.dev/blog/strings-and-chars</link>
            <guid isPermaLink="false">https://meje.dev/blog/strings-and-chars</guid>
            <pubDate>Wed, 15 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[String is a type alias for [Char] in Haskell. GHCi will tell you that, but only once you look closely enough.]]></description>
            <content:encoded><![CDATA[String is a type alias for [Char] in Haskell. GHCi will tell you that, but only once you look closely enough.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>ghc</category>
            <category>strings</category>
            <enclosure url="https://meje.dev/img/covers/strings-chars.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Bits, bytes and pieces]]></title>
            <link>https://meje.dev/blog/bits-and-pieces</link>
            <guid isPermaLink="false">https://meje.dev/blog/bits-and-pieces</guid>
            <pubDate>Wed, 18 Mar 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[understanding bits and bytes from first principles — binary, storage, ASCII, and why computers speak in powers of two.]]></description>
            <content:encoded><![CDATA[understanding bits and bytes from first principles — binary, storage, ASCII, and why computers speak in powers of two.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>binary</category>
            <category>cids</category>
            <category>bits</category>
            <enclosure url="https://meje.dev/img/covers/bits-and-pieces.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Remotes]]></title>
            <link>https://meje.dev/blog/remotes</link>
            <guid isPermaLink="false">https://meje.dev/blog/remotes</guid>
            <pubDate>Wed, 04 Mar 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[My mental model around git remotes, and how to push to multiple at once.]]></description>
            <content:encoded><![CDATA[My mental model around git remotes, and how to push to multiple at once.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>git</category>
            <enclosure url="https://meje.dev/img/covers/remotes.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[An up-close look at UCANs in the wild]]></title>
            <link>https://meje.dev/blog/ucans-in-the-wild</link>
            <guid isPermaLink="false">https://meje.dev/blog/ucans-in-the-wild</guid>
            <pubDate>Fri, 20 Feb 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Space DIDs, account DIDs, proof chains. What I learned building a delegation tool for myself and indirectly for people building upon Storacha's Hot Storage Network]]></description>
            <content:encoded><![CDATA[Space DIDs, account DIDs, proof chains. What I learned building a delegation tool for myself and indirectly for people building upon Storacha's Hot Storage Network]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>ucan</category>
            <category>storacha</category>
            <category>ipfs</category>
            <enclosure url="https://meje.dev/img/covers/keyhole.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Content-deterministic CIDs?]]></title>
            <link>https://meje.dev/blog/content-determinism-for-cids</link>
            <guid isPermaLink="false">https://meje.dev/blog/content-determinism-for-cids</guid>
            <pubDate>Mon, 02 Feb 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[How do you tell if a CID points to a file or a directory? And can you get the original name back?]]></description>
            <content:encoded><![CDATA[How do you tell if a CID points to a file or a directory? And can you get the original name back?]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>content-addressing</category>
            <category>ipfs</category>
            <enclosure url="https://meje.dev/img/covers/extra-eyes.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[A reward for thinking]]></title>
            <link>https://meje.dev/blog/a-reward-for-thinking</link>
            <guid isPermaLink="false">https://meje.dev/blog/a-reward-for-thinking</guid>
            <pubDate>Sat, 31 Jan 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[the thrill that comes from actually sitting down, thinking about something, a solution to a problem, and then actualize it.]]></description>
            <content:encoded><![CDATA[the thrill that comes from actually sitting down, thinking about something, a solution to a problem, and then actualize it.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>typescript?</category>
            <enclosure url="https://meje.dev/img/covers/thinking.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[This frailty]]></title>
            <link>https://meje.dev/blog/this-frailty</link>
            <guid isPermaLink="false">https://meje.dev/blog/this-frailty</guid>
            <pubDate>Tue, 27 Jan 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[take care of yourself, while you still can]]></description>
            <content:encoded><![CDATA[take care of yourself, while you still can]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>meh</category>
            <enclosure url="https://meje.dev/img/covers/bluurrr.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[a thrum of defiance]]></title>
            <link>https://meje.dev/blog/a-thrum-of-defiance</link>
            <guid isPermaLink="false">https://meje.dev/blog/a-thrum-of-defiance</guid>
            <pubDate>Thu, 01 Jan 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[an excerpt of what i've been up to since 2023]]></description>
            <content:encoded><![CDATA[an excerpt of what i've been up to since 2023]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>year-review</category>
            <enclosure url="https://meje.dev/img/covers/defiance-thrum.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[On Buffers, Binary Serialization and Endianness]]></title>
            <link>https://meje.dev/blog/buffers-endianess-serialization</link>
            <guid isPermaLink="false">https://meje.dev/blog/buffers-endianess-serialization</guid>
            <pubDate>Wed, 23 Jul 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[Buffers/Array Buffers in JavaScript are actually interesting — for now, at least. I share a little about the stuff I learned about endianness and binary object serialization.]]></description>
            <content:encoded><![CDATA[Buffers/Array Buffers in JavaScript are actually interesting — for now, at least. I share a little about the stuff I learned about endianness and binary object serialization.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>buffers</category>
            <category>ascii</category>
            <category>endianness</category>
            <enclosure url="https://meje.dev/img/covers/endianness-binary-buffers.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[React performance: Memoization]]></title>
            <link>https://meje.dev/blog/react-performance-memoization</link>
            <guid isPermaLink="false">https://meje.dev/blog/react-performance-memoization</guid>
            <pubDate>Sat, 17 May 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[Some stuff/learnings on basic Memoization in React]]></description>
            <content:encoded><![CDATA[Some stuff/learnings on basic Memoization in React]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>react</category>
            <enclosure url="https://meje.dev/img/covers/memo.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[How to move FIL out of MetaMask: My Experience]]></title>
            <link>https://meje.dev/blog/how-to-move-fil-from-metamask</link>
            <guid isPermaLink="false">https://meje.dev/blog/how-to-move-fil-from-metamask</guid>
            <pubDate>Sat, 01 Mar 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[In this article, I share how you can move FIL from your MetaMask wallet]]></description>
            <content:encoded><![CDATA[In this article, I share how you can move FIL from your MetaMask wallet]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>web3</category>
            <category>plgd</category>
            <enclosure url="https://meje.dev/img/covers/fil-metamask-move.webp" length="0" type="image/webp"/>
        </item>
        <item>
            <title><![CDATA[Building a proximity feature into maps with React]]></title>
            <link>https://meje.dev/blog/building-proximity-feature-react-leaflet</link>
            <guid isPermaLink="false">https://meje.dev/blog/building-proximity-feature-react-leaflet</guid>
            <pubDate>Tue, 25 Feb 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[In this guide, I walk you through how to build something a little bit similar to the "Gym near me" feature on Google Maps.]]></description>
            <content:encoded><![CDATA[In this guide, I walk you through how to build something a little bit similar to the "Gym near me" feature on Google Maps.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>react</category>
            <category>guide</category>
            <enclosure url="https://meje.dev/img/covers/proxi.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Adding image info/metadata to Zed]]></title>
            <link>https://meje.dev/blog/adding-image-info-to-zed</link>
            <guid isPermaLink="false">https://meje.dev/blog/adding-image-info-to-zed</guid>
            <pubDate>Mon, 10 Feb 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[In this article, I share how I made my first contribution to the Zed editor and the stuff I learned from doing so.]]></description>
            <content:encoded><![CDATA[In this article, I share how I made my first contribution to the Zed editor and the stuff I learned from doing so.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>rust</category>
            <category>oss</category>
            <enclosure url="https://meje.dev/img/covers/zed-image-info.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Blog posts don't show up immediately with GhostCMS]]></title>
            <link>https://meje.dev/blog/ghost-cms-posts-doesnt-show</link>
            <guid isPermaLink="false">https://meje.dev/blog/ghost-cms-posts-doesnt-show</guid>
            <pubDate>Thu, 26 Dec 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Blog posts with GhostCMS don't show up immediately with Next.js in production but works fine on localhost. Here's how to fix it]]></description>
            <content:encoded><![CDATA[Blog posts with GhostCMS don't show up immediately with Next.js in production but works fine on localhost. Here's how to fix it]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>headless-cms</category>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/revalidate.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[How I fixed a UX issue with a Polling mechanism]]></title>
            <link>https://meje.dev/blog/polling-network-requests</link>
            <guid isPermaLink="false">https://meje.dev/blog/polling-network-requests</guid>
            <pubDate>Mon, 29 Jul 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Because we can't exactly pinpoint when a request is complete or successful, the approach above will be inefficient]]></description>
            <content:encoded><![CDATA[Because we can't exactly pinpoint when a request is complete or successful, the approach above will be inefficient]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>react</category>
            <category>UX</category>
            <enclosure url="https://meje.dev/img/covers/tangles.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[I opened three Next.js projects with Zed and my PC did not prepare for liftoff]]></title>
            <link>https://meje.dev/blog/tried-zed-on-linux</link>
            <guid isPermaLink="false">https://meje.dev/blog/tried-zed-on-linux</guid>
            <pubDate>Fri, 12 Jul 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Trying Zed for the first time]]></description>
            <content:encoded><![CDATA[Trying Zed for the first time]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>devtools</category>
            <category>IDE</category>
            <enclosure url="https://meje.dev/img/covers/tried-zed.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Monkey patching: refresh token mechanism in React]]></title>
            <link>https://meje.dev/blog/refresh-token-mechanism-in-nextjs</link>
            <guid isPermaLink="false">https://meje.dev/blog/refresh-token-mechanism-in-nextjs</guid>
            <pubDate>Sat, 11 May 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Intercept network requests by monkey patching the native fetch API ]]></description>
            <content:encoded><![CDATA[Intercept network requests by monkey patching the native fetch API ]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>auth</category>
            <category>react</category>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/tangerine-loop.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[OAuth with Supabase in a Vite React app]]></title>
            <link>https://meje.dev/blog/supabase-oauth-in-react-apps</link>
            <guid isPermaLink="false">https://meje.dev/blog/supabase-oauth-in-react-apps</guid>
            <pubDate>Mon, 26 Feb 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[For starters, if you want to enable OAuth in your app with Supabase, you would need to use a snippet similar...]]></description>
            <content:encoded><![CDATA[For starters, if you want to enable OAuth in your app with Supabase, you would need to use a snippet similar...]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>react</category>
            <category>auth</category>
            <enclosure url="https://meje.dev/img/covers/base.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[How to use react-spring with Chakra UI]]></title>
            <link>https://meje.dev/blog/using-react-spring-with-chakraui</link>
            <guid isPermaLink="false">https://meje.dev/blog/using-react-spring-with-chakraui</guid>
            <pubDate>Sun, 11 Feb 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Here's how you can use react-spring in a ChakraUI project]]></description>
            <content:encoded><![CDATA[Here's how you can use react-spring in a ChakraUI project]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>animation</category>
            <category>chakraui</category>
            <enclosure url="https://meje.dev/img/covers/chakra-react-spring.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Moving husky pre-commit hook into Github Actions]]></title>
            <link>https://meje.dev/blog/husky-precommit-into-github-actions</link>
            <guid isPermaLink="false">https://meje.dev/blog/husky-precommit-into-github-actions</guid>
            <pubDate>Fri, 26 Jan 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[And to even improve the experience of devs on the team, it is better to move this process into a CI environment.]]></description>
            <content:encoded><![CDATA[And to even improve the experience of devs on the team, it is better to move this process into a CI environment.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>actions</category>
            <category>automation</category>
            <enclosure url="https://meje.dev/img/covers/hand.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Blur images onLoad with Next.js]]></title>
            <link>https://meje.dev/blog/nextjs-image-blur-on-load</link>
            <guid isPermaLink="false">https://meje.dev/blog/nextjs-image-blur-on-load</guid>
            <pubDate>Mon, 15 Jan 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Learn how to blur images onLoad with Next.js Image component]]></description>
            <content:encoded><![CDATA[Learn how to blur images onLoad with Next.js Image component]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <category>react</category>
            <enclosure url="https://meje.dev/img/covers/next-img-blur-cover.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Querying a MongoDB collection]]></title>
            <link>https://meje.dev/blog/querying-a-mongodb-collection</link>
            <guid isPermaLink="false">https://meje.dev/blog/querying-a-mongodb-collection</guid>
            <pubDate>Wed, 10 Jan 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[How to query a MongoDB collection in a Next.js app with API routes and SWR]]></description>
            <content:encoded><![CDATA[How to query a MongoDB collection in a Next.js app with API routes and SWR]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <category>mongodb</category>
            <category>swr</category>
            <enclosure url="https://meje.dev/img/covers/query-mongo-collection.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[2023 — Outside the four walls of a classroom]]></title>
            <link>https://meje.dev/blog/year-in-review-2023</link>
            <guid isPermaLink="false">https://meje.dev/blog/year-in-review-2023</guid>
            <pubDate>Mon, 08 Jan 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Last year, I was poor, became broke, and now I'm preaching the gospel of pepper.]]></description>
            <content:encoded><![CDATA[Last year, I was poor, became broke, and now I'm preaching the gospel of pepper.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>life</category>
            <category>year-in-review</category>
            <enclosure url="https://meje.dev/img/covers/out-of-shul.jpeg" length="0" type="image/jpeg"/>
        </item>
        <item>
            <title><![CDATA[Edge function timeouts of next/image on Netlify]]></title>
            <link>https://meje.dev/blog/next-image-error-on-netlify</link>
            <guid isPermaLink="false">https://meje.dev/blog/next-image-error-on-netlify</guid>
            <pubDate>Thu, 28 Dec 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[You might run into a serverless/edge function timeout error with a 502 status code, causing your images to be broken in production. This is how to fix it.]]></description>
            <content:encoded><![CDATA[You might run into a serverless/edge function timeout error with a 502 status code, causing your images to be broken in production. This is how to fix it.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <category>netlify</category>
            <enclosure url="https://meje.dev/img/covers/next-img-error-netlify.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Building a pagination feature with SWR]]></title>
            <link>https://meje.dev/blog/building-a-pagination-component-with-swr</link>
            <guid isPermaLink="false">https://meje.dev/blog/building-a-pagination-component-with-swr</guid>
            <pubDate>Sun, 12 Nov 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[It is quite easier to build a pagination feature into React app with SWR]]></description>
            <content:encoded><![CDATA[It is quite easier to build a pagination feature into React app with SWR]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>swr</category>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/pagi-custom.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Next.js supports styled-components now?]]></title>
            <link>https://meje.dev/blog/nextjs-supports-styled-components</link>
            <guid isPermaLink="false">https://meje.dev/blog/nextjs-supports-styled-components</guid>
            <pubDate>Mon, 06 Nov 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[Next.js has default support for styled-components now]]></description>
            <content:encoded><![CDATA[Next.js has default support for styled-components now]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <category>styled-components</category>
            <enclosure url="https://meje.dev/img/covers/next-and-sc.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Persisting auth state in Next.js, React Context and cookie wrappers]]></title>
            <link>https://meje.dev/blog/persisting-auth-state-in-nextjs-context-and-cookies</link>
            <guid isPermaLink="false">https://meje.dev/blog/persisting-auth-state-in-nextjs-context-and-cookies</guid>
            <pubDate>Sat, 07 Oct 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[persisting auth state, choosing the right cookie wrapper based on your project needs. React Context isn't the de facto solution to state management in React apps.]]></description>
            <content:encoded><![CDATA[persisting auth state, choosing the right cookie wrapper based on your project needs. React Context isn't the de facto solution to state management in React apps.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <category>auth</category>
            <category>cookies</category>
            <enclosure url="https://meje.dev/img/covers/auth-state-context-cookies.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[pageExtensions in Next.js]]></title>
            <link>https://meje.dev/blog/page-extensions-in-nextjs</link>
            <guid isPermaLink="false">https://meje.dev/blog/page-extensions-in-nextjs</guid>
            <pubDate>Wed, 20 Sep 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[configuring page extensions in Next.js]]></description>
            <content:encoded><![CDATA[configuring page extensions in Next.js]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/nextjs-page-extensions.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Confirm email with Djoser in a Next.js app]]></title>
            <link>https://meje.dev/blog/confirm-email-with-djoser-in-nextjs</link>
            <guid isPermaLink="false">https://meje.dev/blog/confirm-email-with-djoser-in-nextjs</guid>
            <pubDate>Fri, 15 Sep 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[Implementing a confirm email auth flow with Djoser in a Next.js app]]></description>
            <content:encoded><![CDATA[Implementing a confirm email auth flow with Djoser in a Next.js app]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <category>auth</category>
            <category>swr</category>
            <enclosure url="https://meje.dev/img/covers/package-confirmed.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Active nested routes in Next.js — How I figured it out.]]></title>
            <link>https://meje.dev/blog/nested-navitems-in-nextjs</link>
            <guid isPermaLink="false">https://meje.dev/blog/nested-navitems-in-nextjs</guid>
            <pubDate>Sat, 12 Aug 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[check if the current path is the same as what I'm mapping through in my array of navItems]]></description>
            <content:encoded><![CDATA[check if the current path is the same as what I'm mapping through in my array of navItems]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <category>react</category>
            <enclosure url="https://meje.dev/img/covers/nested-routes.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[TypeScript Unions — How I used it.]]></title>
            <link>https://meje.dev/blog/how-i-used-typscript-unions</link>
            <guid isPermaLink="false">https://meje.dev/blog/how-i-used-typscript-unions</guid>
            <pubDate>Thu, 10 Aug 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[This comparison appears to be unintentional because the types `"admin"` and `"owner"` have no overlap.ts(2367)]]></description>
            <content:encoded><![CDATA[This comparison appears to be unintentional because the types `"admin"` and `"owner"` have no overlap.ts(2367)]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>typescript</category>
            <category>react</category>
            <enclosure url="https://meje.dev/img/covers/ts-unions.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Fixing href interpolation errors in Next.js]]></title>
            <link>https://meje.dev/blog/nextjs-href-interpolation-error</link>
            <guid isPermaLink="false">https://meje.dev/blog/nextjs-href-interpolation-error</guid>
            <pubDate>Wed, 12 Jul 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[In the error modal where the information about the error lies, was a link to a page on how to fix this href interpolation error]]></description>
            <content:encoded><![CDATA[In the error modal where the information about the error lies, was a link to a page on how to fix this href interpolation error]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/routes.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Here's how to use React Suspense in Next.js]]></title>
            <link>https://meje.dev/blog/suspense-in-nextjs</link>
            <guid isPermaLink="false">https://meje.dev/blog/suspense-in-nextjs</guid>
            <pubDate>Mon, 26 Jun 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[Using suspense in Next.js can be tricky sometimes...]]></description>
            <content:encoded><![CDATA[Using suspense in Next.js can be tricky sometimes...]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>react</category>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/lag-traffic.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Authentication in Next.js with cookies and getServerSideProps]]></title>
            <link>https://meje.dev/blog/nextjs-auth-with-cookies-and-getserversideprop</link>
            <guid isPermaLink="false">https://meje.dev/blog/nextjs-auth-with-cookies-and-getserversideprop</guid>
            <pubDate>Mon, 19 Jun 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[Here's how authentication works, in general, The user sends a request through the client — a web browser mostly — to a resource...]]></description>
            <content:encoded><![CDATA[Here's how authentication works, in general, The user sends a request through the client — a web browser mostly — to a resource...]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>auth</category>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/auth-lock.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[You Might not need a state-management Library]]></title>
            <link>https://meje.dev/blog/keep-state-in-the-url</link>
            <guid isPermaLink="false">https://meje.dev/blog/keep-state-in-the-url</guid>
            <pubDate>Tue, 13 Jun 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[it is possible to actually keep state in the browser's URL. I mean... that's how Google's search manages the UI state of your search results.]]></description>
            <content:encoded><![CDATA[it is possible to actually keep state in the browser's URL. I mean... that's how Google's search manages the UI state of your search results.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>react</category>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/lego-folks.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Masking endpoints with Next.js API routes]]></title>
            <link>https://meje.dev/blog/mask-api-urls-with-api-routes</link>
            <guid isPermaLink="false">https://meje.dev/blog/mask-api-urls-with-api-routes</guid>
            <pubDate>Fri, 19 May 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[One of the most common issues with keeping API urls or endpoints in environment variables is that anyone can still access this variable]]></description>
            <content:encoded><![CDATA[One of the most common issues with keeping API urls or endpoints in environment variables is that anyone can still access this variable]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>security</category>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/ostrich-two.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Adding post controllers to my blog]]></title>
            <link>https://meje.dev/blog/adding-prev-and-next-buttons</link>
            <guid isPermaLink="false">https://meje.dev/blog/adding-prev-and-next-buttons</guid>
            <pubDate>Wed, 03 May 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[A tiny detail can appear tiny at times, but can be frustrating as time goes on]]></description>
            <content:encoded><![CDATA[A tiny detail can appear tiny at times, but can be frustrating as time goes on]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <category>javascript</category>
            <enclosure url="https://meje.dev/img/covers/controllers.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Optional props in TypeScript]]></title>
            <link>https://meje.dev/blog/optional-props-in-typescript</link>
            <guid isPermaLink="false">https://meje.dev/blog/optional-props-in-typescript</guid>
            <pubDate>Mon, 24 Apr 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[Sometimes, JavaScript will be JavaScript, and you may not even catch any error]]></description>
            <content:encoded><![CDATA[Sometimes, JavaScript will be JavaScript, and you may not even catch any error]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>typescript</category>
            <enclosure url="https://meje.dev/img/covers/optional-props.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[useRef instead of querySelector in React]]></title>
            <link>https://meje.dev/blog/useref-not-queryselector</link>
            <guid isPermaLink="false">https://meje.dev/blog/useref-not-queryselector</guid>
            <pubDate>Mon, 27 Mar 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[You should not use the querySelector method to access DOM nodes in React. Instead, use the ref hook]]></description>
            <content:encoded><![CDATA[You should not use the querySelector method to access DOM nodes in React. Instead, use the ref hook]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>react</category>
            <enclosure url="https://meje.dev/img/covers/ref-firacode-lg.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[How to fix styled-components server mismatch error in Next.js]]></title>
            <link>https://meje.dev/blog/styled-components-hydration-error</link>
            <guid isPermaLink="false">https://meje.dev/blog/styled-components-hydration-error</guid>
            <pubDate>Sat, 11 Mar 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[This error causes the styles you've written to break on initial render, but when you navigate to another route, it'll behave as normal.]]></description>
            <content:encoded><![CDATA[This error causes the styles you've written to break on initial render, but when you navigate to another route, it'll behave as normal.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <category>styled-components</category>
            <enclosure url="https://meje.dev/img/covers/sc-mismatch-q20.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[The perils of building a Table of Content component]]></title>
            <link>https://meje.dev/blog/building-a-table-of-content-component</link>
            <guid isPermaLink="false">https://meje.dev/blog/building-a-table-of-content-component</guid>
            <pubDate>Fri, 03 Mar 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[The idea behind this feature is to give the reader a 'heads-up' about the information/article they're trying to consume.]]></description>
            <content:encoded><![CDATA[The idea behind this feature is to give the reader a 'heads-up' about the information/article they're trying to consume.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>ux</category>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/toc.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[handleChange in TypeScript]]></title>
            <link>https://meje.dev/blog/handle-change-in-ts</link>
            <guid isPermaLink="false">https://meje.dev/blog/handle-change-in-ts</guid>
            <pubDate>Thu, 02 Mar 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[listening to the onChange event is different in TypeScript-based React form components.]]></description>
            <content:encoded><![CDATA[listening to the onChange event is different in TypeScript-based React form components.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>typescript</category>
            <category>react</category>
            <enclosure url="https://meje.dev/img/covers/handle-change.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Add a preloader to a Next.js site — the right way]]></title>
            <link>https://meje.dev/blog/building-a-nextjs-preloader-the-right-way</link>
            <guid isPermaLink="false">https://meje.dev/blog/building-a-nextjs-preloader-the-right-way</guid>
            <pubDate>Fri, 17 Feb 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[A loading component should, in itself, be able to inform the user about the status of their action, it shouldn't show the text 'loading', or a spinner that keeps on going till God knows when.]]></description>
            <content:encoded><![CDATA[A loading component should, in itself, be able to inform the user about the status of their action, it shouldn't show the text 'loading', or a spinner that keeps on going till God knows when.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/the-right-way.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[JavaScript in CSS — A subtle approach]]></title>
            <link>https://meje.dev/blog/js-in-css-basics</link>
            <guid isPermaLink="false">https://meje.dev/blog/js-in-css-basics</guid>
            <pubDate>Wed, 08 Feb 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[how we can use custom CSS properties (variables) to store state.]]></description>
            <content:encoded><![CDATA[how we can use custom CSS properties (variables) to store state.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>vanillajs</category>
            <category>CSS</category>
            <enclosure url="https://meje.dev/img/covers/js-in-css.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Preventing the default scroll event with Next.js useRouter]]></title>
            <link>https://meje.dev/blog/prevent-default-scroll-event</link>
            <guid isPermaLink="false">https://meje.dev/blog/prevent-default-scroll-event</guid>
            <pubDate>Sun, 05 Feb 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[The router.push method is from the Next.js useRouter hook, which is used to navigate to a new URL.]]></description>
            <content:encoded><![CDATA[The router.push method is from the Next.js useRouter hook, which is used to navigate to a new URL.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <category>opensource</category>
            <enclosure url="https://meje.dev/img/covers/nextjs-useRouter.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Type-checking with TypeScript in React]]></title>
            <link>https://meje.dev/blog/type-checking-in-typescript</link>
            <guid isPermaLink="false">https://meje.dev/blog/type-checking-in-typescript</guid>
            <pubDate>Mon, 09 Jan 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[I've never been a fan of TypeScript. But, here I am, writing about it]]></description>
            <content:encoded><![CDATA[I've never been a fan of TypeScript. But, here I am, writing about it]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>typescript</category>
            <enclosure url="https://meje.dev/img/covers/type-checking.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[2022 — you evasive psycho!]]></title>
            <link>https://meje.dev/blog/year-in-review-2022</link>
            <guid isPermaLink="false">https://meje.dev/blog/year-in-review-2022</guid>
            <pubDate>Sat, 31 Dec 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[I've had so many experiences with failure, but this one was just too much!]]></description>
            <content:encoded><![CDATA[I've had so many experiences with failure, but this one was just too much!]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>life</category>
            <category>year-in-review</category>
            <enclosure url="https://meje.dev/img/covers/eoy.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Building a real-time views component with Next.js and MongoDB]]></title>
            <link>https://meje.dev/blog/building-a-reatime-view-counter</link>
            <guid isPermaLink="false">https://meje.dev/blog/building-a-reatime-view-counter</guid>
            <pubDate>Mon, 19 Dec 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[There aren't so many resources around integrating a static site like mine with MongoDB. I had no idea about what I was doing]]></description>
            <content:encoded><![CDATA[There aren't so many resources around integrating a static site like mine with MongoDB. I had no idea about what I was doing]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/mongodb-views.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Using PropTypes in React]]></title>
            <link>https://meje.dev/blog/using-proptypes-in-react</link>
            <guid isPermaLink="false">https://meje.dev/blog/using-proptypes-in-react</guid>
            <pubDate>Thu, 15 Dec 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[React is a popular JavaScript library for building user interfaces. One important aspect of developing with React is ensuring that the props (short for properties) passed to components are valid. This is where propTypes comes in]]></description>
            <content:encoded><![CDATA[React is a popular JavaScript library for building user interfaces. One important aspect of developing with React is ensuring that the props (short for properties) passed to components are valid. This is where propTypes comes in]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>proptypes</category>
            <enclosure url="https://meje.dev/img/covers/proptypes.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Production error with the .next directory on Netlify]]></title>
            <link>https://meje.dev/blog/next-directory-returns-error-404-on-netlify</link>
            <guid isPermaLink="false">https://meje.dev/blog/next-directory-returns-error-404-on-netlify</guid>
            <pubDate>Mon, 12 Dec 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[I'm improving my website every day, particularly my blog. Talk about the layouts, a few server-side calls here and there in the codebase.]]></description>
            <content:encoded><![CDATA[I'm improving my website every day, particularly my blog. Talk about the layouts, a few server-side calls here and there in the codebase.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/next-dir-err.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Internationalization in Next.js]]></title>
            <link>https://meje.dev/blog/html-lang-attribute-in-nextjs</link>
            <guid isPermaLink="false">https://meje.dev/blog/html-lang-attribute-in-nextjs</guid>
            <pubDate>Thu, 10 Nov 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[I've been lost in the process of benchmarking my website's performance for the past few days now. But...]]></description>
            <content:encoded><![CDATA[I've been lost in the process of benchmarking my website's performance for the past few days now. But...]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/i18n.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[My fair share of rehydration in React]]></title>
            <link>https://meje.dev/blog/practical-approach-to-hydration</link>
            <guid isPermaLink="false">https://meje.dev/blog/practical-approach-to-hydration</guid>
            <pubDate>Sat, 22 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Hydration in React, hasn't been something that I cared about for a very long time. Not until I got attacked ferociously by an error related to this technique]]></description>
            <content:encoded><![CDATA[Hydration in React, hasn't been something that I cared about for a very long time. Not until I got attacked ferociously by an error related to this technique]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>react</category>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/rehydration.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Gatsby's link component feels tricky]]></title>
            <link>https://meje.dev/blog/gatsbys-link-component</link>
            <guid isPermaLink="false">https://meje.dev/blog/gatsbys-link-component</guid>
            <pubDate>Sat, 15 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Coming from a Next.js background, I find the link component in Gatsby quite a bit tricky to use.]]></description>
            <content:encoded><![CDATA[Coming from a Next.js background, I find the link component in Gatsby quite a bit tricky to use.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>gatsby</category>
            <category>react</category>
            <enclosure url="https://meje.dev/img/covers/gatsby-link.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Animating SVGs with Remotion]]></title>
            <link>https://meje.dev/blog/svg-animtion-with-remotion</link>
            <guid isPermaLink="false">https://meje.dev/blog/svg-animtion-with-remotion</guid>
            <pubDate>Tue, 11 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Say you're collaborating as a Frontend Engineer with a design team, and you want a way to get a real-time representation of some design assets you have on Figma...]]></description>
            <content:encoded><![CDATA[Say you're collaborating as a Frontend Engineer with a design team, and you want a way to get a real-time representation of some design assets you have on Figma...]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>react</category>
            <category>svg</category>
            <enclosure url="https://meje.dev/img/covers/remotion.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Build a re-usable YouTube embed component with React]]></title>
            <link>https://meje.dev/blog/reusable-youtube-component</link>
            <guid isPermaLink="false">https://meje.dev/blog/reusable-youtube-component</guid>
            <pubDate>Sat, 20 Aug 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[In this article, we'll go over how you can create a re-usable YouTube embed component with React.]]></description>
            <content:encoded><![CDATA[In this article, we'll go over how you can create a re-usable YouTube embed component with React.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>react</category>
            <enclosure url="https://meje.dev/img/covers/reusable.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Time's up. But, I'm not done yet.]]></title>
            <link>https://meje.dev/blog/times-up</link>
            <guid isPermaLink="false">https://meje.dev/blog/times-up</guid>
            <pubDate>Fri, 08 Jul 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[I'd be telling a lie if I said I wasn't terrified when the idea of leading the community was brought to me by the former Lead]]></description>
            <content:encoded><![CDATA[I'd be telling a lie if I said I wasn't terrified when the idea of leading the community was brought to me by the former Lead]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>community</category>
            <enclosure url="https://meje.dev/img/covers/bicycle.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[The CSS overview devtool]]></title>
            <link>https://meje.dev/blog/the-css-overview-devtool</link>
            <guid isPermaLink="false">https://meje.dev/blog/the-css-overview-devtool</guid>
            <pubDate>Sun, 22 May 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[The chrome developer tool is by far an important addition to the awesome developer experience (DX) that every developer benefits from.]]></description>
            <content:encoded><![CDATA[The chrome developer tool is by far an important addition to the awesome developer experience (DX) that every developer benefits from.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>css</category>
            <category>devtools</category>
            <enclosure url="https://meje.dev/img/covers/devtools.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[The grayscale CSS Filter effect]]></title>
            <link>https://meje.dev/blog/filter-effects-in-css</link>
            <guid isPermaLink="false">https://meje.dev/blog/filter-effects-in-css</guid>
            <pubDate>Sat, 14 May 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[You can do a lot of things with CSS. But a lot of developers complain that it can be quite difficult most of the time, and that, somtimes, is the absolute truth.]]></description>
            <content:encoded><![CDATA[You can do a lot of things with CSS. But a lot of developers complain that it can be quite difficult most of the time, and that, somtimes, is the absolute truth.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>css</category>
            <category>animation</category>
            <enclosure url="https://meje.dev/img/covers/grayscale-effect.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Styling the Next.js image component]]></title>
            <link>https://meje.dev/blog/styling-nextjs-image-component</link>
            <guid isPermaLink="false">https://meje.dev/blog/styling-nextjs-image-component</guid>
            <pubDate>Wed, 11 May 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[You've had quite a difficult time using the Next.js image component at least one time when you're using the framework.]]></description>
            <content:encoded><![CDATA[You've had quite a difficult time using the Next.js image component at least one time when you're using the framework.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <category>css</category>
            <enclosure url="https://meje.dev/img/covers/styling-nextImage.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[How I built my blog with Next.js and MDX]]></title>
            <link>https://meje.dev/blog/how-i-built-this-blog</link>
            <guid isPermaLink="false">https://meje.dev/blog/how-i-built-this-blog</guid>
            <pubDate>Thu, 21 Apr 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[In this article, I am going to show you how I built this blog with the tools I used, so you can also try building something similar.]]></description>
            <content:encoded><![CDATA[In this article, I am going to show you how I built this blog with the tools I used, so you can also try building something similar.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>mdx</category>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/mdx-blog.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Social sharing meta tags error in Next.js]]></title>
            <link>https://meje.dev/blog/meta-tags-error-in-nextjs</link>
            <guid isPermaLink="false">https://meje.dev/blog/meta-tags-error-in-nextjs</guid>
            <pubDate>Sun, 17 Apr 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[There is no doubt that a great importance is placed on the Search Engine Optimization (SEO) of a website or blog (could be a dev blog also), because of the many benefits that it brings to the table.]]></description>
            <content:encoded><![CDATA[There is no doubt that a great importance is placed on the Search Engine Optimization (SEO) of a website or blog (could be a dev blog also), because of the many benefits that it brings to the table.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>react</category>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/meta-tags-error.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Next.js Image optimization error on Netlify]]></title>
            <link>https://meje.dev/blog/image-optimization-error-in-nextjs</link>
            <guid isPermaLink="false">https://meje.dev/blog/image-optimization-error-in-nextjs</guid>
            <pubDate>Sat, 16 Apr 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[Next.js has a built-in Image component that comes with a lot of performance optimization features when you are using it.]]></description>
            <content:encoded><![CDATA[Next.js has a built-in Image component that comes with a lot of performance optimization features when you are using it.]]></content:encoded>
            <author>belac335@gmail.com (Caleb Olojo)</author>
            <category>nextjs</category>
            <enclosure url="https://meje.dev/img/covers/optimization.jpg" length="0" type="image/jpg"/>
        </item>
    </channel>
</rss>