mix ash_dispatch.gen.previews (AshDispatch v0.5.1)
View SourceGenerates static HTML/text preview files for all AshDispatch events.
This task renders each event template with its sample_data/0 and outputs
static files for easy preview, documentation, or CI validation.
Usage
mix ash_dispatch.gen.previews # Generate all previews
mix ash_dispatch.gen.previews --output priv/previews # Custom output dir
mix ash_dispatch.gen.previews --check # CI mode - fail if outdated
mix ash_dispatch.gen.previews --verbose # Show detailed outputOutput Structure
Previews are generated to priv/ash_dispatch/previews/ by default:
priv/ash_dispatch/previews/
├── index.html # Index with links to all previews
├── user.password_reset/
│ ├── email.user.html # Rendered HTML email for user audience
│ ├── email.user.txt # Rendered text email for user audience
│ └── metadata.json # Event metadata (subject, from, etc.)
├── user.email_confirmation/
│ ├── email.user.html
│ ├── email.user.txt
│ └── metadata.json
└── orders.created/
├── email.user.html # User audience template
├── email.admin.html # Admin audience template
├── email.admin.summary.html # Admin with 'summary' variant
├── email.user.txt
├── email.admin.txt
├── email.admin.summary.txt
└── metadata.jsonIntegration with Ash Codegen
This task can be run alongside other generators:
mix ash.codegen # Runs all extension codegens
mix ash_dispatch.gen.previews # Run after to generate previewsUse Cases
- Design review: Share rendered emails with designers
- Documentation: Include in project docs
- CI validation: Ensure templates render without errors
- Quick testing: View all emails without running the app