Metadata-Version: 2.4
Name: axion-lab
Version: 0.0.1
Summary: Artifact-first Experiment Evaluation System
Author-email: elda27 <kaz.birdstick@gmail.com>
Requires-Python: >=3.12
Requires-Dist: aioboto3>=13.0.0
Requires-Dist: aiosqlite>=0.20.0
Requires-Dist: alembic>=1.14.0
Requires-Dist: asyncpg>=0.30.0
Requires-Dist: boto3>=1.35.0
Requires-Dist: fastapi>=0.115.0
Requires-Dist: google-cloud-storage>=2.14.0
Requires-Dist: httpx>=0.28.0
Requires-Dist: psycopg2-binary>=2.9.0
Requires-Dist: pydantic-settings>=2.6.0
Requires-Dist: pydantic>=2.10.0
Requires-Dist: pytest-asyncio>=1.3.0
Requires-Dist: python-dotenv>=1.0.0
Requires-Dist: python-ulid>=3.0.0
Requires-Dist: sqlalchemy>=2.0.35
Requires-Dist: uvicorn[standard]>=0.32.0
Provides-Extra: dev
Requires-Dist: mypy>=1.13.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.24.0; extra == 'dev'
Requires-Dist: pytest-cov>=6.0.0; extra == 'dev'
Requires-Dist: pytest>=8.0.0; extra == 'dev'
Requires-Dist: ruff>=0.8.0; extra == 'dev'
Requires-Dist: types-boto3>=1.35.0; extra == 'dev'
Description-Content-Type: text/markdown

# Axion Lab

Backend package for the Axion Lab experiment evaluation system. Provides the FastAPI server, data models, DP runner, and storage adapters.

## Prerequisites

- Python 3.12+
- [uv](https://docs.astral.sh/uv/)

## Setup

```bash
# Install dependencies
uv sync --all-extras
```

## Build

```bash
# Build the Python package
uv build

# Or from the repository root
make build-Axion Lab
```

## Usage

### Start the API server

```bash
uv run uvicorn axion_lab_server.apps.api.app:app --reload --host 0.0.0.0 --port 8000
```

### Run tests

```bash
uv run pytest
```

### Lint

```bash
uv run ruff check src/
```

## Project Structure

```
src/
├── axion_lab/            # Core library (models, repositories, storage, DP)
├── axion_lab_server/     # FastAPI application and routers
└── axion_lab_alembic/    # Database migrations
```
