index 23 posts

Writing.

Notes from real projects: what I built, what broke, and how I fixed it. Shopify, Next.js, Node.js, performance and DevOps.

01 Building a help search that finds the right article, without a search server How the search on help.happypet.tech went from 76% to 100% of test searches in the top 3, using MiniSearch, a synonym list, a test file and no search server. With the code. 30 Sept 202613 min 02 How I made help.happypet.tech load in 0.1 seconds The Happy Pet help site had pages at 0.7 seconds and APIs at 1.6 seconds. Four causes, four fixes, and the before and after numbers for each. 29 Sept 20269 min 03 Our deploys caused 5 seconds of downtime: fixing it with PM2 cluster mode The Happy Pet Tech API went down for 4 to 5 seconds on every deploy. Moving to PM2 cluster mode fixed that, but two workers mean cron jobs run twice, sockets miss people and requests get cut off. What we changed, with the config. 18 Sept 20267 min 04 Never show a database error to a user: how errors travel in our API How the Happy Pet Tech SaaS keeps technical error text away from users: a filter on the server, a mirror of it in the browser, and a reference code that can be read over the phone. 16 Sept 20265 min 05 Making a 175-screen web app work on a phone How the Happy Pet Tech SaaS became a phone-friendly, installable web app: fixing two modal components to cover 127 screens, tables that turn into cards, a gate for screens that are not ready, and the bugs we hit. 05 Sept 20266 min 06 Making a Next.js marketing site fast: a 90 PageSpeed score, and the 11 days we lost analytics Performance work on happypet.tech in the order it happened: what each fix changed in Lighthouse, what did nothing, the mistake that switched off our analytics for 11 days, and where it stands now (90 on desktop, Core Web Vitals passed). 26 Aug 20269 min 07 How voice to notes works: speech to text, then an LLM, then a human We are planning a voice to notes feature for the Happy Pet Tech SaaS and have not built it yet. This is how the technology works, step by step, and the problems I expect. 20 Aug 20265 min 08 Web push with Firebase Cloud Messaging: seven bugs from a real app Push notifications in the Happy Pet Tech web app ran for two years before we looked at them closely. Seven bugs we found in five weeks, with the cause and the fix for each. 19 Aug 20266 min 09 WhatsApp message templates: six things the docs did not prepare us for Building WhatsApp Cloud API templates into the Happy Pet Tech SaaS: polling for approval, a template stuck on PENDING, uploading the header file twice, and other problems with their fixes. 11 Aug 20266 min 10 Building a team WhatsApp inbox on the WhatsApp Cloud API What we learned building a two-way WhatsApp inbox into the Happy Pet Tech SaaS on Meta's Cloud API: per-business webhooks, a verify bug from a sanitizer, the 24 hour window, media, and keeping the inbox live. 22 Jul 20267 min 11 From Liquid to running a SaaS: the tech I had to learn, in order I started with Shopify themes in Liquid and now run the stack of a SaaS as CTO. This is the order I learned things in, and which project forced each step. 17 Jun 20264 min 12 Two AI features I built: one for pet parents, one for home buyers Lorem answers questions in the Pet Parent App and Roost analyzes deals on Roosthaven. The two products share nothing, but I built the AI part almost the same way both times. 08 May 20263 min 13 Building Lorem, the AI companion in our pet app Lorem answers pet parents' questions inside the Pet Parent App. It reads the pet's own profile before answering, runs on the server, and sends real health problems to a vet. 05 Feb 20262 min 14 One SaaS, many countries: what we keep in data and not in code How the Happy Pet Tech SaaS handles tax, currency, phone numbers and wording for businesses in different countries, why old invoices never change when a tax rate is edited, and where we still have country checks in code. 13 Jan 20265 min 15 How I went from Shopify developer to CTO Six years from frontend developer to Shopify agency founder to CTO at Happy Pet Tech, told year by year. 29 May 20252 min 16 One Express API for a Next.js website and a Flutter app How I built PetsFirst Health, a booking platform for pet healthcare in Bengaluru: a Next.js website and a Flutter app on one Node.js and Express API with MongoDB. 09 May 20253 min 17 Building Roosthaven alone in five months Notes from building a real-estate platform by myself between December 2024 and April 2025: where v0 helped, why the database is Neon, and how the AI part is wired. 23 Apr 20252 min 18 SEO for product pages that are almost the same A ring catalogue has many pages that differ by one word, like the metal or the diamond shape. How we handle titles, canonicals, collections and structured data for them at Renaissance Jewel. 04 Apr 20256 min 19 Dawn, a paid theme, or a custom theme: what I used on three Shopify stores In 2024 I worked on three Shopify stores with three different theme setups: Dawn for Sethi Couture, a theme from scratch for Dūwi, and the paid Ella theme at Renaissance Jewel. 12 Mar 20253 min 20 Speeding up a Shopify store that runs on a heavy paid theme The Renaissance Jewel store runs on the Ella theme with several apps and a 3D ring viewer. The four changes that make up most of the speed work, with the code pattern for each. 21 Feb 20255 min 21 Past Shopify's 100 variant limit: one product per ring, uploaded with a Node script At Renaissance Jewel one ring design needs more combinations than a Shopify product allowed. Each combination became its own product, and a custom app plus a Node script created them through the Shopify API. 16 Jan 20256 min 22 A Shopify theme the founders can edit without me For Dūwi Beauty I wrote a Shopify theme from a blank repo in two months. The rule was that nothing on the home page is hard-coded. 05 Dec 20244 min 23 Shopify SEO, phone login and delivery: the setup behind PetsFirst's 15x order growth The Shopify setup I worked on for PetsFirst: SEO changes in the theme, OTP login for Indian customers, delivery, and two stores running on one codebase. Orders grew 15x in eight weeks. 15 Feb 20244 min