1<!DOCTYPE html><!--yxySdhCMJGbkdETfA1O5p--><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/d67c2c17d567b625.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/2adcdfc2be38354f.js"/>
1<script src="/_next/static/chunks/4f835b49cee41f0f.js" async=""></script>
1<script src="/_next/static/chunks/09a724deba2fa4eb.js" async=""></script>
1<script src="/_next/static/chunks/649243f6a288b52a.js" async=""></script>
1<script src="/_next/static/chunks/turbopack-3dd5a3346b2d34ac.js" async=""></script>
1<script src="/_next/static/chunks/8dc433defdcc06a4.js" async=""></script>
1<script src="/_next/static/chunks/cbf337c1e05e890e.js" async=""></script>
1<script src="/_next/static/chunks/98899bc0c48e97ac.js" async=""></script>
1<script src="/_next/static/chunks/3083b559c323b742.js" async=""></script>
1<script src="/_next/static/chunks/82826d04ef7b5e72.js" async=""></script>
1<title>Abdulrahman Olalekan | Senior Software Engineer</title><meta name="description" content="Senior Software Engineer with years of experience building scalable web and mobile applications. Specializing in React, TypeScript, and modern frontend architectures."/><meta name="author" content="Abdulrahman Olalekan"/><meta name="generator" content="rhammy.web.app"/><meta name="keywords" content="Frontend Engineer,React Developer,C#,DotNet,NodeJs,TypeScript,Next.js,Web3,Nigeria"/><meta name="creator" content="Abdulrahman Olalekan"/><meta name="robots" content="index, follow"/><meta property="og:title" content="Abdulrahman Olalekan | Senior Software Engineer"/><meta property="og:description" content="Senior Software Engineer with 5 years of experience building scalable web and mobile applications."/><meta property="og:url" content="https://rhammy.web.app"/><meta property="og:site_name" content="Abdulrahman Olalekan Portfolio"/><meta property="og:locale" content="en_US"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:creator" content="@olalekanrahman"/><meta name="twitter:title" content="Abdulrahman Olalekan | Senior Software Engineer"/><meta name="twitter:description" content="Senior Software Engineer with 5 years of experience building scalable web and mobile applications."/><link rel="icon" href="/icon-light-32x32.png" media="(prefers-color-scheme: light)"/><link rel="icon" href="/icon-dark-32x32.png" media="(prefers-color-scheme: dark)"/><link rel="icon" href="/rhammy_icon.png" type="image/png"/><link rel="apple-touch-icon" href="/rhammy_icon.png"/>
1<script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script>
1</head><body class="font-sans antialiased"><div hidden=""><!--$--><!--/$--></div>
1<script>((a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=["light","dark"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c="class"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d),i.classList.add(f&&f[b]?f[b]:b)):i.setAttribute(a,b)}),c=b,h&&j.includes(c)&&(i.style.colorScheme=c)}if(d)k(d);else try{let a=localStorage.getItem(b)||c,d=g&&"system"===a?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":a;k(d)}catch(a){}})("class","theme","dark",null,["light","dark"],null,true,true)</script>
1<header class="fixed top-0 left-0 right-0 z-50 transition-all duration-300 bg-transparent" style="transform:translateY(-100px)"><nav class="mx-auto max-w-6xl px-6 py-4"><div class="flex items-center justify-between"><a class="group flex items-center gap-2" href="/"><img alt="Rhammy" loading="lazy" width="32" height="32" decoding="async" data-nimg="1" class="rounded-full" style="color:transparent" src="/rhammy_icon.png"/><span class="text-xl font-semibold text-primary">Rhammy<!-- -->Dev</span></a><div class="hidden md:flex items-center gap-8"><a href="#about" class="text-sm text-muted-foreground hover:text-foreground transition-colors relative group" style="opacity:0;transform:translateY(-10px)">About<span class="absolute -bottom-1 left-0 w-0 h-0.5 bg-primary transition-all duration-300 group-hover:w-full"></span></a><a href="#skills" class="text-sm text-muted-foreground hover:text-foreground transition-colors relative group" style="opacity:0;transform:translateY(-10px)">Skills<span class="absolute -bottom-1 left-0 w-0 h-0.5 bg-primary transition-all duration-300 group-hover:w-full"></span></a><a href="#experience" class="text-sm text-muted-foreground hover:text-foreground transition-colors relative group" style="opacity:0;transform:translateY(-10px)">Experience<span class="absolute -bottom-1 left-0 w-0 h-0.5 bg-primary transition-all duration-300 group-hover:w-full"></span></a><a href="#projects" class="text-sm text-muted-foreground hover:text-foreground transition-colors relative group" style="opacity:0;transform:translateY(-10px)">Projects<span class="absolute -bottom-1 left-0 w-0 h-0.5 bg-primary transition-all duration-300 group-hover:w-full"></span></a><a href="#blog" class="text-sm text-muted-foreground hover:text-foreground transition-colors relative group" style="opacity:0;transform:translateY(-10px)">Blog<span class="absolute -bottom-1 left-0 w-0 h-0.5 bg-primary transition-all duration-300 group-hover:w-full"></span></a><a href="#contact" class="text-sm text-muted-foreground hover:text-foreground transition-colors relative group" style="opacity:0;transform:translateY(-10px)">Contact<span class="absolute -bottom-1 left-0 w-0 h-0.5 bg-primary transition-all duration-300 group-hover:w-full"></span></a></div><button class="md:hidden p-2" aria-label="Open menu"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu w-5 h-5"><line x1="4" x2="20" y1="12" y2="12"></line><line x1="4" x2="20" y1="6" y2="6"></line><line x1="4" x2="20" y1="18" y2="18"></line></svg></button></div></nav></header><main class="min-h-screen"><section id="about" class="relative min-h-screen flex items-center justify-center overflow-hidden"><div class="absolute inset-0 -z-10"><div style="position:relative;width:100%;height:100%;overflow:hidden;pointer-events:auto;background:transparent"><div style="width:100%;height:100%"><canvas style="display:block"></canvas></div></div></div><div class="mx-auto max-w-6xl px-6 py-32"><div class="grid lg:grid-cols-2 gap-12 items-center"><div class="space-y-6" style="opacity:0;transform:translateY(20px)"><p class="text-primary font-mono text-sm" style="opacity:0">Hello, I'm</p><h1 class="text-4xl md:text-6xl lg:text-7xl font-bold text-foreground text-balance" style="opacity:0;transform:translateY(20px)">Abdulrahman<br/><span class="text-muted-foreground">Olalekan</span></h1><h2 class="text-xl md:text-2xl text-primary font-medium" style="opacity:0">Senior Fullstack Engineer</h2><p class="text-muted-foreground text-lg max-w-lg leading-relaxed" style="opacity:0">Fullstack Engineer experienced in building scalable web applications across fintech, healthtech, AI, and enterprise environments. Skilled in designing and developing frontend and backend systems using C#, ASP.NET Core, Entity Framework Core, SQL Server, PostgreSQL, React, Next.js, and TypeScript. Experienced in REST API development, authentication and authorization, database design, performance optimization, and modern web architectures. Proven ability to deliver end-to-e
1nd solutions from system design through deployment while collaborating effectively across engineering, product, and business teams.</p><div class="flex items-center gap-4 pt-4" style="opacity:0"><a href="https://github.com/rhammydev" target="_blank" rel="noopener noreferrer" class="p-3 rounded-lg border border-border hover:border-primary hover:text-primary transition-all duration-300" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-github w-5 h-5"><path d="M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4"></path><path d="M9 18c-4.51 2-5-2-7-2"></path></svg></a><a href="https://linkedin.com/in/olalekan-rahman" target="_blank" rel="noopener noreferrer" class="p-3 rounded-lg border border-border hover:border-primary hover:text-primary transition-all duration-300" aria-label="LinkedIn"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-linkedin w-5 h-5"><path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"></path><rect width="4" height="12" x="2" y="9"></rect><circle cx="4" cy="4" r="2"></circle></svg></a><a href="mailto:[email protected]" class="p-3 rounded-lg border border-border hover:border-primary hover:text-primary transition-all duration-300" aria-label="Email"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mail w-5 h-5"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg></a></div><div class="pt-6" style="opacity:0"><a href="#experience" class="inline-flex items-center gap-2 px-6 py-3 bg-primary text-primary-foreground rounded-lg font-medium hover:opacity-90 transition-opacity">View My Work<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-down w-4 h-4"><path d="M12 5v14"></path><path d="m19 12-7 7-7-7"></path></svg></a></div></div><div class="hidden lg:flex justify-center" style="opacity:0;transform:scale(0.8)"><div class="relative"><div class="absolute inset-0 bg-primary/20 blur-3xl rounded-full"></div><div class="relative w-80 h-80 rounded-full border border-border/50 flex items-center justify-center"><div class="w-64 h-64 rounded-full border border-primary/30 flex items-center justify-center"><div class="w-48 h-48 rounded-full bg-gradient-to-br from-primary/10 to-accent/10 flex items-center justify-center"></div></div></div></div></div></div></div><div class="absolute bottom-8 left-1/2 -translate-x-1/2" style="opacity:0"><a href="#skills" class="flex flex-col items-center gap-2 text-muted-foreground hover:text-foreground transition-colors"><span class="text-xs font-mono">Scroll</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-down w-4 h-4"><path d="M12 5v14"></path><path d="m19 12-7 7-7-7"></path></svg></a></div></section><section id="skills" class="py-24 bg-muted/30"><div class="mx-auto max-w-6xl px-6"><div class="mb-12" style="opacity:0;transform:translateY(20px)"><h2 class="text-3xl md:text-4xl font-bold text-foreground mb-4">Skills & Technologies</h2><p class="text-muted-foreground max-w-2xl">A comprehensive toolkit built over 5+ years of professional development, from frontend frameworks to blockchain technologies.</p></div><div class="grid md:grid-cols-2 lg:grid-cols-3 gap-6"><div class="p-6 rounded-xl bg-card border border-border hover:border-primary/50 transition-colors group" style="opacity:0;transform:translateY(30px)"><h3 class="text-lg font-semibold text-foreground mb-4 flex items-center gap-2"><span class="w-2 h-2 rounded-full bg-primary"></span>Backend</h3><div class="flex flex-wrap gap-2"><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">C#</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">ASP.NET Core</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Entity Framework Core</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Node.js</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Express.js</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">REST APIs</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Authentication (JWT/OAuth)</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">API Integration</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Real-time Data Handling</span></div></div><div class="p-6 rounded-xl bg-card border border-border hover:border-primary/50 transition-colors group" style="opacity:0;transform:translateY(30px)"><h3 class="text-lg font-semibold text-foreground mb-4 flex items-center gap-2"><span class="w-2 h-2 rounded-full bg-primary"></span>Core Frontend</h3><div class="flex flex-wrap gap-2"><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">React</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Next.js</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">TypeScript</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Redux Toolkit</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">React Query</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Zustand</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Tailwind CSS</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Styled Components</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Framer Motion</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">SSR/SSG</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Responsive UI</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Component Architecture</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Performance Optimization</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Accessibility (A11y)</span></div></div><div class="p-6 rounded-xl bg-card border border-border hover:border-primary/50 transition-colors group" style="opacity:0;transform:translateY(30px)"><h3 class="text-lg font-semibold text-foreground mb-4 flex items-center gap-2"><span class="w-2 h-2 rounded-full bg-primary"></span>Tools & Testing</h3><div class="flex flex-wrap gap-2"><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Git</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">GitHub</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Postman</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Swagger</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Figma</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Jest</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">React Testing Library</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Cypress</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">
1Docker</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">CI/CD (GitHub Actions)</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Agile/Scrum</span></div></div><div class="p-6 rounded-xl bg-card border border-border hover:border-primary/50 transition-colors group" style="opacity:0;transform:translateY(30px)"><h3 class="text-lg font-semibold text-foreground mb-4 flex items-center gap-2"><span class="w-2 h-2 rounded-full bg-primary"></span>Architecture & Performance</h3><div class="flex flex-wrap gap-2"><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Component Architecture</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Scalable Systems</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Performance Optimization</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Code Splitting</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Lazy Loading</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Accessibility (A11y)</span></div></div><div class="p-6 rounded-xl bg-card border border-border hover:border-primary/50 transition-colors group" style="opacity:0;transform:translateY(30px)"><h3 class="text-lg font-semibold text-foreground mb-4 flex items-center gap-2"><span class="w-2 h-2 rounded-full bg-primary"></span>Web3</h3><div class="flex flex-wrap gap-2"><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Solidity</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Hardhat</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Foundry</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Ethers.js</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Web3.js</span></div></div><div class="p-6 rounded-xl bg-card border border-border hover:border-primary/50 transition-colors group" style="opacity:0;transform:translateY(30px)"><h3 class="text-lg font-semibold text-foreground mb-4 flex items-center gap-2"><span class="w-2 h-2 rounded-full bg-primary"></span>Databases</h3><div class="flex flex-wrap gap-2"><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">SQL Server</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">MySQL</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">PostgreSQL</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">MongoDB</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Firebase</span><span class="px-3 py-1.5 text-sm bg-muted text-muted-foreground rounded-lg hover:bg-primary/10 hover:text-primary transition-colors cursor-default" style="opacity:0;transform:scale(0.8)">Supabase</span></div></div></div></div></section><section id="experience" class="py-24"><div class="mx-auto max-w-4xl px-6"><div class="mb-12"><h2 class="text-3xl md:text-4xl font-bold text-foreground mb-4">Experience</h2><p class="text-muted-foreground max-w-2xl">Loading experience...</p></div><div class="space-y-12"><div class="relative pl-8"><div class="absolute left-0 top-0 bottom-0 w-px bg-border"><div class="absolute top-0 left-1/2 -translate-x-1/2 w-3 h-3 rounded-full bg-primary border-4 border-background"></div></div><div class="space-y-4"><div class="animate-pulse rounded-md bg-muted h-4 w-32"></div><div class="animate-pulse rounded-md bg-muted h-6 w-48"></div><div class="animate-pulse rounded-md bg-muted h-5 w-40"></div><div class="space-y-2"><div class="animate-pulse rounded-md bg-muted h-4 w-full"></div><div class="animate-pulse rounded-md bg-muted h-4 w-full"></div><div class="animate-pulse rounded-md bg-muted h-4 w-3/4"></div></div></div></div><div class="relative pl-8"><div class="absolute left-0 top-0 bottom-0 w-px bg-border"><div class="absolute top-0 left-1/2 -translate-x-1/2 w-3 h-3 rounded-full bg-primary border-4 border-background"></div></div><div class="space-y-4"><div class="animate-pulse rounded-md bg-muted h-4 w-32"></div><div class="animate-pulse rounded-md bg-muted h-6 w-48"></div><div class="animate-pulse rounded-md bg-muted h-5 w-40"></div><div class="space-y-2"><div class="animate-pulse rounded-md bg-muted h-4 w-full"></div><div class="animate-pulse rounded-md bg-muted h-4 w-full"></div><div class="animate-pulse rounded-md bg-muted h-4 w-3/4"></div></div></div></div><div class="relative pl-8"><div class="absolute left-0 top-0 bottom-0 w-px bg-border"><div class="absolute top-0 left-1/2 -translate-x-1/2 w-3 h-3 rounded-full bg-primary border-4 border-background"></div></div><div class="space-y-4"><div class="animate-pulse rounded-md bg-muted h-4 w-32"></div><div class="animate-pulse rounded-md bg-muted h-6 w-48"></div><div class="animate-pulse rounded-md bg-muted h-5 w-40"></div><div class="space-y-2"><div class="animate-pulse rounded-md bg-muted h-4 w-full"></div><div class="animate-pulse rounded-md bg-muted h-4 w-full"></div><div class="animate-pulse rounded-md bg-muted h-4 w-3/4"></div></div></div></div></div></div></section><section id="projects" class="py-24 bg-muted/30"><div class="mx-auto max-w-6xl px-6"><div class="mb-12"><h2 class="text-3xl md:text-4xl font-bold text-foreground mb-4">Featured Projects</h2><p class="text-muted-foreground max-w-2xl">Loading projects...</p></div><div class="grid md:grid-cols-2 lg:grid-cols-3 gap-6 mb-16"><div class="rounded-xl overflow-hidden bg-card border border-border h-[400px]"><div class="animate-pulse rounded-md bg-muted h-48 w-full"></div><div class="p-6 space-y-4"><div class="animate-pulse rounded-md bg-muted h-6 w-3/4"></div><div class="animate-pulse rounded-md bg-muted h-20 w-full"></div><div class="flex gap-2"><div class="animate-pulse rounded-md bg-muted h-5 w-16"></div><div class="animate-pulse rounded-md bg-muted h-5 w-16"></div><div class="animate-pulse rounded-md bg-muted h-5 w-16"></div></div></div></div><div class="rounded-xl overflow-hidden bg-card border border-border h-[400px]"><div class="animate-pulse rounded-md bg-muted h-48 w-full"></div><div class="p-6 space-y-4"><div class="animate-pulse rounded-md bg-muted h-6 w-3/4"></div><div class="animate-pulse rounded-md bg-muted h-20 w-full"></div><div class="flex gap-2"><div class="animate-pulse rounded-md bg-muted h-5 w-16"></div><div class="animate-pulse rounded-md bg-muted h-5 w-16"></div><div class="animate-pulse rounded-md bg-muted h-5 w-16"></div></div></div></div><div class="rounded-xl overflow-hidden bg-card border border-border h-[400px]"><div class="animate-pulse rounded-md bg-muted h-48 w-full"></div><div class="p-6 space-y-4"><div class="animate-pulse rounded-md bg-muted h-6 w-3/4"></div><div class="animate-pulse rounded-md bg-muted h-20 w-full"></div><div class="flex gap-2"><div class="animate-pulse rounded-md bg-muted h-5 w-16"></div><div class="animate-pulse rounded-md bg-muted h-5 w-16"></div><div class="animate-pulse rounded-md bg-muted h-5 w-16"></div></div></div></div></div></div></section><section id="blog" class="py-24"><div class="mx-auto max-w-6xl px-6"><div class="mb-12" style="opacity:0;transform:translateY(20px)"><h2 class="text-3xl md:text-4xl font-bold text-foreground mb-4">Insights & Articles</h2><p class="text-muted-foreground max-w-2xl">Thoughts on software development, web technologies, and lessons learned from building applications at scale.</p></div><div class="grid md:grid-cols-2 lg:grid-cols-3 gap-6"><article class="group p-6 rounded-xl bg-card border border-border hover:border-primary/50 transition-all duration-300" style="opacity:0;transform:translateY(30px)"><div class="flex items-center gap-4 text-sm text-muted-foreground mb-4"><span class="flex items-center gap-1"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-calendar w-4 h-4"><path d="M8 2v4"></path><path d="M16 2v4"></path><rect width="18" height="18" x="3" y="4" rx="2"></rect><path d="M3 10h18"></path></svg>January 2022</span><span>4 min read</span></div><h3 class="text-xl font-semibold text-foreground mb-3 group-hover:text-primary transition-colors">Path Aliases in Next.js</h3><p class="text-muted-foreground text-sm mb-4 leading-relaxed">Typing paths is time-consuming and error-prone and it can be complicated at times. Even with code completion capabilities like IntelliSense </p><div class="flex flex-wrap gap-2 mb-4"><span class="px-2.5 py-1 text-xs font-mono bg-primary/10 text-primary rounded">Next.js</span><span class="px-2.5 py-1 text-xs font-mono bg-primary/10 text-primary rounded">TypeScript</span><span class="px-2.5 py-1 text-xs font-mono bg-primary/10 text-primary rounded">Architecture</span></div><a href="https://dev.to/rhammy/path-aliases-in-nextjs-2fnc" target="_blank" class="inline-flex items-center gap-2 text-sm text-primary hover:gap-3 transition-all">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right w-4 h-4"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></article></div></div></section><section id="contact" class="py-24 bg-muted/30"><div class="mx-auto max-w-6xl px-6"><div class="text-center mb-12" style="opacity:0;transform:translateY(20px)"><h2 class="text-3xl md:text-4xl font-bold text-foreground mb-4">Get In Touch</h2><p class="text-muted-foreground max-w-2xl mx-auto">I'm currently open to new opportunities. Whether you have a question or just want to say hi, I'll try my best to get back to you!</p></div><div class="grid lg:grid-cols-2 gap-12"><div class="space-y-8" style="opacity:0;transform:translateX(-30px)"><div><h3 class="text-xl font-semibold text-foreground mb-6">Contact Information</h3><div class="space-y-4">
1<a href="mailto:[email protected]" class="flex items-center gap-4 text-muted-foreground hover:text-foreground transition-colors group"><span class="p-3 rounded-lg bg-card border border-border group-hover:border-primary transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mail w-5 h-5"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg></span><span>[email protected]</span></a><a href="tel:+2347037365494" class="flex items-center gap-4 text-muted-foreground hover:text-foreground transition-colors group"><span class="p-3 rounded-lg bg-card border border-border group-hover:border-primary transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-phone w-5 h-5"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg></span><span>+234 703 736 5494</span></a><div class="flex items-center gap-4 text-muted-foreground"><span class="p-3 rounded-lg bg-card border border-border"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin w-5 h-5"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span>Lagos, Nigeria</span></div></div></div><div><h3 class="text-xl font-semibold text-foreground mb-6">Connect With Me</h3><div class="flex items-center gap-4"><a href="https://linkedin.com/in/olalekan-rahman" target="_blank" rel="noopener noreferrer" class="p-3 rounded-lg bg-card border border-border hover:border-primary hover:text-primary transition-colors" aria-label="LinkedIn"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-linkedin w-5 h-5"><path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"></path><rect width="4" height="12" x="2" y="9"></rect><circle cx="4" cy="4" r="2"></circle></svg></a><a href="https://github.com/rhammydev" target="_blank" rel="noopener noreferrer" class="p-3 rounded-lg bg-card border border-border hover:border-primary hover:text-primary transition-colors" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-github w-5 h-5"><path d="M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4"></path><path d="M9 18c-4.51 2-5-2-7-2"></path></svg></a></div></div></div><form class="space-y-6" style="opacity:0;transform:translateX(30px)"><div><label for="name" class="block text-sm font-medium text-foreground mb-2">Name</label><input type="text" id="name" class="w-full px-4 py-3 rounded-lg bg-card border border-border focus:border-primary focus:ring-1 focus:ring-primary outline-none transition-colors text-foreground" placeholder="Your name" required="" value=""/></div><div><label for="email" class="block text-sm font-medium text-foreground mb-2">Email</label><input type="email" id="email" class="w-full px-4 py-3 rounded-lg bg-card border border-border focus:border-primary focus:ring-1 focus:ring-primary outline-none transition-colors text-foreground" placeholder="[email protected]" required="" value=""/></div><div><label for="message" class="block text-sm font-medium text-foreground mb-2">Message</label><textarea id="message" rows="5" class="w-full px-4 py-3 rounded-lg bg-card border border-border focus:border-primary focus:ring-1 focus:ring-primary outline-none transition-colors resize-none text-foreground" placeholder="Your message..." required=""></textarea></div><button type="submit" class="w-full flex items-center justify-center gap-2 px-6 py-3 bg-primary text-primary-foreground rounded-lg font-medium hover:opacity-90 transition-opacity disabled:opacity-50 disabled:cursor-not-allowed">Send Message<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-send w-4 h-4"><path d="M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z"></path><path d="m21.854 2.147-10.94 10.939"></path></svg></button></form></div></div></section><footer class="py-12 border-t border-border"><div class="mx-auto max-w-6xl px-6"><div class="flex flex-col md:flex-row items-center justify-between gap-6" style="opacity:0"><div class="flex items-center gap-2 text-muted-foreground text-sm"><span>Built by</span><span class="text-primary text-md font-bold">RhammyDev</span></div><div class="flex items-center gap-6"><a href="https://github.com/rhammydev" target="_blank" rel="noopener noreferrer" class="text-muted-foreground hover:text-foreground transition-colors" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-github w-5 h-5"><path d="M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4"></path><path d="M9 18c-4.51 2-5-2-7-2"></path></svg></a><a href="https://linkedin.com/in/olalekan-rahman" target="_blank" rel="noopener noreferrer" class="text-muted-foreground hover:text-foreground transition-colors" aria-label="LinkedIn"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-linkedin w-5 h-5"><path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"></path><rect width="4" height="12" x="2" y="9"></rect><circle cx="4" cy="4" r="2"></circle></svg></a>
1<a href="mailto:[email protected]" class="text-muted-foreground hover:text-foreground transition-colors" aria-label="Email"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mail w-5 h-5"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg></a></div><p class="text-muted-foreground text-sm">© <!-- -->2026<!-- --> All rights reserved.</p></div></div></footer></main><!--$--><!--/$--><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section>
1<script src="/_next/static/chunks/2adcdfc2be38354f.js" id="_R_" async=""></script>
1<script>(self.__next_f=self.__next_f||[]).push([0])</script>
1<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[89554,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/cbf337c1e05e890e.js\",\"/_next/static/chunks/98899bc0c48e97ac.js\"],\"ThemeProvider\"]\n3:I[43328,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/cbf337c1e05e890e.js\",\"/_next/static/chunks/98899bc0c48e97ac.js\"],\"default\"]\n4:I[63780,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/cbf337c1e05e890e.js\",\"/_next/static/chunks/98899bc0c48e97ac.js\"],\"Navbar\"]\n5:I[95950,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/3083b559c323b742.js\"],\"default\"]\n6:I[61824,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/3083b559c323b742.js\"],\"default\"]\n7:I[57633,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/cbf337c1e05e890e.js\",\"/_next/static/chunks/98899bc0c48e97ac.js\"],\"Analytics\"]\n8:I[22036,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/cbf337c1e05e890e.js\",\"/_next/static/chunks/98899bc0c48e97ac.js\"],\"Toaster\"]\n9:I[98924,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/cbf337c1e05e890e.js\",\"/_next/static/chunks/98899bc0c48e97ac.js\",\"/_next/static/chunks/82826d04ef7b5e72.js\"],\"HeroSection\"]\na:I[22078,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/cbf337c1e05e890e.js\",\"/_next/static/chunks/98899bc0c48e97ac.js\",\"/_next/static/chunks/82826d04ef7b5e72.js\"],\"SkillsSection\"]\nb:I[37175,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/cbf337c1e05e890e.js\",\"/_next/static/chunks/98899bc0c48e97ac.js\",\"/_next/static/chunks/82826d04ef7b5e72.js\"],\"ExperienceSection\"]\nc:I[14400,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/cbf337c1e05e890e.js\",\"/_next/static/chunks/98899bc0c48e97ac.js\",\"/_next/static/chunks/82826d04ef7b5e72.js\"],\"ProjectsSection\"]\nd:I[54953,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/cbf337c1e05e890e.js\",\"/_next/static/chunks/98899bc0c48e97ac.js\",\"/_next/static/chunks/82826d04ef7b5e72.js\"],\"BlogSection\"]\ne:I[9785,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/cbf337c1e05e890e.js\",\"/_next/static/chunks/98899bc0c48e97ac.js\",\"/_next/static/chunks/82826d04ef7b5e72.js\"],\"ContactSection\"]\nf:I[76841,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/cbf337c1e05e890e.js\",\"/_next/static/chunks/98899bc0c48e97ac.js\",\"/_next/static/chunks/82826d04ef7b5e72.js\"],\"Footer\"]\n10:I[68370,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/3083b559c323b742.js\"],\"OutletBoundary\"]\n11:\"$Sreact.suspense\"\n13:I[68370,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/3083b559c323b742.js\"],\"ViewportBoundary\"]\n15:I[68370,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/3083b559c323b742.js\"],\"MetadataBoundary\"]\n17:I[59651,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/3083b559c323b742.js\"],\"default\"]\n:HL[\"/_next/static/chunks/d67c2c17d567b625.css\",\"style\"]\n"])</script>
1<script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"yxySdhCMJGbkdETfA1O5p\",\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/d67c2c17d567b625.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/8dc433defdcc06a4.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/cbf337c1e05e890e.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/98899bc0c48e97ac.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"font-sans antialiased\",\"children\":[[\"$\",\"$L2\",null,{\"attribute\":\"class\",\"defaultTheme\":\"dark\",\"enableSystem\":true,\"disableTransitionOnChange\":true,\"children\":[\"$\",\"$L3\",null,{\"children\":[[\"$\",\"$L4\",null,{}],[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]}],[\"$\",\"$L7\",null,{}],[\"$\",\"$L8\",null,{}]]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"main\",null,{\"className\":\"min-h-screen\",\"children\":[[\"$\",\"$L9\",null,{}],[\"$\",\"$La\",null,{}],[\"$\",\"$Lb\",null,{}],[\"$\",\"$Lc\",null,{}],[\"$\",\"$Ld\",null,{}],[\"$\",\"$Le\",null,{}],[\"$\",\"$Lf\",null,{}]]}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/82826d04ef7b5e72.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L10\",null,{\"children\":[\"$\",\"$11\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@12\"}]}]]}],{},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L13\",null,{\"children\":\"$@14\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L15\",null,{\"children\":[\"$\",\"$11\",null,{\"name\":\"Next.Metadata\",\"children\":\"$@16\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$17\",[]],\"S\":true}\n"])</script>
1<script>self.__next_f.push([1,"14:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script>
1<script>self.__next_f.push([1,"18:I[51907,[\"/_next/static/chunks/8dc433defdcc06a4.js\",\"/_next/static/chunks/3083b559c323b742.js\"],\"IconMark\"]\n"])</script>
1<script>self.__next_f.push([1,"16:[[\"$\",\"title\",\"0\",{\"children\":\"Abdulrahman Olalekan | Senior Software Engineer\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Senior Software Engineer with years of experience building scalable web and mobile applications. Specializing in React, TypeScript, and modern frontend architectures.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"author\",\"content\":\"Abdulrahman Olalekan\"}],[\"$\",\"meta\",\"3\",{\"name\":\"generator\",\"content\":\"rhammy.web.app\"}],[\"$\",\"meta\",\"4\",{\"name\":\"keywords\",\"content\":\"Frontend Engineer,React Developer,C#,DotNet,NodeJs,TypeScript,Next.js,Web3,Nigeria\"}],[\"$\",\"meta\",\"5\",{\"name\":\"creator\",\"content\":\"Abdulrahman Olalekan\"}],[\"$\",\"meta\",\"6\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:title\",\"content\":\"Abdulrahman Olalekan | Senior Software Engineer\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:description\",\"content\":\"Senior Software Engineer with 5 years of experience building scalable web and mobile applications.\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:url\",\"content\":\"https://rhammy.web.app\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:site_name\",\"content\":\"Abdulrahman Olalekan Portfolio\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:creator\",\"content\":\"@olalekanrahman\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:title\",\"content\":\"Abdulrahman Olalekan | Senior Software Engineer\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:description\",\"content\":\"Senior Software Engineer with 5 years of experience building scalable web and mobile applications.\"}],[\"$\",\"link\",\"17\",{\"rel\":\"icon\",\"href\":\"/icon-light-32x32.png\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/icon-dark-32x32.png\",\"media\":\"(prefers-color-scheme: dark)\"}],[\"$\",\"link\",\"19\",{\"rel\":\"icon\",\"href\":\"/rhammy_icon.png\",\"type\":\"image/png\"}],[\"$\",\"link\",\"20\",{\"rel\":\"apple-touch-icon\",\"href\":\"/rhammy_icon.png\"}],[\"$\",\"$L18\",\"21\",{}]]\n"])</script>
1<script>self.__next_f.push([1,"12:null\n"])</script>
1</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.