Metadata-Version: 2.4
Name: asv-tachyon
Version: 0.2.3
Summary: Modern web UI for airspeed velocity (ASV) benchmark results
Project-URL: Source, https://github.com/HaoZeke/asv_tachyon
Project-URL: Issues, https://github.com/HaoZeke/asv_tachyon/issues
Project-URL: Documentation, https://github.com/HaoZeke/asv_tachyon#readme
Author-email: Rohit Goswami <rgoswami@ieee.org>
Maintainer-email: Rohit Goswami <rgoswami@ieee.org>
License: MIT
License-File: LICENSE
Keywords: asv,benchmark,dashboard,frontend,visualization
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Web Environment
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: System :: Benchmark
Requires-Python: >=3.10
Provides-Extra: test
Requires-Dist: pytest>=8.0; extra == 'test'
Description-Content-Type: text/markdown

# asv-tachyon

**Modern web UI for [airspeed velocity](https://asv.readthedocs.io/) results.**

ASV’s built-in site is still jQuery + Flot + Bootstrap 3. **asv-tachyon** is a
drop-in shell over the same static data that `asv publish` already writes
(`index.json`, `graphs/**`, `regressions.json`). No server-side app, no new
result format, no second benchmark type.

| Tool | Job |
|------|-----|
| **asv** | run benchmarks, write results, `asv publish` data |
| **asv-tachyon** | modern UI over that published tree |
| **asv-perch** | PR comment tables (CI) |
| **asv_spyglass** | compare two result JSON files |
| **asv_bench_tachyon** | `sample_*` metric plugin (separate package) |

## Install

```bash
pip install asv-tachyon
# or from git after building the UI once
```

The wheel embeds a prebuilt SPA (`web/dist`). From a checkout:

```bash
cd web && npm install && npm run build && cd ..
pip install -e .
```

## Usage

```bash
asv run
asv publish
asv-tachyon serve .asv/html --open
```

Or replace the legacy `index.html` in place (keeps all graph JSON):

```bash
asv publish
asv-tachyon install .asv/html
# then any static host, or:
asv-tachyon serve .asv/html
```

## What you get

- Dark, readable layout (grid + sidebar list)
- Benchmark search / filter
- Interactive time-series charts (uPlot)
- Machine / branch / python filters from `index.json` `params`
- Same data contract as the stock ASV site — works with existing published trees

## Development

```bash
# terminal 1: static data
asv-tachyon serve fixtures/sample_site -p 8765

# terminal 2: vite (optional hot reload; proxy configured to :8765)
cd web && npm install && npm run dev
```

## License

MIT.
