Metadata-Version: 2.2
Name: hey403
Version: 1.2.0
Summary: DNS accessibility testing tool for identifying 403 errors and network restrictions
Author-email: Diramid <diramidteam@gmail.com>
License: MIT License
        
        Copyright (c) 2025 Diramid
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
        
Project-URL: Homepage, https://github.com/Diramid/hey-403-cli
Project-URL: Documentation, https://github.com/Diramid/hey-403-cli/blob/main/README.md
Project-URL: Issues, https://github.com/Diramid/hey-403-cli/issues
Keywords: dns,cli,security,403,http-testing,network-troubleshooting
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: System Administrators
Classifier: Topic :: Internet :: Name Service (DNS)
Classifier: Topic :: Security
Classifier: Topic :: Utilities
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: dnspython>=2.7.0
Requires-Dist: requests>=2.32.3
Requires-Dist: rich>=13.9.4

# Hey 403 - CLI Edition
**⚡ A Command-Line DNS Accessibility Testing Tool ⚡**

Hey 403 is a powerful Python-based CLI utility designed to diagnose domain accessibility issues across multiple DNS providers. Whether you're a developer, network administrator, or security enthusiast, Hey 403 helps you quickly identify geo-restrictions, DNS inconsistencies, and connectivity problems.

---

## Key Features
- **Global DNS Testing**: Test domain accessibility with **15+ preconfigured DNS servers** from providers like Google, Cloudflare, and more.
- **Error Detection**: Detect **403 Forbidden**, censorship blocks, and other HTTP errors.
- **Performance Insights**: Measure and compare DNS resolution times across providers.
- **DNS Management**: Set or unset DNS configurations directly from the CLI.
- **Parallel Execution**: Run concurrent tests for faster results.
- **Rich Output**: Enjoy colorful, formatted output with the `rich` library.

---

## Installation
Install Hey 403 easily via PyPI:

```bash
pip install hey403
```

### Requirements
- Python 3.8+
- Dependencies: `rich`, `requests`, `dnspython` (automatically installed via pip)

---

## Quick Start
After installation, check the available options:

```bash
hey403 --help
```

Test a domain right away:

```bash
hey403 example.com
```

---

## Usage Examples
Here’s how you can use Hey 403:

### Test Domain Accessibility
Check how a domain resolves across multiple DNS providers:
```bash
hey403 example.com
```

### Set the Best DNS
Automatically set the fastest working DNS for your system:
```bash
hey403 example.com --set
```

### View Current DNS
Display your system’s current DNS settings:
```bash
hey403 -c
```

### Unset Custom DNS
Revert to your system’s default DNS:
```bash
hey403 --unset
```

---

## Command-Line Options
| Option            | Description                                   |
|-------------------|-----------------------------------------------|
| `-h, --help`      | Show help message and exit                   |
| `-c, --current-dns` | Display current DNS settings               |
| `--set`           | Set the fastest DNS from successful tests    |
| `--unset`         | Remove custom DNS and revert to default      |
| `--url URL`       | Specify an alternate URL to test             |

Run `hey403 --help` for full details.

---

## Why Hey 403?
- **Instant Diagnostics**: Identify DNS issues in seconds.
- **Global Reach**: Test with DNS servers worldwide.
- **User-Friendly**: Clean, colorful CLI output.
- **Customizable**: Manage DNS settings on the fly.

---

## Contributing
We welcome contributions! To get started:
1. Install the package in editable mode with dev dependencies:
   ```bash
   pip install -e .[dev]
   ```
2. Run tests:
   ```bash
   pytest tests/ -v
   ```
3. Submit your changes via a pull request on [GitHub](https://github.com/Diramid/hey-403-cli).

See our [Contributing Guide](https://github.com/Diramid/hey-403-cli/blob/main/CONTRIBUTING.md) for more details.

---

## License
Hey 403 is licensed under the [MIT License](https://github.com/Diramid/hey-403-cli/blob/main/LICENSE). Feel free to use, modify, and distribute it responsibly.

---

## Notes
- **Responsible Use**: Always comply with local laws and regulations when testing domains.
- **Feedback**: Have suggestions? Open an issue on [GitHub](https://github.com/Diramid/hey-403-cli/issues)!

---
