Stop drowning in dependency folders. Struct shows your project's actual structure while intelligently hiding the noise you don't care about.
Built by developers, for developers. No more scrolling through endless dependency folders.
Automatically hides venv, node_modules, .git, and 20+ other noise directories while showing you the file count.
Knows about Python, JavaScript, Rust, and more. No configuration needed to get started.
struct 0 gives you detailed stats: file counts, sizes, types, and what's being ignored.
Find files across your project with struct search "*.py". Tree or flat output modes.
Multiple git modes: tracked (-g), untracked (--gu), staged (--gs), modified (--gc). Color-coded output with branch display.
Written in Rust for performance. Scan thousands of files in milliseconds, not seconds.
Struct is designed to be powerful yet intuitive. Here are the features that make it stand out:
Infinite depth by default, or limit with struct 3
Track (-g), staged (--gs), modified (--gc), untracked (--gu) with color-coding
Show file sizes with -z or skip large folders with -s 100
Add permanent ignore patterns with struct add "pattern"
Tree view or flat list with full paths for easy grep/scripting
Get started in seconds. Struct is lightweight and dependency-free.
Struct is MIT licensed and open source. Found a bug? Want a feature? Contributions are welcome.