npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

tree-copy

v0.0.3

Published

_description_

Readme

Tree-copy

npm version npm downloads bundle JSDocs License

description

A simple and fast directory tree generator with clipboard support and automatic .gitignore integration.

Features

  • 📋 Default clipboard copy - Automatically copies output to clipboard
  • 🔍 Smart .gitignore integration - Respects your project's .gitignore patterns
  • 🌳 Clean tree visualization - Beautiful directory structure display
  • Fast and lightweight - Minimal dependencies, maximum performance
  • 🎯 Flexible filtering - Custom ignore patterns and depth control

Installation

# Install globally
npm install -g tree-copy

# Or use with npx
npx tree-copy

Basic Usage

# Generate and copy current directory tree (default behavior)
tc

# Generate tree for specific directory
tc /path/to/directory

# Just display without copying
tc --no-copy

Advanced Options

# Set maximum depth
tc --depth 3
tc -d 5

# Show hidden files
tc --hidden

# Additional ignore patterns (beyond .gitignore)
tc --ignore "*.log,temp,cache"

# Combine multiple options
tc --depth 3 --hidden --ignore "*.tmp"

Command Aliases

| Command | Description | |---------|-------------| | tree-copy | Full command name | | tc | Short alias (recommended) |

Examples

# Quick copy current directory structure (most common usage)
tc

# Analyze specific project with custom depth
tc ~/my-project --depth 4

# Show all files including hidden ones
tc --hidden

# Display only without copying to clipboard
tc --no-copy

# Custom ignore patterns in addition to .gitignore
tc --ignore "*.tmp,cache,logs"

Options Reference

Usage: tc [path] [options]

Arguments

| Argument | Description | |----------|-------------| | path | Directory path to analyze (default: current directory) |

Options

| Option | Description | |--------|-------------| | -c, --copy | Copy output to clipboard (default: enabled) | | --no-copy | Disable clipboard copy | | -d, --depth <number> | Maximum depth to traverse (default: 5) | | --hidden | Show hidden files and directories | | --ignore <patterns> | Additional ignore patterns (comma-separated) | | -h, --help | Display help information | | -v, --version | Display version number |

Note: Automatically reads .gitignore file if present

Sample Output

my-project/
├── package.json
├── README.md
├── src/
│   ├── index.ts
│   ├── components/
│   │   ├── App.tsx
│   │   └── Header.tsx
│   └── utils/
│       └── helpers.ts
├── tests/
│   └── app.test.ts
└── dist/
    └── index.js

📋 Copied to clipboard!

Smart .gitignore Integration

The tool automatically reads and respects your project's .gitignore file:

  • Automatic detection - Finds .gitignore in the target directory
  • Pattern matching - Supports wildcards (*.log), directories (dist/), etc.
  • Layered filtering - Combines default patterns + .gitignore + custom --ignore patterns
  • No configuration needed - Works out of the box with existing projects

Platform Support

Clipboard Requirements

  • macOS - pbcopy (built-in)
  • Windows - clip (built-in)
  • Linux - Install xclip or xsel
# Ubuntu/Debian
sudo apt-get install xclip

# Fedora/RHEL
sudo dnf install xclip

# Arch Linux
sudo pacman -S xclip

Tips

Tips

  • Use tc for the quickest way to copy directory structure
  • The tool respects your project's .gitignore automatically
  • Use --no-copy if you only want to display the tree
  • Use --depth to limit output for large projects
  • Combine with other commands: tc && echo "Tree copied!"