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 focused on building performant, scalable, and accessible web applications. My work spans from crafting pixel-perfect interfaces to architecting reliable, scalable systems.
I'm slowly transitioning into Al Engineering, combining my deep expertise in web development with cutting-edge Al technologies. I'm passionate about building intelligent products that leverage LLMs, RAG systems, and autonomous agents to solve real-world 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.
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.
Next.js is not just React with routing. When used as intended, it changes how you think about rendering, state, and UX.
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