Interactive menu for common Spellbook tasks. No flags to memorize.
python manage.py spellbook_wizard
Main Menu
Spellbook Wizard
[1] Batch process
[2] Validate
[0] Exit
>
Type a number and press Enter. [0] exits or goes back.
Batch Process
Run markdown processing commands.
Batch Process
[1] Process markdown (spellbook_md)
[0] ← Back
>
Process Markdown
Runs spellbook_md — the full pipeline:
-
Discovers SpellBlocks from all apps
-
Finds markdown files in
SPELLBOOK_MD_PATH -
Processes SpellBlocks and markdown
-
Generates Django views, URLs, templates
-
Creates sitemaps and navigation
Same as running:
python manage.py spellbook_md
Validate
Check your content for issues.
🔍 Validate
[1] Validate frontmatter (spellbook_validate)
[2] Find dead links
[0] ← Back
>
Validate Frontmatter
Checks every markdown file for required metadata.
Required fields:
| Field | Type | Example |
|---|---|---|
title |
string | "Getting Started" |
published |
date (YYYY-MM-DD) | 2025-12-12 |
author |
string | "Jane Doe" |
tags |
list (≥1 item) | ["guide", "setup"] |
Example output:
❌ docs/getting-started.md
• Missing: author
• tags: must have at least 1 item
❌ blog/old-post.md
• published: invalid date format "Dec 2025" (expected YYYY-MM-DD)
────────────────────────────────
⚠️ 2 pages with issues
✅ 45 pages valid
Run interactive fix? (y/n):
Interactive fix mode:
When issues are found, you can fix them one by one:
Fixing: docs/getting-started.md
Missing: author
Enter author (or 'skip'): Jane Doe
✓ Added author
tags: must have at least 1 item
Enter tags (comma-separated, or 'skip'): guide, tutorial
✓ Added tags
File updated!
Shortcuts:
-
today— inserts current date forpublishedfield -
skip— skip this field, leave unfixed
Find Dead Links
Coming soon. This feature is planned but not yet implemented.
Will scan markdown files for broken internal links and missing pages.
Standalone Commands
Every wizard action is also available as a direct command.
spellbook_validate
# Audit mode (report only)
python manage.py spellbook_validate
# Interactive fix mode
python manage.py spellbook_validate --fix
# Specific directory
python manage.py spellbook_validate --source-path /path/to/content
spellbook_md
python manage.py spellbook_md
When to Use the Wizard
Use the Wizard When...
-
You're new to Spellbook
-
You forget command names or flags
-
You want guided validation with fixes
-
You prefer menus over typing commands
Use Direct Commands When...
-
You're in a CI/CD pipeline
-
You're scripting deployments
-
You know exactly what you need
-
Speed matters more than guidance
Keyboard Shortcuts
| Key | Action |
|---|---|
0 |
Back / Exit |
Ctrl+C |
Exit immediately |
| Number | Select menu option |
Enter |
Confirm selection |