A powerful, AI-powered documentation generator that analyzes your entire project folder and creates comprehensive markdown documentation with parallel processing and smart guardrails.
π Universal File Analysis - Supports code, data, images, archives, and more
π¨ AI-Powered Descriptions - Uses LLM to generate intelligent summaries
β‘ Parallel Processing - Up to 25 concurrent threads for fast processing
π‘οΈ Smart Guardrails - Prevents accidental generation of massive files
π llms.txt Compatible - Creates documentation perfect for AI consumption
πΌοΈ Image Processing - Automatically resizes images for efficient analysis
π¦ Archive Inspection - Analyzes compressed files without extraction
Simply download the summ script and make it executable:
chmod +x summ
# Optional: Move to your PATH
mv summ /usr/local/bin/# Generate documentation for current folder
summ
# Specify custom output file
summ my-project-docs.md
# Use custom thread count
summ -t 10 docs.mdUsage: summ [options] [output-file]
Options:
-h, --help Show this help message
-t, --threads NUM Number of parallel threads (default: 25)
Examples:
summ # Default: ../FolderName.md
summ report.md # Custom filename
summ -t 5 docs.md # Use 5 threads
- Programming Languages:
.py,.js,.ts,.jsx,.tsx,.go,.rs,.java,.c,.cpp,.php,.rb,.swift,.kt,.scala,.sh - Web Technologies:
.html,.css,.scss - Configuration:
.json,.xml,.yaml,.yml,.toml,.ini,.cfg,.conf - Documentation:
.md,.txt - Database:
.sql
- Spreadsheets:
.csv,.xls,.xlsx(automatically converted to CSV) - Logs:
.log
- Images:
.png,.jpg,.jpeg,.gif,.bmp,.svg,.webp - Archives:
.zip,.tar.gz,.tar,.7z,.rar
Summ includes intelligent protection against resource-intensive operations:
π¨ Large operation detected:
π Files to process: 1,247
β οΈ File count exceeds 1000 files
π¨ Large operation detected:
πΎ Estimated output size: 15MB
β οΈ Estimated output size exceeds 10MB
When limits are exceeded, you'll be prompted:
Do you want to continue? (y/N):
Summ processes files concurrently for maximum performance:
- Default: 25 parallel threads
- Configurable: Use
-tto specify thread count - Intelligent: Automatically manages job queuing and completion
- Safe: Combines results in proper order
# Sequential processing: ~5 minutes for 100 files
# Parallel processing: ~30 seconds for 100 files (25 threads)Generates structured markdown documentation with:
# ProjectName Documentation
## Project Structuretest_features/ βββ code/app.py βββ data/sample.csv βββ images/logo.png βββ README.md
### File Analysis
Each file gets detailed analysis:
```markdown
## Code/Text: app.py
**Purpose:** This Python script implements a simple calculator application with basic arithmetic operations including addition and subtraction, designed as a command-line utility for demonstration purposes.
**File:** `code/app.py`
**Type:** py file
**Usage:** Code/configuration/documentation file
<details>
<summary>Full Content</summary>
```python
#!/usr/bin/env python3
# ... full file contents
- LLM Tool: Uses
uvx llmfor AI analysis - Shell: zsh or bash
- Excel Processing:
xlsx2csv,pandas, or macOS Numbers - Image Processing:
sips(macOS) or ImageMagick - Archive Tools:
unzip,tar,7z,unrar
cd my-project
summ
# Creates: ../my-project.md# Fast processing for small projects
summ -t 5 quick-docs.md
# High throughput for large codebases
summ -t 50 comprehensive-docs.md# Generate docs and analyze with Claude
summ project-analysis.md
cat project-analysis.md | llm "Analyze this codebase structure"- Small projects (<50 files):
-t 5 - Medium projects (50-200 files):
-t 15(default works well) - Large projects (200+ files):
-t 50(if system resources allow)
#!/bin/bash
# Auto-generate docs on git commit
cd project-root
summ docs/auto-generated.md
git add docs/auto-generated.md"uvx command not found"
# Install uvx
curl -LsSf https://astral.sh/uv/install.sh | sh
# Then install llm
uvx install llmExcel conversion fails
# Install pandas support
uvx --from pandas python -c "import pandas; print('OK')"Image processing errors
# macOS: sips should be available by default
# Linux: Install ImageMagick
sudo apt install imagemagick # Ubuntu/DebianArchive reading fails
# Install missing tools
brew install p7zip unrar # macOS
sudo apt install p7zip unrar # Ubuntu/DebianMIT License - feel free to use and modify as needed.
Contributions welcome! Areas for improvement:
- Additional file type support
- Performance optimizations
- Enhanced AI prompts
- Better error handling
Generated with Summ - Your AI-powered documentation companion