# Sarthak Mishra > Product designer and developer. Posts on design, code, startups and AI, portfolio projects, ventures, services and newsletter issues. Markdown links contain the published page content. Each document identifies its canonical website URL. ## Website - [Home](https://sarthakmishra.com/index.md) - [About](https://sarthakmishra.com/about/index.md) - [Services](https://sarthakmishra.com/services/index.md) - [Work](https://sarthakmishra.com/work/index.md) - [Blog](https://sarthakmishra.com/blog/index.md) - [Newsletter](https://sarthakmishra.com/newsletter/index.md) ## Services - [Design Systems built for your brand and your AI tools](https://sarthakmishra.com/services/design-systems/index.md): A component library built around your brand on top of shadcn/ui, with the docs, lint rules and agent skills that keep your team and its AI tools on the system. - [Website Migrations from Framer, Webflow, and more](https://sarthakmishra.com/services/migrations/index.md): Leave Framer, Webflow, Wix or Squarespace with your design, content and links carried over. I rebuild your site on code you own, with a CMS your team can edit. ## Posts - [How Dropbox, DoorDash, Airbnb and Stripe designed their MVPs](https://sarthakmishra.com/blog/how-startups-designed-their-mvps/index.md): Early UI and founder stories from Dropbox, DoorDash, Airbnb, Stripe, Zapier, and Product Hunt. What to design first, reuse, and leave for later. - [Adaptive video with FFmpeg, Vite and a custom player](https://sarthakmishra.com/blog/adaptive-video-streaming/index.md): How I turn recordings into cached AV1 and H.264 streams with FFmpeg and Vite, then play them with native HLS or Mattebox behind custom React controls. - [How to scope a SaaS project you can afford to finish](https://sarthakmishra.com/blog/scoping-a-saas-project/index.md): How I approach SaaS scope and pricing as a former agency owner and current freelancer, and what to ask when budgeting for design and development. - [Optimizing the sh\*t out of TanStack Start](https://sarthakmishra.com/blog/optimizing-tanstack-start/index.md): A practical TanStack Start performance guide: how cutting downloads and fixing fonts and images took my home page from 73 to 100 on mobile Lighthouse. - [How to hire a freelance designer who can deliver](https://sarthakmishra.com/blog/hiring-a-freelance-designer/index.md): A founder’s guide to hiring a freelance designer: check real contributions, constraints, working fit, and delivery before committing to the work. - [Why I moved from Astro to TanStack Start](https://sarthakmishra.com/blog/astro-to-tanstack-start/index.md): I moved my portfolio to the React stack I use for client work. Getting Astro's loading behavior and performance back took more work. - [How I automated internal linking with AI](https://sarthakmishra.com/blog/automating-internal-linking/index.md): Find internal link opportunities with embeddings and a reranker, make an LLM justify each link, and place links at build time instead of editing MDX. - [How to generate animated icons with TypeScript](https://sarthakmishra.com/blog/building-animated-nav-icons/index.md): How I replaced my Lordicon nav icons with seven animated sprite icons drawn in TypeScript, rendered with sharp, and played on a canvas. - [How to build an interactive Grok Bot-like avatar](https://sarthakmishra.com/blog/building-interactive-svg-avatar/index.md): Build a Grok Bot-like avatar with SVG, Astro, and React. Add cursor tracking, expressive eyes, protective winks, and natural idle animations. - [Where to draw the line between Imitation and Inspiration?](https://sarthakmishra.com/blog/imitation-vs-inspiration/index.md): AI commoditized execution, so "taste" is the new moat. The programmer's version: imitation is copy by value, inspiration is copy by reference. - [Assume the Endpoint Is Hostile](https://sarthakmishra.com/blog/assume-the-endpoint-is-hostile/index.md): Lakhs of government PCs can reach the core, each trusting whoever sits in front of it. Borrow Apple's closed model and make the wrong move unavailable. - [GitHub for Government Work](https://sarthakmishra.com/blog/github-for-government/index.md): The multi-year, single-vendor RFP is the root cause. Treat the core platform as an open commons: small priced tasks, paid per merged pull request. - [How I'd Build Government Software That Doesn't Fall Over](https://sarthakmishra.com/blog/building-govtech-that-lasts/index.md): You don't fix a meltdown with experts parachuting in after the breach. You fix it with defaults: a federated core, HTML-first frontends, private storage. - [BTS of CBSE's Infra Meltdown.](https://sarthakmishra.com/blog/bts-of-cbses-infra-meltdown/index.md): CBSE called its result-day collapse a cyberattack. The numbers say plain demand, the kind monolithic, one-vendor government IT can't survive. - [Stop Fixing India's Exams](https://sarthakmishra.com/blog/stop-fixing-exams/index.md): NEET leaked, CBSE's new marking system melted down, and 23.6% of young Indian graduates are jobless. We keep debugging an exam machine we should replace. - [I Tried 4 Search Engines So You Don't Have To](https://sarthakmishra.com/blog/astro-search-comparison/index.md): Here's the definitive guide to choosing between Orama, Pagefind, Meilisearch, and Google for your static site. - [Why I Didn't Use Google Programmable Search](https://sarthakmishra.com/blog/google-custom-search-astro/index.md): Google's search API sounds perfect for static sites. It isn't. Here's why the pricing model and indexing delays make it impractical for most blogs. - [Meilisearch is the Best Search You'll Never Need](https://sarthakmishra.com/blog/meilisearch-astro/index.md): Self-hosting Meilisearch with Docker, Traefik, and Astro - complete with API key management, content indexing, and rate limiting. - [Why I Switched from Orama to Pagefind](https://sarthakmishra.com/blog/pagefind-astro/index.md): Why I use Pagefind: A deep dive into chunked indexing, bandwidth scaling, and setting up a production-grade search for Astro. - [The Right Way to Add Orama Search to Astro](https://sarthakmishra.com/blog/orama-astro/index.md): Stop using the Orama Astro plugin. Here is how to build a type-safe, metadata-rich search engine that actually works in Dev Mode. - [Honey, I Shrunk my Frontend Bundle Size!](https://sarthakmishra.com/blog/optimizing-astro-bundle-size/index.md): How I replaced Lottie with Canvas sprites, migrated to Preact, and removed heavy dependencies to cut over 300KB from my bundle. - [Automating Accessibility: Generating Alt Text with AI](https://sarthakmishra.com/blog/automating-image-alt-text/index.md): How I automated accessibility across my portfolio by building a build-time pipeline that uses Gemini Flash to generate accurate alt text for hundreds of images. - [Building a Smooth Pixelation Reveal Effect with Canvas](https://sarthakmishra.com/blog/building-pixelation-hover-effect/index.md): How I built a high-performance, interactive pixelation effect for image transitions using HTML5 Canvas and custom easing interactions. - [How to generate blurry placeholders for your images](https://sarthakmishra.com/blog/automating-image-placeholders/index.md): How I eliminated layout shift and improved perceived performance by generating 20px base64 placeholders automatically at build time. - [How to generate animated pixel art with AI and Python](https://sarthakmishra.com/blog/building-animated-sprite-hero/index.md): How I built a pixel-perfect animated hero section using Midjourney, a custom Python processing pipeline, and Astro View Transitions. - [How I built a semantic recommendation engine](https://sarthakmishra.com/blog/semantic-recommendations/index.md): Building a "related content" engine with embeddings, a reranker and a cache keyed by exact input, and why I dropped tag and category scoring. - [New Year 2026: Little by little](https://sarthakmishra.com/blog/new-year-2026/index.md): Little by little, a little becomes a lot. Reflecting on the small wins of 2025 and laying out the roadmap for 2026. - [How to automate LinkedIn outreach?](https://sarthakmishra.com/blog/linkedin-automation/index.md): A step-by-step guide to LinkedIn outreach automation concepts using OpenOutreach, an open-source Playwright-based tool. - [How to find verified work emails for cold outreach](https://sarthakmishra.com/blog/how-to-find-and-validate-work-emails/index.md): Find verified work emails that never made it into public databases, in a way that is cheaper and more effective than Apollo/Hunter. - [Scaling highly personalized outbound with AI.](https://sarthakmishra.com/blog/scaling-highly-personalized-outbound/index.md): Build a pipeline to enrich leads with LinkedIn data and generate highly personalized cold emails with AI for under $5. - [Is cold outreach dying, or are you doing it wrong?](https://sarthakmishra.com/blog/is-cold-outreach-dying/index.md): A practical guide to what actually works in 2025: infrastructure, targeting, personalization, and multi-channel strategies that still get meetings. - [Drool is shut down - An honest post-mortem.](https://sarthakmishra.com/blog/drool-is-shut-down/index.md): An honest post-mortem on shutting down my design agency. Lessons on scope creep, hiring pitfalls and remote ops friction. - [AI's Billion-Dollar Lie: Is inference really profitable?](https://sarthakmishra.com/blog/ai-billion-dollar-lie/index.md): OpenAI, Anthropic, and Google keep dropping wild revenue numbers, but once you cut through the hype and wild speculations, the numbers don't add up. - [Setting Up Traefik: From Local to Production](https://sarthakmishra.com/blog/setting-up-traefik-from-local-to-production/index.md): Building three different Traefik configurations - from simple local development to production-ready infrastructure with security layers. - [Why I spent weeks perfecting a TOC component](https://sarthakmishra.com/blog/building-perfect-toc-component/index.md): A deep dive into building a Table of Contents component with sophisticated visual debugging and pixel-perfect active state detection. - [Building a Newsletter System Without the Headache](https://sarthakmishra.com/blog/building-newsletter-with-astro-cloudflare-and-resend/index.md): How I added a complete newsletter system to my static Astro site using Cloudflare KV, Resend, and MDX - no external CMS required. - [Setup your Ubuntu Server in Under 10 Minutes](https://sarthakmishra.com/blog/setup-ubuntu-server-in-10-minutes/index.md): Skip the manual server setup with a three-stage Ansible approach that gets you from fresh Ubuntu install to production-ready in under 10 minutes. - [Self-hosting done right with Ansible & Docker](https://sarthakmishra.com/blog/self-hosting-done-right/index.md): Learning infrastructure automation the hard way - from multi-node cluster-f\*ck to a production-ready, single-node setup with Ansible. - [The Greater Fool: Why I Chose the Hard Path](https://sarthakmishra.com/blog/the-greater-fool/index.md): On embracing risk, learning from failure, and why I believe the unconventional path leads to the most meaningful growth. ## Works - [My Next Filing - A Tax Plan for Freelancers in India](https://sarthakmishra.com/work/my-next-filing/index.md): A browser-only tax planner for solo freelancers in India. Answer a few questions and get your next action, its due date, and what you still owe. - [UX-Folio - Design Explorations & Experiments](https://sarthakmishra.com/work/ux-folio/index.md): A collection of interesting design work, hackathon projects, and experimental interfaces created during my time at Drool agency. - [My Drip - AI-Powered Personalized Shopping Experience](https://sarthakmishra.com/work/mydrip/index.md): An innovative MVP that combines generative AI with personalized eCommerce, delivering daily outfit recommendations with realistic photos of users wearing them. - [Phidata - AI Assistant Platform Landing Page](https://sarthakmishra.com/work/phidata/index.md): A comprehensive landing page redesign for an innovative AI assistant platform, focusing on clear communication and conversion optimization. - [SellScale - AI-Powered Cold Outreach Platform](https://sarthakmishra.com/work/sellscale/index.md): A comprehensive design overhaul of an all-in-one cold outreach platform that automates LinkedIn and email campaigns for B2B sales teams. - [Blend & Brew - Community-Driven Tea Brand](https://sarthakmishra.com/work/blendnbrew/index.md): An experimental venture creating a flavoured tea brand inspired by new-age coffee culture, focused on supporting small indigenous tea growers. - [Logo-Folio - Brand Identity & Logo Design](https://sarthakmishra.com/work/logo-folio/index.md): A collection of logo designs and brand identity projects created for clients - showcasing versatile branding solutions across industries. ## Ventures - [Winitiate](https://sarthakmishra.com/work/winitiate/index.md): A unified platform for freelancers and agencies that replaces scattered tools for client messaging, CRM, billing, and scheduling with one dashboard. - [Codemap](https://sarthakmishra.com/work/codemap/index.md): An AI-powered coding assistant that started as a git commit helper and grew into smart commits, pull requests, and semantic search over your code. - [Learnway](https://sarthakmishra.com/work/learnway/index.md): AI-powered learning platform that generates personalized learning paths, featuring intelligent pathway generation, content curation, and an AI tutor. - [Drool](https://sarthakmishra.com/work/drool/index.md): Drool was a design agency for early-stage startups in AI, B2B, data analytics, and no-code SaaS, built on cold outreach and later sunset. - [Altpack](https://sarthakmishra.com/work/altpack/index.md): Modular backpacks designed for any environment: lightweight, durable, and adaptable. A leap into physical products and D2C manufacturing. - [Weaveu](https://sarthakmishra.com/work/weaveu/index.md): A fashion ecommerce marketplace connecting consumers, raw-material producers, and boutique tailors for custom clothing creation. ## Newsletter issues - [Rethinking my agency website](https://sarthakmishra.com/newsletter/issue-1/index.md): Why I'm ditching the traditional agency website playbook and building a resource site targeting founders in my ICP, using programmatic SEO. ## Optional - [Published pages in one file, without Blog and Work listings](https://sarthakmishra.com/llms-full.txt) - [Contact](https://sarthakmishra.com/contact) - [Sarthak Mishra's RSS Feed](https://sarthakmishra.com/rss.xml) - [Sarthak Mishra's Atom Feed](https://sarthakmishra.com/atom.xml) - [Sarthak Mishra's JSON Feed](https://sarthakmishra.com/feed.json) - [/blog/page/2](https://sarthakmishra.com/blog/page/2/index.md) - [/blog/page/3](https://sarthakmishra.com/blog/page/3/index.md) - [/blog/page/4](https://sarthakmishra.com/blog/page/4/index.md) - [/blog/page/5](https://sarthakmishra.com/blog/page/5/index.md) - [/blog/tag/design](https://sarthakmishra.com/blog/tag/design/index.md) - [/blog/tag/dev](https://sarthakmishra.com/blog/tag/dev/index.md) - [/blog/tag/dev/page/2](https://sarthakmishra.com/blog/tag/dev/page/2/index.md) - [/blog/tag/dev/page/3](https://sarthakmishra.com/blog/tag/dev/page/3/index.md) - [/blog/tag/dev/page/4](https://sarthakmishra.com/blog/tag/dev/page/4/index.md) - [/blog/tag/growth](https://sarthakmishra.com/blog/tag/growth/index.md) - [/blog/tag/journal](https://sarthakmishra.com/blog/tag/journal/index.md) - [/blog/tag/journal/page/2](https://sarthakmishra.com/blog/tag/journal/page/2/index.md) - [/work/page/2](https://sarthakmishra.com/work/page/2/index.md)