Phase 1: Package Structure & Configuration
Convert the current script-based structure to a proper Python package suitable for PyPI distribution.
Tasks:
Package Structure:
domain-security-analyzer/
├── domain_security_analyzer/
│ ├── __init__.py
│ ├── __main__.py
│ ├── __version__.py
│ ├── analyzer.py (main logic)
│ └── cli.py (command line interface)
├── scripts/
│ └── parked_domain_csv.py
├── docs/
├── pyproject.toml
├── MANIFEST.in
├── requirements.txt
└── README.md
CLI Entry Point:
- Package should be installable with:
pip install domain-security-analyzer
- CLI accessible via:
domain-analyzer --help
- Python module usage:
python -m domain_security_analyzer
Acceptance Criteria:
Priority: High - Blocks all other PyPI release tasks
Phase 1: Package Structure & Configuration
Convert the current script-based structure to a proper Python package suitable for PyPI distribution.
Tasks:
domain_security_analyzer/package directory__init__.pyfiles for proper module structuredomain_analyzer.pytodomain_security_analyzer/analyzer.pydomain_security_analyzer/__main__.pyfor CLI entry pointdomain_security_analyzer/__version__.pyfor version managementpyproject.tomlconfiguration fileMANIFEST.into include documentation and data filesrequirements.txtwith pinned versions for stabilityPackage Structure:
CLI Entry Point:
pip install domain-security-analyzerdomain-analyzer --helppython -m domain_security_analyzerAcceptance Criteria:
from domain_security_analyzer import DomainAnalyzerdomain-analyzer examples/domains.txt output.csvpip install -e .Priority: High - Blocks all other PyPI release tasks