---
phase: 04-docs
plan: 01
type: execute
wave: 1
depends_on: []
files_modified:
  - mkdocs.yml
  - docs/index.md
  - docs/stylesheets/extra.css
  - docs/images/logo.svg
  - docs/CNAME
  - overrides/home.html
autonomous: true

must_haves:
  truths:
    - "mkdocs build completes without errors"
    - "mkdocs serve shows a landing page with hero section and AIM purple branding"
    - "Site navigation shows Home, Quickstart, Concepts, Scanners (flat list), Deanonymize"
  artifacts:
    - path: "mkdocs.yml"
      provides: "Full MkDocs Material configuration with nav, theme, extensions, custom CSS"
      contains: "site_name: Meshulash Guard"
    - path: "docs/stylesheets/extra.css"
      provides: "Custom color scheme matching AIM dashboard purple (#8b5cf6)"
      contains: "data-md-color-scheme"
    - path: "overrides/home.html"
      provides: "Hero landing page template with product pitch and CTA buttons"
      contains: "mdx-hero"
    - path: "docs/index.md"
      provides: "Landing page content with quickstart code snippet"
      contains: "template: home.html"
    - path: "docs/images/logo.svg"
      provides: "Meshulash logo for site header"
    - path: "docs/CNAME"
      provides: "Custom domain file preserved across deploys"
  key_links:
    - from: "mkdocs.yml"
      to: "docs/stylesheets/extra.css"
      via: "extra_css config"
      pattern: "extra_css.*extra\\.css"
    - from: "mkdocs.yml"
      to: "overrides/"
      via: "custom_dir config"
      pattern: "custom_dir.*overrides"
    - from: "docs/index.md"
      to: "overrides/home.html"
      via: "template frontmatter"
      pattern: "template.*home\\.html"
---

<objective>
Set up the MkDocs Material documentation site skeleton with custom AIM dashboard branding, hero landing page, and complete navigation structure.

Purpose: Every subsequent docs plan depends on mkdocs.yml and the site skeleton existing. This plan creates the foundation so content pages can be written and built.
Output: A buildable MkDocs site with a branded hero landing page, custom purple color scheme, and complete nav structure (pages will be stubs until filled by Plans 02 and 03).
</objective>

<execution_context>
@/Users/shalev/.claude/get-shit-done/workflows/execute-plan.md
@/Users/shalev/.claude/get-shit-done/templates/summary.md
</execution_context>

<context>
@.planning/PROJECT.md
@.planning/ROADMAP.md
@.planning/STATE.md
@.planning/phases/04-docs/04-CONTEXT.md
@.planning/phases/04-docs/04-RESEARCH.md
</context>

<tasks>

<task type="auto">
  <name>Task 1: Create mkdocs.yml, custom CSS, and copy logo</name>
  <files>mkdocs.yml, docs/stylesheets/extra.css, docs/images/logo.svg, docs/CNAME</files>
  <action>
1. Install mkdocs-material into the project venv:
   ```
   .venv/bin/pip install "mkdocs-material==9.*"
   ```

2. Create `mkdocs.yml` at project root with the EXACT configuration from RESEARCH.md Pattern 1 (lines 74-140). Key points:
   - site_name: Meshulash Guard
   - theme.name: material, theme.custom_dir: overrides, theme.palette.scheme: meshulash
   - font: Roboto / Roboto Mono
   - logo and favicon: images/logo.svg
   - features: navigation.instant, navigation.instant.prefetch, navigation.tracking, navigation.top, navigation.footer, content.code.copy, content.code.annotate, content.tabs.link
   - markdown_extensions: tables, admonition, attr_list, md_in_html, pymdownx.details, pymdownx.superfences, pymdownx.highlight (with anchor_linenums, line_spans, pygments_lang_class), pymdownx.inlinehilite, pymdownx.tabbed (alternate_style), pymdownx.snippets
   - extra_css: stylesheets/extra.css
   - nav structure exactly:
     ```
     nav:
       - Home: index.md
       - Quickstart: quickstart.md
       - Concepts: concepts.md
       - Scanners:
         - PIIScanner: scanners/pii.md
         - TopicScanner: scanners/topic.md
         - ToxicityScanner: scanners/toxicity.md
         - CyberScanner: scanners/cyber.md
         - JailbreakScanner: scanners/jailbreak.md
       - Deanonymize: deanonymize.md
     ```
   - copyright: Copyright &copy; 2026 Meshulash

3. Create `docs/stylesheets/extra.css` with the EXACT CSS from RESEARCH.md Pattern 2 (lines 161-178): custom color scheme "meshulash" with primary #8b5cf6, light #a78bfa, dark #7c3aed, accent #8b5cf6, bg #ffffff, fg #1f1f1f.

4. Copy the Meshulash logo SVG from `/Users/shalev/Desktop/AIM/front/public/Meshulash.svg` to `docs/images/logo.svg`.

5. Create `docs/CNAME` containing just `docs.meshulash.ai` (prevents custom domain deletion on gh-deploy).

6. Create stub files so mkdocs build does not error on missing pages. Create empty placeholder files at:
   - docs/quickstart.md (just `# Quickstart` heading)
   - docs/concepts.md (just `# Concepts` heading)
   - docs/scanners/pii.md (just `# PIIScanner` heading)
   - docs/scanners/topic.md (just `# TopicScanner` heading)
   - docs/scanners/toxicity.md (just `# ToxicityScanner` heading)
   - docs/scanners/cyber.md (just `# CyberScanner` heading)
   - docs/scanners/jailbreak.md (just `# JailbreakScanner` heading)
   - docs/deanonymize.md (just `# Deanonymize` heading)
  </action>
  <verify>Run `.venv/bin/mkdocs build --strict` from project root. Must complete with zero errors and zero warnings about missing files.</verify>
  <done>mkdocs.yml exists with full nav, extra.css has AIM purple scheme, logo.svg copied, CNAME present, all stub pages exist, `mkdocs build --strict` passes.</done>
</task>

<task type="auto">
  <name>Task 2: Create hero landing page template and index.md content</name>
  <files>overrides/home.html, docs/index.md</files>
  <action>
1. Create `overrides/home.html` based on RESEARCH.md Pattern 3 (lines 197-241). This is a template override that extends main.html and overrides the `tabs` block to add a hero section. Key elements:
   - Hero section with class `mdx-hero` containing:
     - h1: "Meshulash Guard"
     - Tagline paragraph: "Protect your LLM applications from PII leakage, toxic content, and cyber threats with a few lines of Python."
     - Two CTA buttons: "Get Started" (primary, links to quickstart/) and "Explore Scanners" (secondary, links to scanners/pii/)
   - Below the hero, a section rendering `{{ page.content }}` (the index.md markdown content)
   - Inline CSS styles for the hero section:
     - `.md-main { flex-grow: 0; }` (prevents content from stretching)
     - `.mdx-hero` centered layout with padding
     - h1 colored with `var(--md-primary-fg-color)` (the purple)
     - Buttons using `.md-button` and `.md-button--primary` MkDocs Material classes

2. Update `docs/index.md` with frontmatter and content:
   ```yaml
   ---
   template: home.html
   hide:
     - navigation
     - toc
   ---
   ```
   Below the frontmatter, add a brief quickstart snippet that appears below the hero. This should be a minimal "Install and scan in 30 seconds" code block:
   ```python
   pip install meshulash-guard
   ```
   ```python
   from meshulash_guard import Guard, Action
   from meshulash_guard.scanners import PIIScanner, PIILabel

   guard = Guard(api_key="your-api-key", tenant_id="your-tenant-id")

   result = guard.scan_input(
       text="My email is john@example.com",
       scanners=[PIIScanner(labels=[PIILabel.EMAIL_ADDRESS], action=Action.REPLACE)],
   )

   print(result.processed_text)
   # "My email is [EMAIL_ADDRESS-A1B2]"
   ```

   The landing page should feel like a sales pitch THEN code. Keep it concise -- the quickstart page has the full walkthrough.
  </action>
  <verify>Run `.venv/bin/mkdocs serve` and visit http://127.0.0.1:8000/ -- hero section visible with purple branding, two buttons work (even though target pages are stubs), code snippet renders with syntax highlighting. Stop the server after checking.</verify>
  <done>Landing page shows hero with "Meshulash Guard" title in purple, tagline, two CTA buttons, and a code snippet below. `mkdocs build --strict` still passes.</done>
</task>

</tasks>

<verification>
- `mkdocs build --strict` completes with zero errors
- `site/` directory is generated with all expected HTML files
- `site/index.html` contains the hero section markup
- `site/stylesheets/extra.css` contains the custom color scheme
- `site/images/logo.svg` exists
- `site/CNAME` contains `docs.meshulash.ai`
</verification>

<success_criteria>
- MkDocs Material site skeleton is complete and buildable
- AIM purple branding (#8b5cf6) applied via custom color scheme
- Hero landing page renders with product pitch and quickstart code
- Full navigation structure in place (all pages are stubs or complete)
- Logo, CNAME, and custom CSS all present
</success_criteria>

<output>
After completion, create `.planning/phases/04-docs/04-01-SUMMARY.md`
</output>
