Fahd Adebayo's Work | Contra
Work by Fahd Adebayo
Sign Up
Post a job
Sign Up
Log In
pro
Fahd Adebayo
Website and Mobile App Developer
Message
Follow
Ready for work
Fahd is ready for their next project!
Lagos, Nigeria
Work
About
Lagos, Nigeria
0
Forj: Dating App for Professionals
0
2
0
Deen AI Islamic Practice App
0
0
0
Groom - AI-Powered In-App Onboarding SDK for SaaS
0
0
0
Groom - AI-powered in-app onboarding SDK for SaaS The problem New users land in a SaaS product with no guide and quietly leave. Existing onboarding tools need engineers to hand-build tours for every flow, and those tours break the moment the UI changes. We set out to build a layer that drops into any web app with one script tag, understands the live page, and walks users through multi-step tasks on demand. What I built Zero-dependency SDK, 23 KB gzipped. Injected with a single script tag and running inside customer apps we don't control. Ships as one IIFE via S3 and CloudFront with beta and stable channels. Live DOM perception. A budgeted depth-first walk that descends into shadow roots and same-origin iframes, measures geometry against each element's own frame, hit-tests for occlusion, and degrades gracefully under a 180 KB payload budget. Resilient element targeting. A five-tier selector resolution chain, re-resolution on re-render, delegated capture-phase listeners that survive React reconciliation, and a token system that cancels superseded async steps. Cross-page guided flows. A state machine persisted across full page loads with a split plan/progress store, 30-minute TTL, resume-at-destination detection, and cross-page back navigation. Constrained AI design. The LLM only resolves which element matches the user's intent; the step sequence is built deterministically by BFS over recorded navigation edges and verified before display. Accurate and cheap. Full product dashboard. 24-route Next.js app with analytics across 14 aggregated metrics, an onboarding wizard, integrations, AI settings, and subscriptions, with single-flight token refresh and persisted auth state. Scale Around 44,000 lines of TypeScript across three repos, 66 API endpoints, 23 data models, 900+ commits over roughly eight months. Shipped to production infrastructure and accepted into the NVIDIA Inception program. Stack Next.js 15, React 19, Tailwind v4, TanStack Query, NestJS 11, PostgreSQL, Gemini 2.5 Flash, TypeScript, Vercel, AWS. What I learned Running code inside someone else's app teaches you that the DOM you measured a second ago no longer exists. Most of the engineering value in Groom is in the recovery paths, not the happy path.
0
86
Challenges
Flora Museum Challenge
Descript Challenge
CapCut Design Your Startup Challenge
Challenges
Flora Museum Challenge
Descript Challenge
CapCut Design Your Startup Challenge