1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/assets/nl-logo-C8hQLzZX.png"/><link rel="preload" as="image" href="/assets/hero-texture-Dbh4xqUR.jpg" fetchPriority="high"/><link rel="preload" as="image" href="/__l5e/assets-v1/4338f152-9d0f-4631-9b0c-5c69911cdb9e/noah-portrait-sq.jpg"/><link rel="stylesheet" href="/assets/styles-ClTsdCs9.css" data-precedence="default"/><title>Noah Labhart â Startup Founder, CTO & Podcast Host</title><meta name="author" content="Noah Labhart"/><meta name="google-site-verification" content="9N1k6doRpBvoI4yHSPpMwHJ1NytaEJrc2PY3XBIVXRs"/><meta property="og:type" content="website"/><meta property="og:site_name" content="Noah Labhart"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="Noah Labhart"/><meta name="twitter:description" content="Noah's Digital Haven is a personalized website showcasing tech entrepreneur No
1ah Labhart's professional journey."/><meta property="og:image" content="https://storage.googleapis.com/gpt-engineer-file-uploads/2BeHbSdknKbe1ifsbTP2Dc7CPd23/social-images/social-1785441754448-13-D71D0B8E-2ABC-4ACA-94DC-FF0ACFB93901_1_201_a.webp"/><meta name="twitter:image" content="https://storage.googleapis.com/gpt-engineer-file-uploads/2BeHbSdknKbe1ifsbTP2Dc7CPd23/social-images/social-1785441754448-13-D71D0B8E-2ABC-4ACA-94DC-FF0ACFB93901_1_201_a.webp"/><meta name="description" content="Noah Labhart is Co-Founder & CTO of Veryable and host of Code Story. Software architect, entrepreneur, husband, father, Jesus follower."/><meta property="og:title" content="Noah Labhart â Startup Founder, CTO & Podcast Host"/><meta property="og:description" content="Noah Labhart is Co-Founder & CTO of Veryable and host of Code Story. Software architect, entrepreneur, husband, father, Jesus follower."/><meta property="og:url" content="/"/><link rel="modulepreload" href="/assets/index-CIhN9yUf.js"/><link rel="modulepreload" href="/assets/jsx-runtime-DGeXAQPT.js"/><link rel="modulepreload" href="/assets/link-DfXvwZHU.js"/><link rel="modulepreload" href="/assets/react-vt4WmSOl.js"/><link rel="modulepreload" href="/assets/routes-gsXDvKL_.js"/><link rel="modulepreload" href="/assets/LazyImage-BTCDXO_6.js"/><link rel="modulepreload" href="/assets/Section-uqbsMFz3.js"/><link rel="canonical" href="/"/><link rel="preload" as="image" href="/assets/hero-texture-Dbh4xqUR.jpg" fetchPriority="high"/>
1<script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"Person","@id":"https://noahlabhart.com/#person","name":"Noah Labhart","givenName":"Noah","familyName":"Labhart","jobTitle":"Co-Founder & Chief Technology Officer","description":"Software architect, startup CTO and host of the Code Story podcast. Co-founder and CTO of Veryable.","url":"https://noahlabhart.com/","image":"https://storage.googleapis.com/gpt-engineer-file-uploads/2BeHbSdknKbe1ifsbTP2Dc7CPd23/social-images/social-1785441754448-13-D71D0B8E-2ABC-4ACA-94DC-FF0ACFB93901_1_201_a.webp","knowsAbout":["Software Architecture","Startup Leadership","iOS Development","Engineering Management","Product Development"],"worksFor":{"@id":"https://veryableops.com/#organization"},"affiliation":{"@id":"https://codestory.co/#organization"},"mainEntityOfPage":"https://noahlabhart.com/","sameAs":["https://www.linkedin.com/in/noahlabhart","https://codestory.co/","https://indiehackers.com/nlabhart/","https://veryableops.com/","https://github.com/nlabhart","https://podcasts.apple.com/us/podcast/id1466861744","https://open.spotify.com/show/0f5HGQ2EPd63H83gqAifXp","https://www.youtube.com/@codestorypodcast"]},{"@type":"Organization","@id":"https://veryableops.com/#organization","name":"Veryable","url":"https://veryableops.com/","description":"A marketplace of on-demand labor for manufacturing and warehouse work.","founder":{"@id":"https://noahlabhart.com/#person"}},{"@type":"Organization","@id":"https://codestory.co/#organization","name":"Code Story","url":"https://codestory.co/","description":"A podcast featuring startup founders and technology leaders sharing how they built their companies.","founder":{"@id":"https://noahlabhart.com/#person"},"sameAs":["https://podcasts.apple.com/us/podcast/id1466861744","https://open.spotify.com/show/0f5HGQ2EPd63H83gqAifXp","https://www.youtube.com/@codestorypodcast","https://www.linkedin.com/company/code-story"]},{"@type":"PodcastSeries","@id":"https://codestory.co/#podcast","name":"Code Story","url":"https://codestory.co/","description":"A periodic window into the startup world, where founders and technical leaders share how they built their companies.","author":{"@id":"https://noahlabhart.com/#person"},"publisher":{"@id":"https://codestory.co/#organization"},"webFeed":"https://feeds.redcircle.com/ac5e79a4-0405-49a3-af2c-02c37f0b3879","sameAs":["https://podcasts.apple.com/us/podcast/id1466861744","https://open.spotify.com/show/0f5HGQ2EPd63H83gqAifXp","https://www.youtube.com/@codestorypodcast"]},{"@type":"WebSite","@id":"https://noahlabhart.com/#website","url":"https://noahlabhart.com/","name":"Noah Labhart","inLanguage":"en-US","publisher":{"@id":"https://noahlabhart.com/#person"},"about":{"@id":"https://noahlabhart.com/#person"}}]}</script>
1 2<style> 3 #lovable-badge { 4 --badge-bg: #1b1b1b; 5 --badge-text: #c5c1b9; 6 --badge-text-hover: #dcdad5; 7 --badge-radius: 6px; 8 --badge-padding: 8px; 9 --badge-gap: 6px; 10 --badge-shadow: 11 0 0 0 1px rgba(0, 0, 0, 0.88), 12 0 1px 0 0 rgba(0, 0, 0, 0.04), 13 0 2px 2px -1px rgba(0, 0, 0, 0.08), 14 0 4px 4px -2px rgba(0, 0, 0, 0.08), 15 0 8px 8px -4px rgba(0, 0, 0, 0.08), 16 0 16px 16px -8px rgba(0, 0, 0, 0.08); 17 --badge-transition-duration: 0.2s; 18 --badge-transition-easing: cubic-bezier(0.16, 1, 0.32, 1); 19 --focus-color: #575ECF; 20 --focus-offset: 2px; 21 --focus-width: 2px; 22 23 position: fixed; 24 bottom: 12px; 25 right: 12px; 26 height: 24px; 27 display: flex; 28 align-items: center; 29 z-index: 1000000; 30 background-color: var(--badge-bg) !important; 31 color: var(--badge-text) !important; 32 border-radius: var(--badge-radius); 33 box-shadow: var(--badge-shadow) !important; 34 font-size: 12px; 35 font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; 36 font-weight: 400 !important; 37 text-transform: none !important; 38 font-feature-settings: normal !important; 39 transform: translateZ(0); 40 will-change: transform, opacity; 41 transition: opacity var(--badge-transition-duration) var(--badge-transition-easing); 42 } 43 44 #lovable-badge.closing { 45 opacity: 0; 46 pointer-events: none; 47 } 48 49 #lovable-badge-cta { 50 display: flex; 51 align-items: baseline; 52 gap: var(--badge-gap); 53 box-sizing: border-box; 54 padding: 4px var(--badge-padding) 0; 55 height: 100%; 56 color: inherit; 57 text-decoration: none; 58 white-space: nowrap; 59 border-radius: var(--badge-radius) 0 0 var(--badge-radius); 60 transition: 61 background-color var(--badge-transition-duration) ease, 62 color var(--badge-transition-duration) ease, 63 transform 0.1s ease; 64 } 65 66 #lovable-badge-cta:hover { 67 background: rgba(255, 255, 255, 0.04); 68 color: var(--badge-text-hover); 69 } 70 71 #lovable-badge-cta:active { 72 transform: scale(0.98); 73 } 74 75 #lovable-badge-cta:focus { 76 outline: none; 77 } 78 79 #lovable-badge-cta:focus-visible { 80 outline: var(--focus-width) solid var(--focus-color); 81 outline-offset: var(--focus-offset); 82 z-index: 1; 83 } 84 85 #lovable-badge-text { 86 line-height: 1; 87 } 88 89 /* The wordmark baseline sits at y=12 of the 16px logo; an empty 12px box 90 makes that the flex baseline so the text aligns to it on any system font. */ 91 #lovable-badge-logo { 92 position: relative; 93 display: block; 94 width: 52px; 95 height: 12px; 96 } 97 98 #lovable-badge-logo svg { 99 position: absolute; 100 top: 0; 101 left: 0; 102 } 103 104 #lovable-badge-divider { 105 width: 1px; 106 height: 24px; 107 background-color: rgba(255, 255, 255, 0.04); 108 flex-shrink: 0; 109 } 110 111 #lovable-badge-close { 112 width: 24px; 113 height: 24px; 114 min-width: 24px; 115 min-height: 24px; 116 cursor: pointer; 117 background: none; 118 border: none; 119 padding: 0; 120 display: flex; 121 align-items: center; 122 justify-content: center; 123 border-radius: 0 var(--badge-radius) var(--badge-radius) 0; 124 flex-shrink: 0; 125 transition: 126 background-color var(--badge-transition-duration) ease, 127 transform 0.1s ease; 128 } 129 130 #lovable-badge-close:hover { 131 background: rgba(255, 255, 255, 0.04); 132 } 133 134 #lovable-badge-close:active { 135 transform: scale(0.92); 136 } 137 138 #lovable-badge-close:focus { 139 outline: none; 140 } 141 142 #lovable-badge-close:focus-visible { 143 outline: var(--focus-width) solid var(--focus-color); 144 outline-offset: calc(var(--focus-offset) * -1); 145 z-index: 1; 146 } 147 148 #lovable-badge-close svg path { 149 fill: var(--badge-text); 150 transition: fill var(--badge-transition-duration) ease; 151 } 152 153 #lovable-badge-close:hover svg path { 154 fill: var(--badge-text-hover); 155 } 156 157 @media (prefers-reduced-motion: reduce) { 158 #lovable-badge, 159 #lovable-badge-cta, 160 #lovable-badge-close, 161 #lovable-badge-close svg path { 162 transition: none; 163 } 164 165 #lovable-badge-cta:active, 166 #lovable-badge-close:active { 167 transform: none; 168 } 169 } 170 171 @media (prefers-contrast: high) { 172 #lovable-badge { 173 --badge-bg: #000; 174 --badge-text: #fff; 175 --badge-text-hover: #fff; 176 border: 2px solid currentColor; 177 } 178 179 #lovable-badge-cta:focus-visible, 180 #lovable-badge-close:focus-visible { 181 outline-width: 3px; 182 } 183 } 184</style>
185<script defer src="/~flock.js" data-proxy-url="/~api/analytics"></script>
185</head><body><div class="flex min-h-screen flex-col"><header class="sticky top-0 z-50 border-b border-border/60 bg-background/80 backdrop-blur-xl"><div class="mx-auto flex max-w-6xl items-center justify-between px-6 py-4"><a class="flex items-center gap-3 font-display text-lg font-bold tracking-tight active" href="/" data-status="active" aria-current="page"><img src="/assets/nl-logo-C8hQLzZX.png" alt="Noah Labhart logo" width="32" height="32" class="h-8 w-8 rounded-md"/>Noah<span class="text-primary"> </span>Labhart</a><nav class="hidden items-center gap-7 md:flex"><a class="text-sm text-muted-foreground transition-colors hover:text-foreground text-foreground" href="/" data-status="active" aria-current="page">Home</a><a href="/about" class="text-sm text-muted-foreground transition-colors hover:text-foreground">About</a><a href="/work" class="text-sm text-muted-foreground transition-colors hover:text-foreground">Work</a><a href="/podcast" class="text-sm text-muted-foreground transition-colors hover:text-foreground">Podcast</a><a href="/media" class="text-sm text-muted-foreground transition-colors hover:text-foreground">Media</a><a href="/testimonials" class="text-sm text-muted-foreground transition-colors hover:text-foreground">Praise</a><a href="/contact" class="text-sm text-muted-foreground transition-colors hover:text-foreground">Contact</a><div class="relative"><a aria-haspopup="true" aria-expanded="false" href="/guides" class="flex items-center gap-1 text-sm text-muted-foreground transition-colors hover:text-foreground">Guides<span aria-hidden="true" class="text-[0.6rem]">â¼</span></a></div></nav><button type="button" aria-label="Toggle navigation" class="rounded-md border border-border px-3 py-1.5 text-sm md:hidden">Menu</button></div></header><main class="flex-1"><!--$--><section class="relative overflow-hidden border-b border-border/60"><img src="/assets/hero-texture-Dbh4xqUR.jpg" alt="" aria-hidden="true" fetchPriority="high" decoding="async" width="1920" height="1080" class="absolute inset-0 h-full w-full object-cover opacity-70"/><div class="absolute inset-0 bg-gradient-to-tr from-background via-background/85 to-background/40"></div><div class="relative mx-auto grid max-w-6xl items-center gap-12 px-6 py-28 sm:py-36 lg:grid-cols-[1.3fr_1fr]"><div><p class="eyebrow">DallasâFort Worth, Texas</p><h1 class="mt-5 max-w-3xl text-5xl font-bold leading-[1.05] sm:text-7xl">Noah Labhart<!-- --> â Startup Founder & CTO</h1><p class="mt-6 max-w-xl text-lg text-muted-foreground sm:text-xl italic">"For the Spirit God gave us does not make us timid, but gives us power, love and self-discipline." â 2 Timothy 1:7</p><p class="mt-3 max-w-xl text-lg text-muted-foreground sm:text-xl">Software Architect, Podcast Host, Husband, Father, Outdoorsmen. Jesus Follower.</p><div class="mt-10 flex flex-wrap gap-3"><a href="/about" class="rounded-full bg-primary px-6 py-3 text-sm font-medium text-primary-foreground transition-opacity hover:opacity-90">Read full bio</a><a href="https://codestory.co" target="_blank" rel="noreferrer" class="rounded-full border border-border px-6 py-3 text-sm font-medium transition-colors hover:border-primary hover:text-primary">Listen to Code Story</a></div><div class="mt-16 flex flex-wrap gap-x-8 gap-y-3 text-sm text-muted-foreground"><span class="font-display uppercase tracking-widest">Startup Founder</span><span class="font-display uppercase tracking-widest">CTO</span><span class="font-display uppercase tracking-widest">Podcast Host</span><span class="font-display uppercase tracking-widest">Software Architect</span></div></div><img src="/__l5e/assets-v1/4338f152-9d0f-4631-9b0c-5c69911cdb9e/noah-portrait-sq.jpg" alt="Portrait of Noah Labhart" width="1920" height="1800" class="mx-auto w-64 rounded-2xl border border-border object-cover shadow-[var(--shadow-ember)] lg:w-full lg:max-w-sm"/></div></section><section class="mx-auto w-full max-w-6xl px-6 py-20 "><p class="eyebrow">About me</p><h2 class="mt-3 text-3xl font-bold sm:text-4xl">Building things that impact people's lives</h2><div class="mt-10"><div class="grid gap-8 md:grid-cols-2"><p class="text-lg leading-relaxed text-muted-foreground">I'm passionate about solution architecture. I've held several leadership roles, and gained valuable insights in how to deliver world class software. The sweet spot for me is creating solutions that impact peoples lives, and doing so by applying elegant dev practices, methodologies and building world class teams.</p><p class="text-lg leading-relaxed text-muted-foreground">When I'm not being a geek or reading old calculus books, I can be found chasing after my beautiful bride, being chased by my kids, enjoying a good cup o' joe, playing my guitar(s) or being outdoors.</p></div></div></section><section class="mx-auto w-full max-w-6xl px-6 py-20 "><p class="eyebrow">Current work</p><h2 class="mt-3 text-3xl font-bold sm:text-4xl">Where I spend my days</h2><div class="mt-10"><div class="grid gap-6 md:grid-cols-2"><article class="rounded-2xl border border-border bg-card p-8 shadow-[var(--shadow-ember)]"><img alt="Veryable logo" loading="lazy" decoding="async" fetchPriority="low" class="mb-5 h-14 w-14 roun
185ded-xl border border-border object-cover" width="56" height="56"/><noscript><img src="/assets/veryable-J1GUDeR5.png" alt="Veryable logo" loading="lazy" decoding="async" class="mb-5 h-14 w-14 rounded-xl border border-border object-cover"/></noscript><p class="eyebrow">2016 â Present</p><h3 class="mt-3 text-2xl font-bold">Veryable</h3><p class="mt-1 text-sm text-primary">Co-Founder, CTO</p><p class="mt-4 text-sm leading-relaxed text-muted-foreground">Veryable is a marketplace of on-demand labor for manufacturing and warehouse work, which provides businesses with higher productivity and fewer administrative burdens and workers with flexible work arrangements â the ability to choose where to work, how much, and when.</p></article><article class="rounded-2xl border border-border bg-card p-8 shadow-[var(--shadow-ember)]"><img alt="Code Story logo" loading="lazy" decoding="async" fetchPriority="low" class="mb-5 h-14 w-14 rounded-xl border border-border object-cover" width="56" height="56"/><noscript><img src="/assets/codestory-UJu6DrtP.jpg" alt="Code Story logo" loading="lazy" decoding="async" class="mb-5 h-14 w-14 rounded-xl border border-border object-cover"/></noscript><p class="eyebrow">2019 â Present</p><h3 class="mt-3 text-2xl font-bold">Code Story</h3><p class="mt-1 text-sm text-primary">Podcast Host & Producer</p><p class="mt-4 text-sm leading-relaxed text-muted-foreground">Code Story is a periodic window into the startup world. In their own words, veterans share what it feels like to disrupt an industry, how to recover from critical mistakes, and what it takes to build â and lead â a team that has your back.</p></article></div><div class="mt-8"><a href="/work" class="text-sm text-primary hover:underline">See the full resume â</a></div></div></section><section class="mx-auto w-full max-w-6xl px-6 py-20 "><p class="eyebrow">Media</p><h2 class="mt-3 text-3xl font-bold sm:text-4xl">Recent appearances</h2><div class="mt-10"><ul class="divide-y divide-border border-y border-border"><li><a href="https://noahlabhart.com/podcast/interview-on-podcast-junkies/" target="_blank" rel="noreferrer" class="flex flex-wrap items-center justify-between gap-3 py-5 transition-colors hover:text-primary"><span class="flex items-center gap-4"><img alt="" loading="lazy" decoding="async" fetchPriority="low" class="h-12 w-12 rounded-lg bg-background object-cover" aria-hidden="true" width="48" height="48"/><noscript><img src="/assets/m-podcast-junkies-CdLifRGo.jpg" alt="" loading="lazy" decoding="async" class="h-12 w-12 rounded-lg bg-background object-cover"/></noscript><span class="font-display text-lg">Interview on Podcast Junkies</span></span><span class="text-xs uppercase tracking-widest text-muted-foreground">Podcast<!-- --> · <!-- -->May 2020</span></a></li><li><a href="https://noahlabhart.com/podcast/manufacturing-happy-hour/" target="_blank" rel="noreferrer" class="flex flex-wrap items-center justify-between gap-3 py-5 transition-colors hover:text-primary"><span class="flex items-center gap-4"><img alt="" loading="lazy" decoding="async" fetchPriority="low" class="h-12 w-12 rounded-lg bg-background object-cover" aria-hidden="true" width="48" height="48"/><noscript><img src="/assets/m-manufacturing-DX4JogpJ.jpg" alt="" loading="lazy" decoding="async" class="h-12 w-12 rounded-lg bg-background object-cover"/></noscript><span class="font-display text-lg">Manufacturing Happy Hour w/ Chris Luecke</span></span><span class="text-xs uppercase tracking-widest text-muted-foreground">Podcast<!-- --> · <!-- -->Feb 2020</span></a></li><li><a href="https://noahlabhart.com/uncategorized/software-sessions-w-jeremy-jung/" target="_blank" rel="noreferrer" class="flex flex-wrap items-center justify-between gap-3 py-5 transition-colors hover:text-primary"><span class="flex items-center gap-4"><img alt="" loading="lazy" decoding="async" fetchPriority="low" class="h-12 w-12 rounded-lg bg-background object-cover" aria-hidden="true" width="48" height="48"/><noscript><img src="/assets/m-software-sessions-BycjHV1q.jpg" alt="" loading="lazy" decoding="async" class="h-12 w-12 rounded-lg bg-background object-cover"/>
185</noscript><span class="font-display text-lg">Software Sessions w/ Jeremy Jung</span></span><span class="text-xs uppercase tracking-widest text-muted-foreground">Podcast<!-- --> · <!-- -->Feb 2020</span></a></li><li><a href="https://noahlabhart.com/podcast/between-2-mics-with-zach-rock/" target="_blank" rel="noreferrer" class="flex flex-wrap items-center justify-between gap-3 py-5 transition-colors hover:text-primary"><span class="flex items-center gap-4"><img alt="" loading="lazy" decoding="async" fetchPriority="low" class="h-12 w-12 rounded-lg bg-background object-cover" aria-hidden="true" width="48" height="48"/><noscript><img src="/assets/m-between2mics-B0KgpXwH.jpg" alt="" loading="lazy" decoding="async" class="h-12 w-12 rounded-lg bg-background object-cover"/></noscript><span class="font-display text-lg">Between 2 Mics â with Zach & Rock</span></span><span class="text-xs uppercase tracking-widest text-muted-foreground">Podcast<!-- --> · <!-- -->Feb 2020</span></a></li><li><a href="https://noahlabhart.com/podcast/product-journey-podcast-interview/" target="_blank" rel="noreferrer" class="flex flex-wrap items-center justify-between gap-3 py-5 transition-colors hover:text-primary"><span class="flex items-center gap-4"><img alt="" loading="lazy" decoding="async" fetchPriority="low" class="h-12 w-12 rounded-lg bg-background object-cover" aria-hidden="true" width="48" height="48"/><noscript><img src="/assets/m-plaid-4KDXhrFU.png" alt="" loading="lazy" decoding="async" class="h-12 w-12 rounded-lg bg-background object-cover"/></noscript><span class="font-display text-lg">Product Journey â Podcast Interview</span></span><span class="text-xs uppercase tracking-widest text-muted-foreground">Podcast<!-- --> · <!-- -->Jan 2020</span></a></li></ul><div class="mt-8"><a href="/media" class="text-sm text-primary hover:underline">All interviews & talks â</a></div></div></section><section class="mx-auto w-full max-w-6xl px-6 py-20 "><p class="eyebrow">What people say</p><div class="mt-10"><div class="grid gap-6 md:grid-cols-3"><blockquote class="rounded-2xl bg-surface p-7"><p class="text-sm leading-relaxed text-muted-foreground">"<!-- -->Noah brings a great deal of experience that was extremely valuable when we evaluated our mobile app for Musicbed. As we rebuilt from the ground up, his input was invaluable. He is detailed, specific, and always has insight for how we can use the best technologies, lightest weight solutions, and most well-supported frameworks.<!-- -->"</p><footer class="mt-5 flex items-center gap-3 font-display text-sm text-foreground"><img alt="Tanner Hearne" loading="lazy" decoding="async" fetchPriority="low" class="h-9 w-9 rounded-full object-cover" width="36" height="36"/><noscript><img src="/assets/t-Tanner_Hearne-CiT-xYmL.jpg" alt="Tanner Hearne" loading="lazy" decoding="async" class="h-9 w-9 rounded-full object-cover"/></noscript>Tanner Hearne</footer></blockquote><blockquote class="rounded-2xl bg-surface p-7"><p class="text-sm leading-relaxed text-muted-foreground">"<!-- -->Noah and his team have been a great partner to me on a number of mobile projects for clients. So easy to work with, and attention to excellence. I highly recommend Noah for any mobile project you may have.<!-- -->"</p><footer class="mt-5 flex items-center gap-3 font-display text-sm text-foreground"><img alt="Travis Gates" loading="lazy" decoding="async" fetchPriority="low" class="h-9 w-9 rounded-full object-cover" width="36" height="36"/><noscript><img src="/assets/t-Travis_Gates-JlxyzsSW.jpg" alt="Travis Gates" loading="lazy" decoding="async" class="h-9 w-9 rounded-full object-cover"/></noscript>Travis Gates</footer></blockquote><blockquote class="rounded-2xl bg-surface p-7"><p class="text-sm leading-relaxed text-muted-foreground">"<!-- -->Noah is a great developer and a delightful person. I was consistently impressed with his ability to develop and refine new features within our app on time and within budget. We were unable to present him with a challenge that he wasn't able to overcome.<!-- -->"</p><footer class="mt-5 flex items-center gap-3 font-display text-sm text-foreground"><img alt="Chris Winn" loading="lazy" decoding="async" fetchPriority="low" class="h-9 w-9 rounded-full object-cover" width="36" height="36"/><noscript><img src="/assets/t-Chris_Winn-BLhEKmIr.jpg" alt="Chris Winn" loading="lazy" decoding="async" class="h-9 w-9 rounded-full object-cover"/>
185</noscript>Chris Winn</footer></blockquote></div><div class="mt-8"><a href="/testimonials" class="text-sm text-primary hover:underline">More praise â</a></div></div></section>
185<script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script>
185<!--/$--></main><footer class="border-t border-border/60 bg-surface"><div class="mx-auto flex max-w-6xl flex-col gap-4 px-6 py-10 text-sm text-muted-foreground md:flex-row md:items-center md:justify-between"><p class="max-w-md italic">"For the Spirit God gave us does not make us timid, but gives us power, love and self-discipline." â 2 Timothy 1:7</p><div class="flex flex-wrap gap-5"><a class="transition-colors hover:text-primary" href="https://codestory.co/" target="_blank" rel="noreferrer">Code Story</a><a class="transition-colors hover:text-primary" href="https://indiehackers.com/nlabhart/" target="_blank" rel="noreferrer">Indie Hackers</a><a class="transition-colors hover:text-primary" href="https://www.linkedin.com/in/noahlabhart" target="_blank" rel="noreferrer">LinkedIn</a></div></div></footer></div>
185<script class="$tsr" id="$tsr-stream-barrier">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-CIhN9yUf.js","/assets/jsx-runtime-DGeXAQPT.js","/assets/link-DfXvwZHU.js","/assets/react-vt4WmSOl.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-CIhN9yUf.js"}}]},"/":$R[8]={preloads:$R[9]=["/assets/routes-gsXDvKL_.js","/assets/LazyImage-BTCDXO_6.js","/assets/Section-uqbsMFz3.js"]}}},matches:$R[10]=[$R[11]={i:"__root__�",u:1791091441302,s:"success",ssr:!0},$R[12]={i:"��",u:1791091441302,s:"success",ssr:!0}],lastMatchId:"��"})($R["tsr"]);$_TSR.e();document.currentScript.remove()</script>
185<script type="module" async="" src="/assets/index-CIhN9yUf.js"></script>
185 186<aside 187 id="lovable-badge" 188 role="complementary" 189 dir="ltr" 190 lang="en" 191 aria-label="Edit with Lovable"> 192 <a 193 id="lovable-badge-cta" 194 target="_blank" 195 href="https://lovable.dev/projects/lovp_3q2dkymkjw86grq6mya4n7rqg8?utm_source=lovable-badge" 196 rel="noopener nofollow" 197 aria-label="Edit with Lovable"> 198 <span id="lovable-badge-text">Edit with</span> 199 <span id="lovable-badge-logo"><svg xmlns="http://www.w3.org/2000/svg" width="52" height="16" fill="none" viewBox="0 0 52 16"> 200 <path fill="#FCFBF8" fill-rule="evenodd" d="M20.318 5.25c.643 0 1.206.14 1.69.418a2.81 2.81 0 0 1 1.118 1.191c.266.513.4 1.115.4 1.807s-.134 1.296-.4 1.812a2.81 2.81 0 0 1-1.118 1.193c-.484.278-1.047.418-1.69.418s-1.208-.14-1.695-.418a2.85 2.85 0 0 1-1.125-1.193c-.262-.516-.393-1.12-.393-1.812s.131-1.294.393-1.807a2.848 2.848 0 0 1 1.125-1.191c.487-.279 1.052-.418 1.695-.418Zm0 1.425c-.27 0-.504.076-.7.228-.193.147-.34.37-.443.67-.102.295-.153.66-.153 1.093 0 .435.05.801.153 1.1.102.3.25.524.443.676.196.147.43.22.7.22.27 0 .502-.073.694-.22.193-.152.341-.375.443-.67.103-.299.153-.667.153-1.106 0-.65-.112-1.145-.337-1.481a1.08 1.08 0 0 0-.953-.51ZM32.7 5.25c.61 0 1.127.1 1.549.3.422.197.74.48.953.849.217.368.325.809.325 1.32v2.704c0 .29.02.562.062.812.044.245.108.4.19.466V12h-1.935a5.895 5.895 0 0 1-.105-.684 7.745 7.745 0 0 1-.02-.228 2.293 2.293 0 0 1-.151.203c-.205.242-.47.437-.793.584-.32.143-.685.215-1.094.215-.406 0-.77-.08-1.094-.24a1.845 1.845 0 0 1-.756-.682 1.984 1.984 0 0 1-.27-1.045c0-.606.178-1.069.535-1.388.356-.324.87-.534 1.542-.633l1.125-.16c.225-.032.403-.074.534-.123a.622.622 0 0 0 .288-.196.549.549 0 0 0 .093-.327.65.65 0 0 0-.11-.367.702.702 0 0 0-.32-.27c-.14-.07-.31-.105-.51-.105-.32 0-.576.083-.768.251-.193.164-.298.39-.314.676h-1.923c.016-.434.147-.82.393-1.155.25-.34.596-.604 1.039-.792.442-.189.954-.283 1.535-.283Zm.99 3.498a.98.98 0 0 1-.215.14 2.49 2.49 0 0 1-.584.178l-.473.092c-.315.061-.553.156-.713.283-.155.127-.233.305-.233.534 0 .23.084.412.252.547.168.135.383.203.645.203s.494-.058.694-.173c.201-.118.355-.282.461-.49.11-.21.166-.448.166-.714v-.6Zm4.526-2.375c.065-.125.138-.243.221-.349.197-.25.437-.44.719-.571.282-.135.6-.203.952-.203.528 0 .988.138 1.377.412.389.275.688.67.896 1.186.21.512.314 1.12.314 1.824 0 .7-.107 1.309-.32 1.825-.213.512-.518.906-.915 1.18-.393.275-.854.412-1.383.412-.352 0-.667-.062-.946-.184a1.832 1.832 0 0 1-.7-.554 2.2 2.2 0 0 1-.234-.383V12h-1.843V3h1.862v3.373Zm1.284.296c-.274 0-.51.085-.707.253-.192.163-.338.397-.436.7a3.376 3.376 0 0 0-.148 1.05c0 .406.05.759.148 1.058.098.299.243.53.436.694.197.164.433.246.707.246.279 0 .512-.082.7-.246.193-.164.336-.395.43-.694.099-.3.148-.652.148-1.058 0-.405-.05-.757-.147-1.056-.095-.299-.238-.53-.43-.694a1.015 1.015 0 0 0-.7-.253Zm9.416-1.419c.602 0 1.136.131 1.604.393.466.262.829.643 1.086 1.143.263.5.394 1.097.394 1.794 0 .25-.002.449-.006.596H47.51c.018.288.071.538.164.75a1.3 1.3 0 0 0 .491.596c.214.13.465.196.757.196.319 0 .583-.082.792-.246.209-.167.34-.403.393-.706h1.862a2.48 2.48 0 0 1-.485 1.235 2.54 2.54 0 0 1-1.051.805c-.439.188-.949.283-1.53.283-.655 0-1.225-.125-1.708-.375a2.672 2.672 0 0 1-1.13-1.143c-.267-.508-.4-1.137-.4-1.887 0-.712.14-1.327.418-1.843a2.86 2.86 0 0 1 1.155-1.186c.491-.27 1.051-.405 1.678-.405Zm-.044 1.345c-.274 0-.516.068-.725.203a1.29 1.29 0 0 0-.479.59 2.045 2.045 0 0 0-.132.498h2.562a1.873 1.873 0 0 0-.138-.602 1.061 1.061 0 0 0-.418-.516 1.243 1.243 0 0 0-.67-.173Z" clip-rule="evenodd"/> 201 <path fill="#FCFBF8" d="m26.605 9.995 1.342-4.566h1.924L27.628 12h-2.07l-2.33-6.57h1.98l1.397 4.565Zm-13.013.143h2.256c1.632 0 1.421 1.837 1.418 1.861h-5.603V3h1.93v7.138Zm31.516 1.861h-1.862V3h1.862v8.999Z"/> 202 <path fill="url(#a)" fill-rule="evenodd" d="M2.7 3c1.492 0 2.7 1.192 2.7 2.663v1.012h.9c1.49 0 2.7 1.192 2.7 2.662S7.791 12 6.3 12H0V5.663C0 4.193 1.209 3 2.7 3Z" clip-rule="evenodd"/> 203 <defs> 204 <radialGradient id="a" cx="0" cy="0" r="1" gradientTransform="matrix(-1.54236 7.07838 -10.231 -2.15602 4.627 5.022)" gradientUnits="userSpaceOnUse"> 205 <stop offset=".106" stop-color="#FE7B02"/> 206 <stop offset=".394" stop-color="#FE3F21"/> 207 <stop offset=".608" stop-color="#F858BC"/> 208 <stop offset=".929" stop-color="#575ECF"/> 209 </radialGradient> 210 </defs> 211</svg> 212 213</span> 214 </a> 215 216 <span id="lovable-badge-divider" aria-hidden="true"></span> 217 218 <button 219 id="lovable-badge-close" 220 aria-label="Dismiss" 221 title="Dismiss"
222 type="button"> 223 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="none" viewBox="0 0 16 16" aria-hidden="true"> 224 <path d="M10.646 4.646a.5.5 0 1 1 .707.708L8.707 8l2.646 2.646a.5.5 0 1 1-.707.707L8 8.707l-2.646 2.646a.5.5 0 1 1-.708-.707L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708L8 7.293l2.646-2.647Z"/> 225 </svg> 226 </button> 227</aside>
228<script> 229 (() => { 230 if (window.self !== window.top || navigator.userAgent.includes('puppeteer')) { 231 const badge = document.querySelector('#lovable-badge'); 232 if (badge) { 233 badge.style.display = 'none'; 234 } 235 return; 236 } 237 238 const closeButton = document.querySelector('#lovable-badge-close'); 239 if (closeButton) { 240 closeButton.addEventListener('click', function(event) { 241 event.preventDefault(); 242 event.stopPropagation(); 243 const badge = document.querySelector('#lovable-badge'); 244 if (badge) { 245 badge.classList.add('closing'); 246 setTimeout(function() { 247 if (badge) { 248 badge.style.display = 'none'; 249 } 250 }, 240); 251 } 252 }); 253 } 254 })(); 255</script>
255 256</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.