<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Emmy.codes Blog — Emmanuel Ngene</title>
    <link>https://emmycodes.site/blog</link>
    <atom:link href="https://emmycodes.site/rss.xml" rel="self" type="application/rss+xml" />
    <description>Guides by Emmanuel Ngene on building web and mobile apps that hold up in production.</description>
    <language>en</language>
    <item>
      <title>How to Design REST APIs That Don't Break Under Load</title>
      <link>https://emmycodes.site/blog/scalable-rest-api-design</link>
      <guid isPermaLink="true">https://emmycodes.site/blog/scalable-rest-api-design</guid>
      <description>Pagination, timeouts, idempotency keys, rate limiting and caching: the API design decisions that keep a Node.js or NestJS backend standing on launch day.</description>
      <category>Backend</category>
      <pubDate>Sat, 17 Oct 2026 09:00:00 GMT</pubDate>
      <author>emmanuelngene145@gmail.com (Emmanuel Ngene)</author>
    </item>
    <item>
      <title>8 Database Schema Mistakes That Hurt Startups Later</title>
      <link>https://emmycodes.site/blog/database-schema-design-mistakes</link>
      <guid isPermaLink="true">https://emmycodes.site/blog/database-schema-design-mistakes</guid>
      <description>Money as floats, timestamps without time zones, missing indexes and locking migrations: PostgreSQL and MongoDB schema mistakes, and the cheap fixes.</description>
      <category>Databases</category>
      <pubDate>Sat, 17 Oct 2026 09:00:00 GMT</pubDate>
      <author>emmanuelngene145@gmail.com (Emmanuel Ngene)</author>
    </item>
    <item>
      <title>Authentication for Web and Mobile Apps: Sessions, JWTs and Refresh Tokens</title>
      <link>https://emmycodes.site/blog/authentication-web-mobile-apps</link>
      <guid isPermaLink="true">https://emmycodes.site/blog/authentication-web-mobile-apps</guid>
      <description>How to hash passwords, choose between sessions and JWTs, rotate refresh tokens and store them safely in browsers and React Native apps.</description>
      <category>Security</category>
      <pubDate>Sat, 17 Oct 2026 09:00:00 GMT</pubDate>
      <author>emmanuelngene145@gmail.com (Emmanuel Ngene)</author>
    </item>
    <item>
      <title>Core Web Vitals for React Apps: Fixing LCP, INP and CLS</title>
      <link>https://emmycodes.site/blog/core-web-vitals-react</link>
      <guid isPermaLink="true">https://emmycodes.site/blog/core-web-vitals-react</guid>
      <description>A practical guide to faster React, Next.js and Vite sites: what LCP, INP and CLS measure, and the fixes that improve each one.</description>
      <category>Frontend</category>
      <pubDate>Sat, 17 Oct 2026 09:00:00 GMT</pubDate>
      <author>emmanuelngene145@gmail.com (Emmanuel Ngene)</author>
    </item>
    <item>
      <title>Handover-Ready Code: A Checklist for Developers and Startups</title>
      <link>https://emmycodes.site/blog/handover-ready-code-checklist</link>
      <guid isPermaLink="true">https://emmycodes.site/blog/handover-ready-code-checklist</guid>
      <description>README, environment variables, migrations, tests, CI, decision records and account ownership: what a clean software handover needs.</description>
      <category>Process</category>
      <pubDate>Sat, 17 Oct 2026 09:00:00 GMT</pubDate>
      <author>emmanuelngene145@gmail.com (Emmanuel Ngene)</author>
    </item>
  </channel>
</rss>
