RevenueCat and Stripe: One Subscription, App and Web Run RevenueCat in your iOS and Android apps and Stripe on the web for one subscriber: shared user ID, entitlements, webhook handling and a reconciliation job.
Expo EAS Update Release Process: Ship OTA Fixes Safely An Expo EAS Update release process for over-the-air fixes: runtime version policy, channels, a preview check, staged rollouts, rollback, and Apple rules.
RAG Evaluation Set: How to Build One Before You Ship How to build a RAG evaluation set: which questions to write, what gold data to record, how to grade retrieval and answers apart, and rerunning it often.
AI Document Extraction Accuracy: Citation Checks Improve AI document extraction accuracy with citation checks: a quote and page for every value, normalised matching in code, and a person for whatever fails.
Multi-Tenant Vector Search: Keep Each User's Data Apart Multi-tenant vector search without leaks: tenant IDs on every vector, server-side filters, Qdrant tenant indexes, pgvector RLS and iterative scans, and tests.
Remote MCP Server with OAuth: What It Takes to Build Building a remote MCP server with OAuth: protected resource metadata, resource indicators, audience-checked tokens, no token passthrough, and well-scoped tools.
Multi-Tenant SaaS Checklist: Lessons from Five Products A multi-tenant SaaS checklist from five products we run: tenant IDs, one enforcement layer, roles, entitlements, webhooks, jobs and cross-tenant tests.
Razorpay vs Stripe India: Which Gateway for Your SaaS? Razorpay vs Stripe in India for 2026: Stripe is invite-only for Indian businesses, UPI AutoPay runs under RBI e-mandate rules, and when to run both gateways.
AI Tender Document Extraction: How the Pipeline Works AI tender document extraction, stage by stage: OCR for scans with retries, page targeting, values that cite their page, a second check, and human review.
ANPR on Existing CCTV: How We Built Acasa Sentinel ANPR on existing CCTV: ingest RTSP or HLS, track before reading, vote across frames, match fuzzily, run locally. In a sandbox, 24 of 24 plates matched.