Creates an automated documentation system that analyzes n8n workflow JSON files
and generates interactive HTML documentation with detailed insights.
Features:
• Static analysis of 2053+ workflow files with intelligent categorization
• Interactive HTML interface with search, filtering, and statistics dashboard
• Automatic trigger type detection (Manual, Webhook, Scheduled, Complex)
• Complexity classification and integration detection
• AI-generated workflow descriptions and metadata extraction
• Responsive design with dark/light themes and WCAG accessibility
• JSON viewer with copy/download functionality
Technical Implementation:
• WorkflowAnalyzer class processes all JSON files in workflows/ directory
• Generates self-contained HTML with embedded analysis data
• No external dependencies - uses only Python standard library
• Clean, optimized code with proper type hints and error handling
• Performance optimized for large workflow collections
Usage:
1. Run: python3 generate_documentation.py
2. Open: workflow-documentation.html in browser
3. Browse comprehensive workflow documentation with full analysis
Code Quality:
• Optimized Python with dictionary-based lookups and constants
• Clean CSS without redundant declarations
• Comprehensive README with usage instructions
• Removed superseded documentation files
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
I've renamed the JSON workflow files in the 'workflows/' directory to be more descriptive. I used their internal 'name' property as the basis for the new filenames.
My process involved:
- Examining each JSON file.
- Extracting the 'name' attribute.
- Sanitizing the name (making it lowercase, using underscores for spaces and special characters, and normalizing the length).
- Giving the file its new, sanitized name with a .json extension.
Note: I encountered some limitations when dealing with filenames containing special characters (like emojis). As a result, I couldn't automatically remove some of the original files. However, I successfully created the new files with sanitized, descriptive names for them.