Skip to content

1AMLabs/tree-visualizer

Repository files navigation

📁 tree-visualizer

Build Status NPM version License Node.js Downloads

🧰 Generate a clean and customizable visual file tree of any directory from your terminal.


✨ Features

  • 📂 Outputs a visual tree of files and folders
  • 🚫 Supports ignoring files via .gitignore, .tree-visualizer-ignore, or CLI patterns
  • 📏 Optionally includes file sizes
  • 📉 Configurable maximum folder depth
  • 🖨️ Outputs to console or a file

📦 Installation

npm install -g @1amlabs/tree-visualizer

🛠️ Usage

tree-visualizer [options]
Option Description
--start <dir> Directory to start scanning (default: .)
--out <file> Output file path (writes plain text tree)
--ignore <patterns> Ignore patterns (comma-separated or repeated, e.g., node_modules,**/*.ts)
--sizes Include file sizes in the output
--max-depth <n> Maximum folder depth to scan (default: unlimited)
--debug Enable debug logging
--use-gitignore Use .gitignore patterns for ignoring files
--ignoreFile Specify the location of your ignore file

🧪 Examples

Display the file tree of the current directory:

tree-visualizer

Scan a specific folder while ignoring node_modules and TypeScript files:

tree-visualizer --start src --ignore node_modules,**/*.ts

Include file sizes and limit the depth to 2 levels:

tree-visualizer --sizes --max-depth 2

Write the result to a file:

tree-visualizer --out tree.txt

Use your project's .gitignore for ignore patterns:

tree-visualizer --use-gitignore

🧩 Programmatic Usage

You can also use tree-visualizer as a library in your Node.js projects:

import { generateTree } from '@1amlabs/tree-visualizer';

await generateTree(
  './my-folder',
  'tree.txt',
  ['node_modules', '**/*.log'],
  { showSizes: true, maxDepth: 2, debug: false }
);

📄 License

MIT © 1AMLabs

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published