Configure Intent

2. Target Framework
3. Styling Framework
4. Aesthetic Vibe
5. Code Quality Guardrails

Structured Prompt Output

Copy this structured system context directly into your chat window before generating your codebase.

Configure Rule Parameters

Modular cursor rules (`.mdc` files) apply constraints contextually to files matching their globs. Check the stacks present in your workspace:

Rules File (.mdc)

Save this file at `.cursor/rules/vibe-guidelines.mdc` in your workspace root.
Progress: 0 / 6 Passed

1. Placeholder URL Leakage

The Trap: Leaving hardcoded mock URLs like `https://example.com` in site layouts, canonical links, configuration objects, or sitemaps.

The Fix: Derive the production URL dynamically from environment variables or a single configuration file.

// src/consts.ts
export const SITE_URL = import.meta.env.PROD 
  ? 'https://vibecodeguru.com' 
  : 'http://localhost:4321';

2. Div-Soup & Semantic Collapse

The Trap: AI models default to wrapping layouts in generic, nested `

` blocks instead of semantic containers. This harms SEO ranking and accessibility.

The Fix: Force the usage of structural elements: `

`, `

3. Relative Canonical Tags

The Trap: Canonical tags identify the master copy of a page. Writing relative paths (e.g., ``) is invalid for search index engines.

The Fix: Canonical URLs must be fully qualified absolute domains.

<!-- Incorrect -->
<link rel="canonical" href="/blog" />

<!-- Correct -->
<link rel="canonical" href="https://vibecodeguru.com/blog" />

4. Forgotten Alt & Sizing Attributes

The Trap: Omitting `alt`, `width`, or `height` attributes on images, leading to cumulative layout shifts (CLS) and accessibility flags.

The Fix: Always declare width/height explicitly, and provide a descriptive alt tag. In Astro, use the native <Image /> component.

import { Image } from 'astro:assets';
import mascot from '../assets/mascot.png';

<Image 
  src={mascot} 
  alt="Claymation description of the guru mascot" 
  width={400} 
  height={400} 
/>

5. CSR Hydration Overuse

The Trap: Adding `client:load` or `client:only` directives in Astro for purely static content (e.g. headers, text arrays). This ships unnecessary Javascript to clients.

The Fix: Render components server-side (static) by default, and hydrate only interactive components (like calculators or checklists).

<!-- Static by default -->
<SidebarMenu />

<!-- Hydrated only if interactive -->
<SearchInput client:visible />

6. Invalid or Incomplete Schema Markup

The Trap: Supplying invalid JSON-LD schema blocks (trailing commas, missing fields) or ignoring standard metadata fields like `author` and `datePublished`.

The Fix: Carefully format JSON-LD and include all required structured schema attributes for rich search previews.

<script type="application/ld+json">
  {
    "@context": "https://schema.org",
    "@type": "BlogPosting",
    "headline": "Title of Post",
    "datePublished": "2026-06-17T00:00:00Z",
    "author": {
      "@type": "Person",
      "name": "Guru"
    }
  }
</script>

Rules to Compress

Paste your verbose rules, prompt guidelines, or custom instructions. We will strip the fluff and compile them into a high-density, token-saving prompt format.

Compression Level Preset

Minified Rules

Original Tokens 0
Minified Tokens 0
Savings 0%
Est. token savings calculations are based on the standard 1 token ≈ 4 characters rule.

llms.txt Sitemap Builder

Generate an LLM-friendly documentation sitemap for AI crawlers like ChatGPT, Gemini, and Cursor. Drop the generated code as `llms.txt` in your project's `public/` directory.


Documentation Sections

llms.txt Content

Host this file at the root of your domain (e.g. /llms.txt) to instruct search bots.
Copied to Clipboard!