dlens


Namedlens JSON
Version 1.0.0 PyPI version JSON
download
home_pagehttps://github.com/Muhammad-NSQ/Dlens
SummaryEnhanced directory mapping and visualization tool
upload_time2025-09-06 11:58:46
maintainerNone
docs_urlNone
authorMuhammad-NSQ
requires_python>=3.8
licenseMIT
keywords directory mapping filesystem visualization cli tree
VCS
bugtrack_url
requirements click rich jinja2
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # DLens - Enhanced Directory Mapping Tool

A powerful command-line tool for visualizing and analyzing directory structures with rich formatting, search capabilities, and multiple export formats.

## Features

- 🌳 **Rich Terminal Output** - Beautiful tree visualization with colors and icons
- 🔍 **Powerful Search** - Find files and directories with pattern matching and regex support
- 📊 **Directory Statistics** - Analyze file types, sizes, and modification dates
- 🎨 **Customizable Themes** - Multiple color schemes and styling options
- 📤 **Multiple Export Formats** - Export to HTML, JSON, Markdown, CSV
- ⚡ **Performance Optimized** - Efficient scanning of large directories
- 🔧 **Highly Configurable** - Extensive options and persistent configuration

## Installation

### From PyPI (Recommended)

```bash
pip install dlens
```

### From Source

```bash
git clone https://github.com/Muhammad-NSQ/Dlens.git
cd Dlens
pip install -e .
```

## Quick Start

### Basic Directory Mapping

```bash
# Map current directory
dlens map

# Map specific directory with details
dlens map /path/to/directory --show-details --show-stats

# Map with custom depth and preview limits
dlens map ~/projects --depth 3 --max-preview 5
```

### Search Files and Directories

```bash
# Simple pattern search
dlens search "*.py" ~/projects

# Regex search with results limit
dlens search --regex "test_.*\.py$" --max-results 50

# Export search results to HTML
dlens search "*.md" --output-format html --output-file results.html
```

### Export Options

```bash
# Export directory map to HTML
dlens map --output-format html ~/project

# Export to JSON with statistics
dlens map --output-format json --show-stats > directory.json

# Generate Markdown documentation
dlens map --output-format markdown --show-details > STRUCTURE.md
```

## Configuration

DLens supports persistent configuration to save your preferred settings:

```bash
# View current configuration
dlens config view

# Set default options
dlens config set theme ocean
dlens config set max_preview 10
dlens config set show_details true

# Reset to defaults
dlens config reset
```

## Export Formats

### HTML Export
Interactive HTML with:
- Collapsible directory tree
- Dark/light theme toggle
- Search functionality
- File statistics
- Responsive design

### JSON Export
Structured data including:
- Complete directory hierarchy
- File metadata (size, dates, permissions)
- Directory statistics
- Scan information

### Markdown Export
Documentation-friendly format with:
- Hierarchical bullet lists
- File details and statistics
- GitHub-compatible formatting

## Advanced Features

### Filtering and Exclusion

```bash
# Include only specific file types
dlens map --filter .py --filter .js --filter .html

# Exclude certain file types
dlens map --exclude .pyc --exclude .log --exclude .tmp

# Show hidden files
dlens map --show-hidden
```

### Performance Options

```bash
# Parallel processing for large directories
dlens search "pattern" --parallel

# Limit depth to improve performance
dlens map --depth 5

# Disable progress for scripting
dlens map --no-progress
```

### Theming

Available themes: `default`, `ocean`, `forest`, `pastel`, `monochrome`, `dark`

```bash
# Use a specific theme
dlens map --theme ocean

# Use custom theme file
dlens map --theme-path /path/to/custom-theme.json
```

## Configuration Options

| Option | Description | Default |
|--------|-------------|---------|
| `max_preview` | Items shown per directory | 3 |
| `root_preview` | Items shown in root directory | 5 |
| `depth` | Maximum recursion depth | unlimited |
| `show_hidden` | Include hidden files/directories | false |
| `show_details` | Show file metadata | false |
| `show_stats` | Display directory statistics | false |
| `color` | Enable colored output | true |
| `icons` | Show file type icons | true |
| `parallel` | Use parallel processing | true |
| `follow_symlinks` | Follow symbolic links | false |

## Examples

### Development Project Analysis

```bash
# Analyze a Python project
dlens map ~/my-python-project \
  --filter .py --filter .md --filter .yml \
  --show-details --show-stats \
  --output-format html \
  --theme dark

# Find all test files
dlens search "test_*.py" ~/my-python-project \
  --output-format csv \
  --output-file test-files.csv
```

### System Administration

```bash
# Check log directory structure
dlens map /var/log --show-details --max-preview 10

# Find large files
dlens search "*" /home/user --show-details | head -20

# Generate system documentation
dlens map /etc --output-format markdown --depth 2 > system-config.md
```

## Requirements

- Python 3.8 or higher
- Compatible with Windows, macOS, and Linux

## Dependencies

- `click` >= 8.0.0 - Command line interface
- `rich` >= 12.0.0 - Terminal formatting and colors
- `jinja2` >= 3.0.0 - Template rendering for HTML export

## Contributing

1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Changelog

### Version 1.0.0
- Initial release
- Core directory mapping functionality
- Search capabilities
- Multiple export formats
- Configuration management
- Theme support

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/Muhammad-NSQ/Dlens",
    "name": "dlens",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "directory, mapping, filesystem, visualization, cli, tree",
    "author": "Muhammad-NSQ",
    "author_email": "Your Name <your.email@example.com>",
    "download_url": "https://files.pythonhosted.org/packages/9f/58/ec48624d599f8b7d87a7d3c00612f5bddb0665cb44946e3139473f51f842/dlens-1.0.0.tar.gz",
    "platform": null,
    "description": "# DLens - Enhanced Directory Mapping Tool\n\nA powerful command-line tool for visualizing and analyzing directory structures with rich formatting, search capabilities, and multiple export formats.\n\n## Features\n\n- \ud83c\udf33 **Rich Terminal Output** - Beautiful tree visualization with colors and icons\n- \ud83d\udd0d **Powerful Search** - Find files and directories with pattern matching and regex support\n- \ud83d\udcca **Directory Statistics** - Analyze file types, sizes, and modification dates\n- \ud83c\udfa8 **Customizable Themes** - Multiple color schemes and styling options\n- \ud83d\udce4 **Multiple Export Formats** - Export to HTML, JSON, Markdown, CSV\n- \u26a1 **Performance Optimized** - Efficient scanning of large directories\n- \ud83d\udd27 **Highly Configurable** - Extensive options and persistent configuration\n\n## Installation\n\n### From PyPI (Recommended)\n\n```bash\npip install dlens\n```\n\n### From Source\n\n```bash\ngit clone https://github.com/Muhammad-NSQ/Dlens.git\ncd Dlens\npip install -e .\n```\n\n## Quick Start\n\n### Basic Directory Mapping\n\n```bash\n# Map current directory\ndlens map\n\n# Map specific directory with details\ndlens map /path/to/directory --show-details --show-stats\n\n# Map with custom depth and preview limits\ndlens map ~/projects --depth 3 --max-preview 5\n```\n\n### Search Files and Directories\n\n```bash\n# Simple pattern search\ndlens search \"*.py\" ~/projects\n\n# Regex search with results limit\ndlens search --regex \"test_.*\\.py$\" --max-results 50\n\n# Export search results to HTML\ndlens search \"*.md\" --output-format html --output-file results.html\n```\n\n### Export Options\n\n```bash\n# Export directory map to HTML\ndlens map --output-format html ~/project\n\n# Export to JSON with statistics\ndlens map --output-format json --show-stats > directory.json\n\n# Generate Markdown documentation\ndlens map --output-format markdown --show-details > STRUCTURE.md\n```\n\n## Configuration\n\nDLens supports persistent configuration to save your preferred settings:\n\n```bash\n# View current configuration\ndlens config view\n\n# Set default options\ndlens config set theme ocean\ndlens config set max_preview 10\ndlens config set show_details true\n\n# Reset to defaults\ndlens config reset\n```\n\n## Export Formats\n\n### HTML Export\nInteractive HTML with:\n- Collapsible directory tree\n- Dark/light theme toggle\n- Search functionality\n- File statistics\n- Responsive design\n\n### JSON Export\nStructured data including:\n- Complete directory hierarchy\n- File metadata (size, dates, permissions)\n- Directory statistics\n- Scan information\n\n### Markdown Export\nDocumentation-friendly format with:\n- Hierarchical bullet lists\n- File details and statistics\n- GitHub-compatible formatting\n\n## Advanced Features\n\n### Filtering and Exclusion\n\n```bash\n# Include only specific file types\ndlens map --filter .py --filter .js --filter .html\n\n# Exclude certain file types\ndlens map --exclude .pyc --exclude .log --exclude .tmp\n\n# Show hidden files\ndlens map --show-hidden\n```\n\n### Performance Options\n\n```bash\n# Parallel processing for large directories\ndlens search \"pattern\" --parallel\n\n# Limit depth to improve performance\ndlens map --depth 5\n\n# Disable progress for scripting\ndlens map --no-progress\n```\n\n### Theming\n\nAvailable themes: `default`, `ocean`, `forest`, `pastel`, `monochrome`, `dark`\n\n```bash\n# Use a specific theme\ndlens map --theme ocean\n\n# Use custom theme file\ndlens map --theme-path /path/to/custom-theme.json\n```\n\n## Configuration Options\n\n| Option | Description | Default |\n|--------|-------------|---------|\n| `max_preview` | Items shown per directory | 3 |\n| `root_preview` | Items shown in root directory | 5 |\n| `depth` | Maximum recursion depth | unlimited |\n| `show_hidden` | Include hidden files/directories | false |\n| `show_details` | Show file metadata | false |\n| `show_stats` | Display directory statistics | false |\n| `color` | Enable colored output | true |\n| `icons` | Show file type icons | true |\n| `parallel` | Use parallel processing | true |\n| `follow_symlinks` | Follow symbolic links | false |\n\n## Examples\n\n### Development Project Analysis\n\n```bash\n# Analyze a Python project\ndlens map ~/my-python-project \\\n  --filter .py --filter .md --filter .yml \\\n  --show-details --show-stats \\\n  --output-format html \\\n  --theme dark\n\n# Find all test files\ndlens search \"test_*.py\" ~/my-python-project \\\n  --output-format csv \\\n  --output-file test-files.csv\n```\n\n### System Administration\n\n```bash\n# Check log directory structure\ndlens map /var/log --show-details --max-preview 10\n\n# Find large files\ndlens search \"*\" /home/user --show-details | head -20\n\n# Generate system documentation\ndlens map /etc --output-format markdown --depth 2 > system-config.md\n```\n\n## Requirements\n\n- Python 3.8 or higher\n- Compatible with Windows, macOS, and Linux\n\n## Dependencies\n\n- `click` >= 8.0.0 - Command line interface\n- `rich` >= 12.0.0 - Terminal formatting and colors\n- `jinja2` >= 3.0.0 - Template rendering for HTML export\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch (`git checkout -b feature/amazing-feature`)\n3. Commit your changes (`git commit -m 'Add amazing feature'`)\n4. Push to the branch (`git push origin feature/amazing-feature`)\n5. Open a Pull Request\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Changelog\n\n### Version 1.0.0\n- Initial release\n- Core directory mapping functionality\n- Search capabilities\n- Multiple export formats\n- Configuration management\n- Theme support\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Enhanced directory mapping and visualization tool",
    "version": "1.0.0",
    "project_urls": {
        "Bug Reports": "https://github.com/Muhammad-NSQ/Dlens/issues",
        "Documentation": "https://github.com/Muhammad-NSQ/Dlens#readme",
        "Homepage": "https://github.com/Muhammad-NSQ/Dlens",
        "Source": "https://github.com/Muhammad-NSQ/Dlens"
    },
    "split_keywords": [
        "directory",
        " mapping",
        " filesystem",
        " visualization",
        " cli",
        " tree"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a75d534257b920133d38c72f2ed16ff0b2a020e812e2451e87dc6f8ecb38cd69",
                "md5": "60054b01911b9691cdcb1a5a995097d0",
                "sha256": "e26aa113834f63f552bac3c06145eec53e79401c07dd3cffe731ac47f380841a"
            },
            "downloads": -1,
            "filename": "dlens-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "60054b01911b9691cdcb1a5a995097d0",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 44326,
            "upload_time": "2025-09-06T11:58:45",
            "upload_time_iso_8601": "2025-09-06T11:58:45.154474Z",
            "url": "https://files.pythonhosted.org/packages/a7/5d/534257b920133d38c72f2ed16ff0b2a020e812e2451e87dc6f8ecb38cd69/dlens-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9f58ec48624d599f8b7d87a7d3c00612f5bddb0665cb44946e3139473f51f842",
                "md5": "79de2ea60f508faa8fea3e671781a242",
                "sha256": "21d4abcf62325af24a2aedace20f86e1edd82af78c57fedd2222368ef0a4487b"
            },
            "downloads": -1,
            "filename": "dlens-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "79de2ea60f508faa8fea3e671781a242",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 36995,
            "upload_time": "2025-09-06T11:58:46",
            "upload_time_iso_8601": "2025-09-06T11:58:46.967876Z",
            "url": "https://files.pythonhosted.org/packages/9f/58/ec48624d599f8b7d87a7d3c00612f5bddb0665cb44946e3139473f51f842/dlens-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-06 11:58:46",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Muhammad-NSQ",
    "github_project": "Dlens",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "click",
            "specs": [
                [
                    ">=",
                    "8.0.0"
                ]
            ]
        },
        {
            "name": "rich",
            "specs": [
                [
                    ">=",
                    "12.0.0"
                ]
            ]
        },
        {
            "name": "jinja2",
            "specs": [
                [
                    ">=",
                    "3.0.0"
                ]
            ]
        }
    ],
    "lcname": "dlens"
}
        
Elapsed time: 1.49094s