Skip to main content

Directory tree generator

Create ASCII or Unicode directory trees from file paths and outlines.

my-project
├── public/
│   └── favicon.svg
├── src/
│   ├── components/
│   │   ├── Button.jsx
│   │   └── Input.jsx
│   └── styles/
│       └── theme.css
├── tests/
│   └── app.test.js
├── README.md
└── package.json
22 columns · 13 linesUnicode (UTF-8)

About Directory tree generator

Describe a project structure without running a command-line tree utility. Paste paths or write a small indented outline; the generator merges shared directories and draws the connecting branches for you.

Steps, example, and limitations

How to use it

  1. Paste one file path per line, or select outline mode and use two spaces or one tab per level. A trailing slash marks a folder.
  2. Choose a root label, ASCII or Unicode branches, sorting and optional file/folder counts.
  3. Copy the tree as text or fenced Markdown, or export it for a document or README.

Example

Input

src/index.js
src/style.css
README.md

Result

project
├── src/
│   ├── index.js
│   └── style.css
└── README.md

Things to know

  • The tool reads only the pasted paths or the text file you open. It does not scan your computer or create folders.
  • Use up to 1,500 paths and 20 levels. Parent-directory segments and skipped outline levels are rejected rather than interpreted as filesystem operations.
  • Repeated paths merge into the same branch. A trailing slash is needed to distinguish an empty directory from a file when there are no child paths.

Navigation

Find a tool

Favorites, recent, and quick access

Image compressorReduce image file size with adjustable quality.
JSON formatterFormat, validate, and minify JSON data.
Merge PDFCombine multiple PDF files into one document.
Password generatorGenerate random passwords with configurable character sets.

Preferences

These preferences are saved only in this browser.

Tool input stays in memory and is cleared when you leave the page. Downloaded files are managed by your browser. AI model caches, when used, are separate from these preferences.