Metadata-Version: 2.4
Name: wraithwall
Version: 0.1.0
Summary: Production deception-and-threat-intelligence platform
Author-email: Adewale Babalola <contact@wraithwall.online>
License: MIT
License-File: LICENSE
Requires-Python: >=3.12
Requires-Dist: apscheduler<4,>=3
Requires-Dist: argon2-cffi>=23
Requires-Dist: bcrypt<5,>=4
Requires-Dist: bleach<7,>=6
Requires-Dist: cryptography>=42
Requires-Dist: flask-bcrypt<2,>=1
Requires-Dist: flask-cors<5,>=4
Requires-Dist: flask-limiter<4,>=3
Requires-Dist: flask-sqlalchemy<4,>=3
Requires-Dist: flask-talisman<2,>=1
Requires-Dist: flask-wtf<2,>=1
Requires-Dist: flask<4,>=3
Requires-Dist: gunicorn<24,>=21
Requires-Dist: httpx>=0.27
Requires-Dist: psycopg2-binary<3,>=2.9
Requires-Dist: pyotp<3,>=2
Requires-Dist: python-jose<4,>=3
Requires-Dist: redis<6,>=5
Requires-Dist: requests<3,>=2
Requires-Dist: sqlalchemy<3,>=2
Requires-Dist: typer<1,>=0.12
Requires-Dist: user-agents<3,>=2
Requires-Dist: validators>=0.22
Provides-Extra: all
Requires-Dist: pytest-cov; extra == 'all'
Requires-Dist: pytest>=8; extra == 'all'
Requires-Dist: ruff; extra == 'all'
Provides-Extra: dev
Requires-Dist: pytest-cov; extra == 'dev'
Requires-Dist: pytest>=8; extra == 'dev'
Requires-Dist: ruff; extra == 'dev'
Description-Content-Type: text/markdown

# WraithWall OSS

Production deception-and-threat-intelligence platform and companion packages.

## Ecosystem

| Package | Install | Purpose |
|---------|---------|---------|
| **wraithwall** | `pip install .` | Flask platform — gateway, link intel, cowrie, BGP, canaries |
| **ravenscan** | `pip install packages/ravenscan` | Engineering intelligence CLI (`raven`) and library |
| **canary-kit** | `pip install packages/canary-kit` | Supply-chain canary token minting and detection |
| **honeypot-mitre** | `pip install packages/honeypot-mitre` | Cowrie logs → MITRE ATT&CK scoring |
| **dml-spec** | `pip install packages/dml-spec` | Signed deception markup language validator |

Packages are independent — none imports another.

## Quick start

```bash
git clone <repository-url>
cd wraithwall-oss
./install.sh
cp .env.example .env
docker compose up -d
wraithwall check
wraithwall serve
```

## Python API

```python
from wraithwall import create_app, Client
from wraithwall.link_checker import analyze
from wraithwall.gateway import Gateway

app = create_app()
client = Client("http://localhost:8000", api_key="...")
print(client.health())
result = analyze("https://example.com")
blocked = Gateway.is_ip_blocked("203.0.113.1")
```

```python
from ravenscan import scan
from canary_kit import create_canary

profile = scan(".")
token = create_canary("my-sdk", "1.0.0")
```

## CLI

```bash
wraithwall check
wraithwall serve --port 8000
wraithwall routes
raven scan .
canary-kit mint my-pkg 1.0.0 --type runtime
honeypot-mitre sample.json
dml validate traps.yaml
```

## Configuration

All secrets and infrastructure endpoints come from environment variables (see `.env.example`). Nothing is hardcoded to a specific deployment.

## Contributing

Install the full stack with `./install.sh`, run `pytest`, then open a PR. Each package under `packages/` has its own README and examples.