mantis-web-crawler


Namemantis-web-crawler JSON
Version 1.2.0 PyPI version JSON
download
home_pagehttps://github.com/yourusername/mantis
SummaryWeb accessibility and UI bug detection tool
upload_time2025-09-14 05:51:52
maintainerNone
docs_urlNone
authorMantis Team
requires_python>=3.8
licenseMIT
keywords web-crawler accessibility ui-testing bug-detection playwright
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Mantis Web Crawler

🕷️ **Mantis** is a powerful web accessibility and UI bug detection tool that crawls websites to discover issues before they reach production.

*Originally created for Hack The North 2025*

## Features

- 🔍 **Comprehensive Web Crawling**: Deep crawl of websites with configurable depth and page limits
- ♿ **Accessibility Testing**: Automated detection of accessibility violations
- 🎨 **Visual Layout Analysis**: Detection of UI layout bugs and visual inconsistencies  
- 📊 **Real-time Dashboard**: Live monitoring of crawl progress with WebSocket updates
- 📋 **Detailed Reporting**: JSON reports with bug details, evidence, and recommendations
- 🚀 **Easy CLI Interface**: Simple command-line tool for quick scans

## Installation

### From PyPI (Recommended)

```bash
pip install mantis-web-crawler
playwright install
```

### From Source (Development)

```bash
# Clone the repository
git clone https://github.com/yourusername/mantis.git
cd mantis

# Install the package
pip install -e .

# Install Playwright browsers (required)
playwright install
```

## Quick Start

After installation, you can run Mantis directly from anywhere:

```bash
# Basic crawl
mantis run https://example.com

# Advanced options
mantis run https://example.com --max-depth 2 --max-pages 25
mantis run https://example.com --output my_report.json --verbose
mantis run https://example.com --dashboard  # Launch with live dashboard
```

## Usage Examples

### Basic Website Scan
```bash
mantis run https://example.com
```

### Deep Crawl with Custom Limits
```bash
mantis run https://example.com --max-depth 3 --max-pages 50
```

### Generate Custom Report
```bash
mantis run https://example.com --output accessibility_report.json --verbose
```

### Launch with Real-time Dashboard
```bash
mantis run https://example.com --dashboard
```

## Command Line Options

- `url`: Starting URL to crawl (required)
- `--max-depth`: Maximum crawl depth (default: 3)
- `--max-pages`: Maximum number of pages to crawl (default: 10)
- `--output`: Output file for JSON report (optional)
- `--verbose`: Enable verbose logging
- `--dashboard`: Launch real-time monitoring dashboard
- `--scan-type`: One of 'all', 'ui', 'accessibility' or 'performance'. Defaults to 'all'.

## Requirements

- Python 3.8+
- Playwright browsers (automatically installed with `playwright install`)

## Development

```bash
# Clone the repo
git clone https://github.com/yourusername/mantis.git
cd mantis

# Install in development mode
pip install -e .[dev]

# Install pre-commit hooks
pre-commit install

# Run tests
pytest
```

## Contributing

We welcome contributions! Please see our contributing guidelines for more details.

## License

MIT License - see LICENSE file for details.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/yourusername/mantis",
    "name": "mantis-web-crawler",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "web-crawler, accessibility, ui-testing, bug-detection, playwright",
    "author": "Mantis Team",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/ad/27/c2d5ec0627c7d1170810c9bf526e703899361de9f342b1db46a037eb7599/mantis_web_crawler-1.2.0.tar.gz",
    "platform": null,
    "description": "# Mantis Web Crawler\n\n\ud83d\udd77\ufe0f **Mantis** is a powerful web accessibility and UI bug detection tool that crawls websites to discover issues before they reach production.\n\n*Originally created for Hack The North 2025*\n\n## Features\n\n- \ud83d\udd0d **Comprehensive Web Crawling**: Deep crawl of websites with configurable depth and page limits\n- \u267f **Accessibility Testing**: Automated detection of accessibility violations\n- \ud83c\udfa8 **Visual Layout Analysis**: Detection of UI layout bugs and visual inconsistencies  \n- \ud83d\udcca **Real-time Dashboard**: Live monitoring of crawl progress with WebSocket updates\n- \ud83d\udccb **Detailed Reporting**: JSON reports with bug details, evidence, and recommendations\n- \ud83d\ude80 **Easy CLI Interface**: Simple command-line tool for quick scans\n\n## Installation\n\n### From PyPI (Recommended)\n\n```bash\npip install mantis-web-crawler\nplaywright install\n```\n\n### From Source (Development)\n\n```bash\n# Clone the repository\ngit clone https://github.com/yourusername/mantis.git\ncd mantis\n\n# Install the package\npip install -e .\n\n# Install Playwright browsers (required)\nplaywright install\n```\n\n## Quick Start\n\nAfter installation, you can run Mantis directly from anywhere:\n\n```bash\n# Basic crawl\nmantis run https://example.com\n\n# Advanced options\nmantis run https://example.com --max-depth 2 --max-pages 25\nmantis run https://example.com --output my_report.json --verbose\nmantis run https://example.com --dashboard  # Launch with live dashboard\n```\n\n## Usage Examples\n\n### Basic Website Scan\n```bash\nmantis run https://example.com\n```\n\n### Deep Crawl with Custom Limits\n```bash\nmantis run https://example.com --max-depth 3 --max-pages 50\n```\n\n### Generate Custom Report\n```bash\nmantis run https://example.com --output accessibility_report.json --verbose\n```\n\n### Launch with Real-time Dashboard\n```bash\nmantis run https://example.com --dashboard\n```\n\n## Command Line Options\n\n- `url`: Starting URL to crawl (required)\n- `--max-depth`: Maximum crawl depth (default: 3)\n- `--max-pages`: Maximum number of pages to crawl (default: 10)\n- `--output`: Output file for JSON report (optional)\n- `--verbose`: Enable verbose logging\n- `--dashboard`: Launch real-time monitoring dashboard\n- `--scan-type`: One of 'all', 'ui', 'accessibility' or 'performance'. Defaults to 'all'.\n\n## Requirements\n\n- Python 3.8+\n- Playwright browsers (automatically installed with `playwright install`)\n\n## Development\n\n```bash\n# Clone the repo\ngit clone https://github.com/yourusername/mantis.git\ncd mantis\n\n# Install in development mode\npip install -e .[dev]\n\n# Install pre-commit hooks\npre-commit install\n\n# Run tests\npytest\n```\n\n## Contributing\n\nWe welcome contributions! Please see our contributing guidelines for more details.\n\n## License\n\nMIT License - see LICENSE file for details.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Web accessibility and UI bug detection tool",
    "version": "1.2.0",
    "project_urls": {
        "Bug Reports": "https://github.com/yourusername/mantis/issues",
        "Homepage": "https://github.com/yourusername/mantis",
        "Repository": "https://github.com/yourusername/mantis"
    },
    "split_keywords": [
        "web-crawler",
        " accessibility",
        " ui-testing",
        " bug-detection",
        " playwright"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "81095cb0b4f5172cb3fd243d7ebd9f59350832139699c4b5768f5b48779c76c7",
                "md5": "f78616935cd2e4de335183c84503890c",
                "sha256": "6b61b862c4e21c36302e439af6e5e5b3d9d599fe38e5f32b5554005dc178486c"
            },
            "downloads": -1,
            "filename": "mantis_web_crawler-1.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f78616935cd2e4de335183c84503890c",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 97004,
            "upload_time": "2025-09-14T05:51:50",
            "upload_time_iso_8601": "2025-09-14T05:51:50.594626Z",
            "url": "https://files.pythonhosted.org/packages/81/09/5cb0b4f5172cb3fd243d7ebd9f59350832139699c4b5768f5b48779c76c7/mantis_web_crawler-1.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ad27c2d5ec0627c7d1170810c9bf526e703899361de9f342b1db46a037eb7599",
                "md5": "14db00dd717767f3400d447428ecff83",
                "sha256": "acce26c8d7fe7b09e274b3978419b5d78219eb5d1b575af8aed3e4d20f976040"
            },
            "downloads": -1,
            "filename": "mantis_web_crawler-1.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "14db00dd717767f3400d447428ecff83",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 83726,
            "upload_time": "2025-09-14T05:51:52",
            "upload_time_iso_8601": "2025-09-14T05:51:52.333847Z",
            "url": "https://files.pythonhosted.org/packages/ad/27/c2d5ec0627c7d1170810c9bf526e703899361de9f342b1db46a037eb7599/mantis_web_crawler-1.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-14 05:51:52",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "yourusername",
    "github_project": "mantis",
    "github_not_found": true,
    "lcname": "mantis-web-crawler"
}
        
Elapsed time: 3.94233s