# CleanCopy Server

Axum web backend for CleanCopy. Handles license activation, Stripe webhooks, release downloads, and the Tauri updater endpoint.

## Routes

| Method | Path | Description |
|--------|------|-------------|
| GET | `/` | Landing page |
| GET | `/docs` | Documentation |
| GET | `/docs/terms` | Terms of Service |
| GET | `/docs/refunds` | Refund Policy |
| GET/POST | `/api/activate` | License activation (Ed25519 signing) |
| POST | `/api/webhook` | Stripe webhook handler |
| GET | `/releases/download/{version}/{arch}` | Release binary download |
| GET | `/updates/{target}/{arch}/{version}.json` | Tauri updater manifest |
| GET | `/healthz` | Health check |

## Local Development

```bash
cargo run -p clean-copy-server
```

Server listens on `0.0.0.0:3000`.

## Docker

```bash
docker build -t clean-copy-server .
docker run -p 3000:3000 clean-copy-server
```
