How to generate a folder tree
- Choose Select folder and pick a local folder, or switch to Paste paths and enter one path per line. Selecting a folder or entering pasted paths generates the tree automatically.
- In pasted input, end a path with
/to treat it as a folder. A line without a trailing slash is treated as a file path. - Adjust the options, then review Nodes, Files, Folders, and Max depth.
- Use Copy, TXT, CSV, or JSON to take the result with you.
What this tool builds
The tool builds a text hierarchy from file names and relative paths supplied by the browser folder input or by pasted text. In Paste paths mode, it infers intermediate folders. File contents are not read. Add a pasted path ending in / when you need to represent an empty folder.
Options for styling and filtering
- Branch style: Unicode (├── └── │) or plain ASCII (
|--/`--) for environments where Unicode box-drawing characters don't render well. - Root label: show or hide the root node, and optionally override its displayed name.
- Markers: no markers, a trailing slash on folder names, or explicit
[DIR]/[FILE]labels. - Depth limit: cap how many levels deep the tree renders; set to 0 for no limit.
- Hidden-file policy: include or exclude dotfiles and dot-folders (names starting with
.). - Order: natural alphabetical order (folders before files) or the order items were encountered/pasted.
- Include / exclude patterns: comma-separated
*and?wildcards matched case-insensitively against file names and full relative paths.
Validation, empty results, and exports
Paste paths rejects lines containing a .. segment or a drive-letter path and reports the rejected line numbers. Leading slashes are stripped before validation, so do not treat every Unix-style absolute path as rejected. An empty folder selection or empty paste input returns without showing a workspace. If filters remove every item, the workspace shows (no items match the current filters) with zero counts.
TXT contains the rendered tree. CSV and JSON contain the current filtered and depth-limited manifest, with path, type, and depth fields.
Privacy and limitations
The tool processes names and relative paths supplied through the browser folder input or pasted text. It does not read file contents, rename, move, delete, or write to the selected folder. Folder mode depends on browser support for webkitdirectory; use Paste paths if folder selection is unsupported. The dotfile setting checks names beginning with .. Folder mode receives file entries, so truly empty folders are not enumerated; add them explicitly in Paste mode with a trailing slash. For storage usage, sizes, or type breakdowns, use the Folder Size Analyzer.
Frequently asked questions
Does this tool read the contents of my files?
No. It only reads file and folder names and relative paths to build the tree structure. It never opens or inspects the contents of any file.
Does it modify or upload my folder?
No. Nothing is uploaded to a server, and this tool never renames, moves, deletes, or writes anything back to the folder you select.
Why are paths with ".." rejected in Paste mode?
A pasted path containing ".." could reference a parent outside the tree you're building, which makes the resulting hierarchy ambiguous and not reliably reproducible. Those lines are rejected with the line number so you can fix them.
Is this the same as the Folder Size Analyzer?
No. The Folder Size Analyzer reports storage use - sizes, largest items, and type breakdowns. This tool generates a portable text representation of a folder's hierarchy for documentation and planning, and never calculates storage analytics beyond simple node counts.