This document describes how DocGen can be configured.
DocGen works out of the box with sensible defaults and typically requires little or no configuration.
Configuration may be provided through:
- Command-line options
- Configuration files
- Environment variables (if supported)
- Future extensions
By default, DocGen:
- Scans the current directory
- Generates a PROJECT_STRUCTURE.md file
- Uses the "default" profile
- Shows full directory tree
- Does not include hidden files
Example:
doc-gen structure generateMost configuration is provided through command-line options.
doc-gen structure generate --profile minimal
doc-gen structure generate --profile default
doc-gen structure generate --profile detaileddoc-gen structure generate --smartSmart mode automatically adjusts:
- Maximum depth based on project size
- File visibility based on project complexity
- Directory collapsing
doc-gen structure generate --max-depth 2
doc-gen structure generate --max-depth 5doc-gen structure generate --show-files
doc-gen structure generate --hide-filesdoc-gen init --dry-run
doc-gen structure generate --dry-runDry-run blocks initialization and generated Markdown writes while allowing read-only scanning and preview rendering.
Doc Gen looks for configuration in:
.config/doc_gen/config.toml
Priority:
CLI Options
↓
Project Configuration (`.config/doc_gen/config.toml`)
↓
Default Settings
Create .config/doc_gen/config.toml:
[tool.doc-gen.cli.execution]
dry_run = false
[tool.doc-gen.cli.structure]
# Profile: minimal, default, or detailed
profile = "default"
# Maximum directory depth
max_depth = 3
# Show individual files
show_files = true
# Enable smart mode
smart_mode = falseFuture versions may support environment variables.
Example:
DOC_GEN_PROFILE=minimal
DOC_GEN_MAX_DEPTH=2
DOC_GEN_SMART=trueWhen multiple configuration sources exist, the following priority should apply:
Command Line Arguments
↓
Environment Variables
↓
Configuration File
↓
Built-in Defaults
Store project configuration files in version control.
Example:
.projectstructure.toml
Only override settings when necessary.
Avoid machine-specific settings whenever possible.
- Installation Guide
- Usage Guide
- Project Structure Guide
- Developer Guide
- Dry-run Safety Guide
- Infrastructure Guide