---
title: "My posts on design."
url: "https://sarthakmishra.com/blog/page/3"
description: "In-depth articles and insights about design, dev, growth, journal: hands-on build guides, essays and opinions, and the latest technology trends."
image: "https://sarthakmishra.com/sarthak-og-image.webp"
---

[View HTML](https://sarthakmishra.com/blog/page/3) · [Site index](https://sarthakmishra.com/llms.txt)

# My posts on design.

I write about anything and everything that interests me.

[design](https://sarthakmishra.com/blog/tag/design)[dev](https://sarthakmishra.com/blog/tag/dev)[growth](https://sarthakmishra.com/blog/tag/growth)[journal](https://sarthakmishra.com/blog/tag/journal)

[![Vintage telescope bearing Google’s logo, hourglass, and coins against a starry sky and clouds.](https://sarthakmishra.com/assets/google-custom-search-astro-BbC_JCW-.jpeg)](https://sarthakmishra.com/blog/google-custom-search-astro)

[Jan 22 2026](https://sarthakmishra.com/blog/google-custom-search-astro)

## [Why I Didn't Use Google Programmable Search](https://sarthakmishra.com/blog/google-custom-search-astro)

[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.](https://sarthakmishra.com/blog/google-custom-search-astro)

[![A floating grassy island with a cottage and giant pink slabs amid planets and stars.](https://sarthakmishra.com/assets/meilisearch-astro-DvEyI0Vg.jpeg)](https://sarthakmishra.com/blog/meilisearch-astro)

[Jan 14 2026](https://sarthakmishra.com/blog/meilisearch-astro)

## [Meilisearch is the Best Search You'll Never Need](https://sarthakmishra.com/blog/meilisearch-astro)

[Self-hosting Meilisearch with Docker, Traefik, and Astro - complete with API key management, content indexing, and rate limiting.](https://sarthakmishra.com/blog/meilisearch-astro)

[![A glowing compass rests on a central map tile, surrounded by ancient maps in space.](https://sarthakmishra.com/assets/pagefind-astro-BfE4llst.jpeg)](https://sarthakmishra.com/blog/pagefind-astro)

[Jan 13 2026](https://sarthakmishra.com/blog/pagefind-astro)

## [Why I Switched from Orama to Pagefind](https://sarthakmishra.com/blog/pagefind-astro)

[Why I use Pagefind: A deep dive into chunked indexing, bandwidth scaling, and setting up a production-grade search for Astro.](https://sarthakmishra.com/blog/pagefind-astro)

[![Open wooden card catalog drawers float among clouds and planets, revealing a glowing spiral symbol.](https://sarthakmishra.com/assets/orama-astro-D5GPz4eV.jpeg)](https://sarthakmishra.com/blog/orama-astro)

[Jan 12 2026](https://sarthakmishra.com/blog/orama-astro)

## [The Right Way to Add Orama Search to Astro](https://sarthakmishra.com/blog/orama-astro)

[Stop using the Orama Astro plugin. Here is how to build a type-safe, metadata-rich search engine that actually works in Dev Mode.](https://sarthakmishra.com/blog/orama-astro)

[![A futuristic laser machine blasts stacked cardboard boxes amid flying debris and vibrant clouds.](https://sarthakmishra.com/assets/optimizing-astro-bundle-size-ColRbQcR.jpeg)](https://sarthakmishra.com/blog/optimizing-astro-bundle-size)

[Jan 11 2026](https://sarthakmishra.com/blog/optimizing-astro-bundle-size)

## [Honey, I Shrunk my Frontend Bundle Size!](https://sarthakmishra.com/blog/optimizing-astro-bundle-size)

[How I replaced Lottie with Canvas sprites, migrated to Preact, and removed heavy dependencies to cut over 300KB from my bundle.](https://sarthakmishra.com/blog/optimizing-astro-bundle-size)

[![Four watercolor paintings—coastal village, cat, teacup, and bicycle—hang beneath a brass sliding rail.](https://sarthakmishra.com/assets/automating-image-alt-text-B-v3EgTZ.jpeg)](https://sarthakmishra.com/blog/automating-image-alt-text)

[Jan 10 2026](https://sarthakmishra.com/blog/automating-image-alt-text)

## [Automating Accessibility: Generating Alt Text with AI](https://sarthakmishra.com/blog/automating-image-alt-text)

[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.](https://sarthakmishra.com/blog/automating-image-alt-text)

[![Framed mosaic-style painting of a coastal village beneath a warm sunset, with a cursor visible.](https://sarthakmishra.com/assets/building-pixelation-hover-effect-3jCZ88Ru.jpeg)](https://sarthakmishra.com/blog/building-pixelation-hover-effect)

[Jan 09 2026](https://sarthakmishra.com/blog/building-pixelation-hover-effect)

## [Building a Smooth Pixelation Reveal Effect with Canvas](https://sarthakmishra.com/blog/building-pixelation-hover-effect)

[How I built a high-performance, interactive pixelation effect for image transitions using HTML5 Canvas and custom easing interactions.](https://sarthakmishra.com/blog/building-pixelation-hover-effect)

[![Color palette points toward framed watercolor of a coastal village beside blue sea.](https://sarthakmishra.com/assets/automating-image-placeholders-B0LVtFIN.jpeg)](https://sarthakmishra.com/blog/automating-image-placeholders)

[Jan 08 2026](https://sarthakmishra.com/blog/automating-image-placeholders)

## [How to generate blurry placeholders for your images](https://sarthakmishra.com/blog/automating-image-placeholders)

[How I eliminated layout shift and improved perceived performance by generating 20px base64 placeholders automatically at build time.](https://sarthakmishra.com/blog/automating-image-placeholders)

## Subscribe to my newsletter

You'll get two emails initially: a confirmation link to verify your subscription, followed by a welcome message. Thanks for joining!

You can read all of my [previous issues here](https://sarthakmishra.com/newsletter)

## Structured data

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "WebSite",
      "@id": "https://sarthakmishra.com/#website",
      "url": "https://sarthakmishra.com/",
      "name": "Sarthak Mishra",
      "publisher": {
        "@id": "https://sarthakmishra.com/#person"
      },
      "inLanguage": "en"
    },
    {
      "@type": "Person",
      "@id": "https://sarthakmishra.com/#person",
      "name": "Sarthak Mishra",
      "url": "https://sarthakmishra.com/about",
      "jobTitle": "Design Engineer",
      "image": "https://sarthakmishra.com/og-images/sarthak-mishra.webp",
      "sameAs": [
        "https://github.com/SarthakMishra",
        "https://www.linkedin.com/in/itssarthakmishra/",
        "https://x.com/MishraMishry"
      ]
    },
    {
      "@type": "CollectionPage",
      "@id": "https://sarthakmishra.com/blog/page/3#webpage",
      "url": "https://sarthakmishra.com/blog/page/3",
      "name": "Blog posts on Design, Dev, Growth and more - Page 3",
      "description": "In-depth articles and insights about design, dev, growth, journal: hands-on build guides, essays and opinions, and the latest technology trends.",
      "inLanguage": "en",
      "isPartOf": {
        "@id": "https://sarthakmishra.com/#website"
      },
      "mainEntity": {
        "@id": "https://sarthakmishra.com/blog/page/3#items"
      }
    },
    {
      "@type": "ItemList",
      "@id": "https://sarthakmishra.com/blog/page/3#items",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Why I Didn't Use Google Programmable Search",
          "url": "https://sarthakmishra.com/blog/google-custom-search-astro"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Meilisearch is the Best Search You'll Never Need",
          "url": "https://sarthakmishra.com/blog/meilisearch-astro"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "Why I Switched from Orama to Pagefind",
          "url": "https://sarthakmishra.com/blog/pagefind-astro"
        },
        {
          "@type": "ListItem",
          "position": 4,
          "name": "The Right Way to Add Orama Search to Astro",
          "url": "https://sarthakmishra.com/blog/orama-astro"
        },
        {
          "@type": "ListItem",
          "position": 5,
          "name": "Honey, I Shrunk my Frontend Bundle Size!",
          "url": "https://sarthakmishra.com/blog/optimizing-astro-bundle-size"
        },
        {
          "@type": "ListItem",
          "position": 6,
          "name": "Automating Accessibility: Generating Alt Text with AI",
          "url": "https://sarthakmishra.com/blog/automating-image-alt-text"
        },
        {
          "@type": "ListItem",
          "position": 7,
          "name": "Building a Smooth Pixelation Reveal Effect with Canvas",
          "url": "https://sarthakmishra.com/blog/building-pixelation-hover-effect"
        },
        {
          "@type": "ListItem",
          "position": 8,
          "name": "How to generate blurry placeholders for your images",
          "url": "https://sarthakmishra.com/blog/automating-image-placeholders"
        }
      ]
    }
  ]
}
```
