Turn your codebase into beautiful, easy-to-understand diagrams with just one command.
gramit --path=/your/project/path --output=./combined_code.txt
This command will process your project files and generate a combined code file along with a PlantUML diagram.
gramit --path=/project/src --path=/project/tests --output=./combined.rs --ext=rs,py --ignore=*.tmp --ignore=**/node_modules/** --plantuml-dir=./diagrams --plantuml-filename=project_structure --plantuml-no-timestamp
This example demonstrates using multiple source directories, file extensions, ignore patterns, and customizing the PlantUML output.
One of gramit's most powerful features is its flexible configuration system using JSON files. This allows you to set up complex processing rules and run multiple operations with a single command.
[
{
"source_dirs": ["../meine-mma"],
"file_extensions": ["ts"],
"output_file": "./output/combined_1.txt",
"custom_ignore_patterns": ["*.tmp", "**/node_modules/**", "**/.git/**"],
"auto_generate_diagram": true,
"plantuml_output_dir": "./plantuml_output",
"plantuml_output_filename": "mma_diagram",
"plantuml_include_timestamp": true,
"plantuml_custom_instructions": "Explain like im 5"
},
{
"source_dirs": ["../meine-cookies"],
"file_extensions": ["js"],
"output_file": "./output/combined_2.txt",
"custom_ignore_patterns": ["*.min.js", "**/dist/**", "**/.vscode/**"],
"auto_generate_diagram": true,
"plantuml_output_dir": "./plantuml_output",
"plantuml_output_filename": "cookies_diagram",
"plantuml_include_timestamp": true
}
]