filetree-pro
Version:
A powerful file tree generator for VS Code and Cursor. Generate beautiful file trees in multiple formats with smart exclusions and custom configurations.
244 lines (182 loc) ⢠6.45 kB
Markdown
# š³ FileTree Pro - VS Code Extension
A powerful file tree generator for VS Code and Cursor. Generate beautiful file trees in multiple formats with smart exclusions and custom configurations.
[](https://marketplace.visualstudio.com/items?itemName=filetree-pro)
[](https://marketplace.visualstudio.com/items?itemName=filetree-pro)
[](https://marketplace.visualstudio.com/items?itemName=filetree-pro)
## āļø Configuration
### Quick Setup
Add this to your VS Code settings (`Ctrl/Cmd + ,`):
```json
{
"filetree-pro.exclude": [
"**/node_modules/**",
"**/dist/**",
"**/.git/**",
"**/.venv/**",
"**/build/**",
"**/coverage/**",
"**/*.log",
"**/*.tmp"
],
"filetree-pro.showIcons": true,
"filetree-pro.useCopilot": false
}
```
### Custom Exclusions
Add your own patterns to exclude files/folders:
```json
{
"filetree-pro.exclude": [
"**/node_modules/**",
"**/my-custom-folder/**",
"**/*.test.js",
"**/temp/**"
]
}
```
## š Features
### š Smart File Tree Generation
- **Right-click any folder** ā Generate file tree
- **4 Output Formats**: Markdown, JSON, SVG, ASCII
- **Icon Support**: Beautiful icons for all file types
- **Smart Exclusions**: Automatically excludes build files, dependencies, and temp files
### š Universal Language Support
- **50+ Programming Languages**: JavaScript, Python, Java, C++, Go, Rust, Kotlin, Scala, C#, F#, Dart, R, MATLAB, Julia, Perl, Lua, Haskell, Clojure, Elixir, Erlang, OCaml, Nim, Zig, V, Assembly, and more
- **Special Files**: Dockerfile, Makefile, README, LICENSE, CHANGELOG
- **Web Technologies**: HTML, CSS, SCSS, Vue, Svelte
- **Configuration Files**: YAML, TOML, INI, XML, JSON
### šØ Multiple Export Formats
| Format | Use Case | Features |
| --------------- | ----------------------- | ----------------------- |
| **š Markdown** | Documentation, GitHub | Icons, clean formatting |
| **š JSON** | APIs, Data processing | Structured data, icons |
| **šØ SVG** | Presentations, diagrams | Visual, scalable |
| **š ASCII** | Universal compatibility | Plain text, portable |
### š”ļø Smart Exclusions
Automatically excludes common build artifacts:
- `node_modules`, `dist`, `build`, `out`
- `.git`, `.venv`, `venv`, `env`
- `*.log`, `*.tmp`, `*.cache`
- `__pycache__`, `*.pyc`
- `target`, `bin`, `obj`
- `.DS_Store`, `Thumbs.db`
### ā” Performance Optimized
- **Memory Management**: Efficient for large projects
- **Async Processing**: Non-blocking tree generation
- **Loading States**: Visual feedback during processing
- **Batch Processing**: Handles 10,000+ files smoothly
## šÆ Quick Start
1. **Install Extension**: Search "FileTree Pro" in VS Code Extensions
2. **Open Project**: Open any project folder in VS Code
3. **Generate Tree**: Right-click on any folder ā "Generate File Tree"
4. **Choose Format**: Select Markdown, JSON, SVG, or ASCII
5. **Choose Style**: With or without icons
6. **Save**: The tree opens in an unsaved tab - save when ready!
## š Commands
- `Generate File Tree` - Right-click on folder to generate tree
- `Refresh Tree` - Regenerate with current settings
- `Export Tree` - Export in different formats
## šØ Examples
### Markdown Output
```
# File Tree: my-project
āāā š src/
ā āāā š main.js
ā āāā š utils.js
ā āāā š components/
ā āāā š Header.js
ā āāā š Footer.js
āāā š package.json
āāā š README.md
āāā š node_modules/ š« (auto-hidden)
```
### JSON Output
```json
{
"name": "my-project",
"type": "directory",
"icon": "š",
"children": [
{
"name": "src",
"type": "directory",
"icon": "š",
"children": [...]
}
]
}
```
## š§ Advanced Configuration
### Custom Exclusions
```json
{
"filetree-pro.exclude": [
"**/node_modules/**",
"**/dist/**",
"**/.git/**",
"**/my-custom-folder/**",
"**/*.test.js",
"**/temp/**",
"**/logs/**"
]
}
```
### Icon Settings
```json
{
"filetree-pro.showIcons": true
}
```
### Copilot Integration (Optional)
```json
{
"filetree-pro.useCopilot": false
}
```
## š Use Cases
### For Developers
- **Project Documentation**: Generate file trees for README files
- **Code Reviews**: Share project structure with team
- **Onboarding**: Help new developers understand project layout
- **Architecture Analysis**: Visualize project structure
### For Teams
- **Documentation**: Export trees for project docs
- **Presentations**: Use SVG format for slides
- **API Documentation**: JSON format for tools
- **Cross-platform**: ASCII format works everywhere
### For Educators
- **Teaching**: Show project structures to students
- **Examples**: Demonstrate different project organizations
- **Analysis**: Analyze student project structures
## š Performance
- **Small Projects** (< 1,000 files): < 1 second
- **Medium Projects** (1,000-10,000 files): < 3 seconds
- **Large Projects** (10,000+ files): < 10 seconds
## š¤ Contributing
1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Add tests for new features
5. Submit a pull request
## š Changelog
### v0.1.0
- ā
Core file tree generation
- ā
4 output formats (Markdown, JSON, SVG, ASCII)
- ā
Universal language support (50+ languages)
- ā
Smart exclusions system
- ā
Custom configuration support
- ā
Performance optimizations
- ā
VS Code and Cursor compatibility
## š License
MIT License - see [LICENSE](LICENSE) file for details.
## ā Support
If you find this extension helpful, consider buying me a coffee! ā
[](https://buymeacoffee.com/tanzimhossain)
## š Contact & Social Media
- **Email**: <tanzimhossain2@gmail.com>
- **GitHub**: [@0xTanzim](https://github.com/0xTanzim)
- **LinkedIn**: [@0xtanzim](https://linkedin.com/in/0xtanzim)
- **Facebook**: [@0xtanzim](https://facebook.com/0xtanzim)
- **Instagram**: [@0xtanzim](https://instagram.com/0xtanzim)
---
**Made with ā¤ļø for the VS Code community**