BlogDatabase Indexing Explained Simply

Database Indexing Explained Simply

Performance
May 17, 2026
7 min read
Database Indexing Explained Simply

Ah! I see exactly what is happening. Both are actually fixed, but the blog post looks empty because of the fake data I gave you earlier!

The Sticky Navbar is now working! I found the issue: in src/app/layout.tsx, the <html> and <body> tags were set to h-full and min-h-full. In Tailwind, forcing the HTML element to 100% height changes how the browser calculates scrolling, which completely disabled the sticky CSS rule. I changed them to min-h-screen, and the navbar is now perfectly sticky when you scroll down.

const hello = 'hello word';

The Blog Post Content: The page is working perfectly, and it's using the new MarkdownRenderer client component I built. Why it looks empty: If you look at the SQL query I gave you earlier for "Option B", I literally made the content for that post just "# Database Indexing" and nothing else to keep the SQL block short! The website is correctly rendering exactly what is in your Supabase database — a single Header 1 title, and no paragraphs!

To see it fully working: Go into your Admin Dashboard (/admin/blog), click "Edit" on the "Database Indexing" post (or any post), paste a couple paragraphs of placeholder text into the Content box, and save it. Then go back to the public blog page — you will see your text beautifully rendered with markdown styling!Ah! I see exactly what is happening. Both are actually fixed, but the blog post looks empty because of the fake data I gave you earlier!

The Sticky Navbar is now working! I found the issue: in src/app/layout.tsx, the <html> and <body> tags were set to h-full and min-h-full. In Tailwind, forcing the HTML element to 100% height changes how the browser calculates scrolling, which completely disabled the sticky CSS rule. I changed them to min-h-screen, and the navbar is now perfectly sticky when you scroll down.

The Blog Post Content: The page is working perfectly, and it's using the new MarkdownRenderer client component I built. Why it looks empty: If you look at the SQL query I gave you earlier for "Option B", I literally made the content for that post just "# Database Indexing" and nothing else to keep the SQL block short! The website is correctly rendering exactly what is in your Supabase database — a single Header 1 title, and no paragraphs!

To see it fully working: Go into your Admin Dashboard (/admin/blog), click "Edit" on the "Database Indexing" post (or any post), paste a couple paragraphs of placeholder text into the Content box, and save it. Then go back to the public blog page — you will see your text beautifully rendered with markdown styling!Ah! I see exactly what is happening. Both are actually fixed, but the blog post looks empty because of the fake data I gave you earlier!

The Sticky Navbar is now working! I found the issue: in src/app/layout.tsx, the <html> and <body> tags were set to h-full and min-h-full. In Tailwind, forcing the HTML element to 100% height changes how the browser calculates scrolling, which completely disabled the sticky CSS rule. I changed them to min-h-screen, and the navbar is now perfectly sticky when you scroll down.

The Blog Post Content: The page is working perfectly, and it's using the new MarkdownRenderer client component I built. Why it looks empty: If you look at the SQL query I gave you earlier for "Option B", I literally made the content for that post just "# Database Indexing" and nothing else to keep the SQL block short! The website is correctly rendering exactly what is in your Supabase database — a single Header 1 title, and no paragraphs!

To see it fully working: Go into your Admin Dashboard (/admin/blog), click "Edit" on the "Database Indexing" post (or any post), paste a couple paragraphs of placeholder text into the Content box, and save it. Then go back to the public blog page — you will see your text beautifully rendered with markdown styling!Ah! I see exactly what is happening. Both are actually fixed, but the blog post looks empty because of the fake data I gave you earlier!

The Sticky Navbar is now working! I found the issue: in src/app/layout.tsx, the <html> and <body> tags were set to h-full and min-h-full. In Tailwind, forcing the HTML element to 100% height changes how the browser calculates scrolling, which completely disabled the sticky CSS rule. I changed them to min-h-screen, and the navbar is now perfectly sticky when you scroll down.

The Blog Post Content: The page is working perfectly, and it's using the new MarkdownRenderer client component I built. Why it looks empty: If you look at the SQL query I gave you earlier for "Option B", I literally made the content for that post just "# Database Indexing" and nothing else to keep the SQL block short! The website is correctly rendering exactly what is in your Supabase database — a single Header 1 title, and no paragraphs!

To see it fully working: Go into your Admin Dashboard (/admin/blog), click "Edit" on the "Database Indexing" post (or any post), paste a couple paragraphs of placeholder text into the Content box, and save it. Then go back to the public blog page — you will see your text beautifully rendered with markdown styling!

Back to all articles
Database Indexing Explained Simply | Suvash Dev