YDKJS AI Tutor
Full-stack RAG-powered reading assistant for the 'You Don't Know JS' book series. Features semantic search and contextual Q&A using local LLMs.
Impact: Personal learning tool with RAG architecture
I turn product ideas to code that's reliable, functional & scalable, backed by years of experience with startup & enterprise teams.
of web performance and artificial intelligence
Hi, I’m Chris Josh, a Senior Full-Stack Engineer building performant, scalable, and accessible web applications. I design systems end-to-end, from polished interfaces to backend infrastructure that powers real-world products.
My work now focuses on AI-powered applications — building LLM workflows, RAG systems, and intelligent automation using modern web and AI stacks. I’m particularly interested in applying these systems to solve practical, high-impact problems.
A comprehensive toolkit for building modern, intelligent applications
Also proficient with
A selection of projects showcasing my expertise in web development and AI engineering
Full-stack RAG-powered reading assistant for the 'You Don't Know JS' book series. Features semantic search and contextual Q&A using local LLMs.
Impact: Personal learning tool with RAG architecture
Stop changing webhook URLs between local, staging, and each dev setup.
Impact: Pre live development daily tool
Unopinionated React upload component published on npm. Built with TypeScript and Tailwind CSS for maximum flexibility and ease of integration.
Impact: Published npm package
A professional, unopinionated starting point for building React-based email templates. Decouples email design from triggering logic with a render API and type-safe package.
Impact: Open-source template with live playground
Insights on frontend architecture, AI engineering, and building products that scale.
Zustand is tiny and fast until you force Redux habits into it. Use less global state, tighter selectors, and better store boundaries.
One of the most misunderstood fields in package.json is also one of the most dangerous. Misuse it and your library may work locally but fail in production.
Why backend-owned HTML emails did not scale for us, and how moving to React Email with generated types fixed it.
Have a project in mind or want to discuss opportunities? I'd love to hear from you.
I typically respond within 24-48 hours. For urgent matters, please reach out via LinkedIn.
Location: Relocating to Berlin, Germany (Opportunity Card / Chancenkarte in progress)
Work Authorization: German Opportunity Card (Pending) - Target Location: Berlin
Work Authorization (Nigeria, Africa): I am legally authorized to work in Nigeria