tree-export
v1.0.8
Published
Export your folder structure as a tree in various formats
Downloads
17
Maintainers
Readme
tree-export
Export your project folder structure as a tree in multiple formats (md, txt, mdx, png, jpg, svg).
🚀 Features
- Generate a visual tree of your folder structure easily.
- Export output in Markdown (
.md), plain text (.txt), MDX (.mdx), and image formats (png,jpg,svg). - Supports excluding files and folders based on
.gitignore. - Simple and user-friendly CLI interface.
📦 Installation
Install globally via npm:
npm install -g tree-exportOr run directly using npx without installing:
npx tree-export -d ./target-folder -o output.md -f md⚙️ Usage
tree-export [options]Options
| Parameter | Description | Default |
| --------------------- | ------------------------------------------------------ | ----------------------- |
| -d, --dir <path> | Target directory to generate the tree from | Current directory (.) |
| -o, --output <file> | Output file path including filename | tree-output.md |
| -f, --format <type> | Output format: txt, md, mdx, png, jpg, svg | md |
💡 Examples
- Export current folder structure as a Markdown file:
npx tree-export -d . -o structure.md -f md- Export a specific folder structure as a plain text file:
npx tree-export -d ./src -o src-tree.txt -f txt- Export folder structure as an MDX file:
npx tree-export -d ./project -o project-structure.mdx -f mdx- Export folder structure as an SVG image:
npx tree-export -d ./src -o src-tree.svg -f svg- Export as PNG image:
npx tree-export -d ./src -o src-tree.png -f png- Export as JPG image:
npx tree-export -d ./src -o src-tree.jpg -f jpg📋 Notes
- When a
.gitignorefile is detected, you will be prompted whether to exclude ignored files and folders. - SVG output uses
<foreignObject>, which may have limited support in some SVG viewers. - The CLI supports relative and absolute paths for both input directory and output file.
🛠️ How It Works
bin/index.jshandles CLI arguments and orchestrates the process.lib/tree-generator.jsreads and filters the directory tree, respecting.gitignoreand default ignore patterns.utils/export.jsgenerates the output in the requested format.
📝 License
MIT © [Osman Beyhan]
🤝 Contributing
Contributions, issues, and feature requests are welcome! Feel free to check the issues page and submit pull requests.
Happy tree exporting! 🌳🚀
