Overview
Draw Folder Structure provides several configuration options to customize how your folder structures are generated. All settings can be configured through VS Code’s settings interface or by editing yoursettings.json file directly.
Accessing Settings
There are two ways to access and modify the extension’s configuration:- Settings UI
- settings.json
- Open VS Code Settings (
Ctrl+,orCmd+,on Mac) - Search for “Draw Folder Structure”
- Modify any setting directly in the UI
Configuration Options
Exclude Patterns
Setting:draw.folder.structure.exclude
Type: Array of strings
Default:
Style
Setting:draw.folder.structure.style
Type: String (enum)
Default: "EmojiDashes"
Options: ClassicDashes, MinimalistDots, EmojiFun, EmojiMinimalist, EmojiDashes, Arrows, NestedCircles, BoldBlocks, SlashSeparators, ChevronIndicators, DotDashMix, Triangles, Zigzag, PipesAndHyphens, NestedSquares, CirclesAndLines, SparklesDesing, TrailDesign, FloralDesign, GalacticDesign
Description: The visual style used to render the folder structure.
See the Styling Options guide for visual examples of each style.
Allow Recursion
Setting:draw.folder.structure.allowRecursion
Type: Boolean
Default: true
Description: Controls whether the extension explores subdirectories recursively.
true: Generates a complete project tree with all subdirectoriesfalse: Only includes files and folders in the root of the selected directory
Respect Gitignore
Setting:draw.folder.structure.respectGitignore
Type: Boolean
Default: false
Description: Determines whether to honor rules defined in your project’s .gitignore file.
true: Excludes files and folders that match.gitignorepatternsfalse: Includes all files regardless of.gitignorerules
When enabled, this setting helps omit dependencies and temporary files that aren’t relevant to the structure view.
Configuration Examples
Basic Configuration
Minimal configuration with default exclusions and style:Shallow Structure (Non-Recursive)
Generate only the top-level structure without diving into subdirectories:Respecting .gitignore
Exclude files based on your.gitignore rules:
Full Configuration Example
Complete configuration with all options:Best Practices
Keep Default Exclusions
Keep Default Exclusions
The default exclusion patterns (
node_modules, .git, dist, .next, out) are commonly used directories that bloat folder structures. Keep these in your configuration and add additional patterns as needed.Choose the Right Style
Choose the Right Style
Different styles work better for different contexts:
- Use ClassicDashes or PipesAndHyphens for traditional documentation
- Use EmojiDashes or EmojiFun for more visual, engaging documentation
- Use MinimalistDots for clean, simple structures
Combine exclusions with .gitignore
Combine exclusions with .gitignore
When
respectGitignore is enabled, it works in addition to your exclude patterns. Use both together to have fine-grained control:.gitignorefor version control exclusionsexcludepatterns for documentation-specific exclusions
Use allowRecursion Strategically
Use allowRecursion Strategically
For large projects, consider:
- Setting
allowRecursion: falsewhen documenting only the top-level structure - Using specific exclusion patterns instead of disabling recursion when you need selective depth
Workspace vs User Settings
User Settings: Apply globally across all VS Code projects- File location:
%APPDATA%\Code\User\settings.json(Windows) or~/Library/Application Support/Code/User/settings.json(Mac)
- File location:
.vscode/settings.jsonin your project root
Example Workspace Configuration
Create a.vscode/settings.json file in your project:
Next Steps
Styling Options
Explore all 20+ visual styles available
Exclusion Patterns
Learn glob pattern syntax and common exclusion patterns
Advanced Usage
Master advanced features and optimization techniques
Quick Start
Get started with basic usage