structure-maker
Keywords:
directory-tree
,folder-structure
,file-explorer
,project-visualization
,markdown-generator
,documentation-tool
,dev-utility
,file-system-scanner
Generate beautiful folder structure visualizations with tech-specific icons for documentation, sharing, or analysis.
Features
- 📁 Creates clear, readable folder structure visualizations
- 🖼️ Tech-specific icons for different file types
- 📊 Summary statistics of files and folders
- ⚙️ Customizable depth and ignore patterns
- 💾 Saves output as a Markdown file
- 🎨 Colorized terminal output
Installation
Global Installation (Recommended)
npm install -g structure-maker
Local Installation
npm install structure-maker
Usage
Navigate to the directory you want to visualize and run:
structure-maker
This will:
- Generate a tree visualization of your current directory
- Create a
folder-structure.md
file with detailed documentation - Display a colorized version of the tree in your terminal
Command Line Options
Option | Description |
---|---|
--depth |
Maximum depth to traverse (default: infinite) |
--ignore |
Comma-separated patterns to ignore |
Examples
Limit directory depth:
structure-maker --depth 2
Ignore specific folders or files:
structure-maker --ignore dist,build,temp
Combine options:
structure-maker --depth 3 --ignore logs,temp
Output Example
The tool generates a Markdown file (folder-structure.md
) with:
- Directory statistics (files and folders count)
- Breakdown of file types
- Complete directory tree with file sizes
Example terminal output:
project-root/
├─ 📁 src
│ ├─ 📁 components
│ │ ├─ 💻 Button.js (2.3 KB)
│ │ └─ 💻 Header.js (1.7 KB)
│ └─ 💻 index.js (0.5 KB)
├─ 📁 docs
│ └─ 📜 README.md (3.2 KB)
└─ 📊 package.json (1.1 KB)
File Type Icons
Extension | Icon | Description |
---|---|---|
.js , .ts , .py , .java |
💻 | Code files |
.md , .txt |
📜 | Text documents |
.json |
📊 | Data files |
.jpg , .png , .gif |
🖼️ | Image files |
.mp4 , .avi |
🎥 | Video files |
.mp3 , .wav |
🎵 | Audio files |
.pdf , .docx |
📚 | Document files |
Other | 📄 | Generic files |
Contributing
Contributions are welcome and appreciated! Here's how you can contribute:
Bug Reports & Feature Requests
- Use the GitHub Issues tab to report bugs or suggest features
- Clearly describe the issue including steps to reproduce when it is a bug
- Make sure to include your environment details (OS, Node.js version)
Development Process
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Make your changes
- Run tests if available
- Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
Ideas for Contributions
- Add more file type icons
- Improve the markdown output formatting
- Add export options for different formats (JSON, HTML, etc.)
- Create a web UI version
- Add stats visualization
- Improve performance for large directories
Code Style
- Maintain the existing code style
- Add comments for complex logic
- Update documentation as needed
License
This project is licensed under the ISC License - see the LICENSE file for details.
Author
Chauhan Yuvraj
Made with ❤️ for developers who love clean documentation