Tree Maker is a powerful Visual Studio Code extension that allows you to effortlessly generate a directory tree of your project in various formats, including Markdown. Whether you want to visualize the structure of your project or share it with others, Tree Maker makes it simple to create a clean and easy-to-read file tree representation.
Tree Maker is designed to help developers streamline their workflow and improve project organization. By providing a visual representation of the project structure, Tree Maker enables you to quickly navigate and understand the relationships between files and directories.
Get started with Tree Maker today and take your project organization to the next level!
- VSCode 1.76.0 or later
- Customizable Format: Generate directory trees in multiple formats, such as Markdown, JSON, and more.
- Flexible Depth Control: Specify the depth of the directory tree, giving you control over how detailed the structure should be.
- Recursive Directory Scanning: Automatically scans nested folders and generates a hierarchical structure, making it ideal for projects of any size.
- Save as File: Save the directory tree as a file (e.g., tree.md) within your project for later use or sharing.
Configure your project by creating or updating a settings.json file at the project's root. If you already have a .vscode/settings.json
file, skip the first two steps.
-
Open the command palette in VSCode:
CTRL + SHIFT + P
(Windows)CMD + SHIFT + P
(Mac OS)
-
Type
Preferences: Open Workspace Settings (JSON)
. -
In the
.vscode/settings.json
file, copy and paste the following settings:{ "treeMaker.files.selectedOutputFormat": "markdown", // markdown, json, yaml, xml, csv, txt "treeMaker.files.outputFolder": "tree-maker", // Output folder for the tree file "treeMaker.files.outputFileName": "structure", // Output file name "treeMaker.files.outputFilePrefix": "", // Output file prefix "treeMaker.files.outputFileSuffix": "", // Output file suffix "treeMaker.files.outputFileSeparator": "_", // Output file separator "treeMaker.search.ignoreFilePathPatternOnExport": ["**/dist/**", "**/tree-maker/**"], // Ignore file path patterns "treeMaker.search.shouldListOnlyFiles": false, // List only files "treeMaker.search.maxSearchRecursionDepth": 5, // Maximum search recursion depth "treeMaker.search.shouldListOnlyVisibleFiles": true, // List only visible files "treeMaker.search.keepGitignorePreferences": false, // Keep .gitignore preferences }
-
Restart VS Code
Your project is now set up to automatically format code upon saving.
Configure Tree Maker settings in your .vscode/settings.json
file to tailor the behavior of the tree file generation process according to your project's needs.
treeMaker.files.selectedOutputFormat
: The format of the output file. Supported formats includemarkdown
,json
,yaml
,xml
,csv
, andtxt
.treeMaker.files.outputFolder
: The output folder for the tree file. By default, the file is saved in the root directory of the project.treeMaker.files.outputFileName
: The name of the output file. By default, the file is namedstructure
.treeMaker.files.outputFilePrefix
: The prefix of the output file name.treeMaker.files.outputFileSuffix
: The suffix of the output file name.treeMaker.files.outputFileSeparator
: The separator used to join the prefix, name, and suffix of the output file.treeMaker.search.ignoreFilePathPatternOnExport
: An array of file path patterns to ignore when exporting the tree file.treeMaker.search.shouldListOnlyFiles
: A boolean value indicating whether to list only files in the tree structure.treeMaker.search.maxSearchRecursionDepth
: The maximum search recursion depth when generating the tree structure.treeMaker.search.shouldListOnlyVisibleFiles
: A boolean value indicating whether to list only visible files in the tree structure.treeMaker.search.keepGitignorePreferences
: A boolean value indicating whether to keep the.gitignore
preferences when generating the tree structure.
For more information on configuring Tree Maker settings, refer to the Project Settings section.
If you enjoy using Tree Maker, consider following me for updates on this and future projects:
This extension was created using VSXpert, a template that helps you create Visual Studio Code extensions with ease. VSXpert provides a simple and easy-to-use structure to get you started quickly.
Tree Maker is open-source software, and we welcome contributions from the community. If you'd like to contribute, please fork the GitHub repository and submit a pull request with your changes.
Before contributing, please read our Contribution Guidelines for instructions on coding standards, testing, and more.
We are committed to providing a friendly, safe, and welcoming environment for all, regardless of gender, sexual orientation, disability, ethnicity, religion, or similar personal characteristic. Please review our Code of Conduct before participating in our community.
For a complete list of changes, see the CHANGELOG.md
- Manuel Gil - Owner - ManuelGil
See also the list of contributors who participated in this project.
This extension is licensed under the MIT License. See the MIT License for details.