Metadata-Version: 2.4
Name: spectra-runner
Version: 1.0.2
Summary: Local test runner for Spectra DevMode - Run tests on your machine
Author-email: Pranav Parvekar <pranav@example.com>
License: MIT
Project-URL: Homepage, https://spectra.dev
Project-URL: Documentation, https://docs.spectra.dev/spectra-runner
Project-URL: Repository, https://github.com/pranav/spectra-runner
Keywords: testing,docker,spectra,test-runner
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Software Development :: Testing
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: websockets>=11.0
Requires-Dist: click>=8.0
Requires-Dist: rich>=13.0
Requires-Dist: httpx>=0.24
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21; extra == "dev"

# Spectra Runner

Run your tests locally with Docker! 🚀

## Installation

```bash
pip install spectra-runner
```

## Quick Start

### 1. Login (one-time)

Get your token from Spectra Dashboard → Settings → Local Runner

```bash
spectra-runner login --token YOUR_TOKEN
```

### 2. Start the runner

```bash
spectra-runner start
```

That's it! The runner will connect to Spectra and wait for test jobs.

## Commands

| Command | Description |
|---------|-------------|
| `spectra-runner login --token X` | Save your authentication token |
| `spectra-runner start` | Start the runner and wait for jobs |
| `spectra-runner logout` | Remove saved token |
| `spectra-runner status` | Check if you're logged in |

## How It Works

1. You run `spectra-runner start` in your terminal
2. When you click "Run Tests" in Spectra Dashboard, the job is sent to your runner
3. Tests run in an isolated Docker container on YOUR machine
4. Results are sent back to the Dashboard

## Security

- **Transparent**: You can see every command in your terminal
- **Isolated**: Tests run in Docker with `--network=none` (no internet access)
- **Open Source**: Audit the code yourself!
- **User Control**: You decide when to run - no background services

## Requirements

- Python 3.8+
- Docker Desktop (running)

## License

MIT
