TerslerThe little junk rig that could

Source files / site · raw

README.md

# Tersler website

A static site built from this repository: the docs, the benchmark results, every source file and a
tarball of the whole repo. Plain HTML and one CSS file. No JavaScript, web fonts or external requests.
Charts are inline SVG. It works on any static host and when opened straight from disk.

## Build

```bash
python3 site/build.py              # writes site/out/
python3 -m http.server -d site/out 8000   # optional local preview: http://localhost:8000
```

Needs Python 3.8+ and nothing else. `site/out/` is regenerated from scratch each time.

## Update the benchmark data

```bash
site/collect-data.sh tersler.local ~/src/llm-benchmark/results
python3 site/build.py
```

- `bench/data/results.csv`, `concurrency.jsonl` and `loadtest-*.csv` are copied from `/opt/tersler/bench/` on the rig.
- lean_bench results are stripped to the scoring fields: no prompts or model answers.
- Every new run needs a label in `bench/data/notes.json`:
  - lean_bench files that have no label are skipped.
  - tersler-bench runs and concurrency labels without a note are shown with no description.

## What it publishes

| Page | Source |
|---|---|
| Overview | `README.md` + key numbers from `bench/data/` |
| Rebuild guide, Parts, Hardware notes, … | `docs/*.md`, `image/README.md`, `TODO.md` |
| Benchmarks | `bench/README.md` + `bench/data/` |
| Source files | every file in the repo, with a raw copy under `files/` |
| `tersler.tar.gz` | the same file set as one download (unpacks to `tersler/`) |

Not published: `image/out/` (the built disk image and console password), `docs/reference/` (vendor
PDFs, which the rebuild guide tells you where to get), `site/out/`, `__pycache__`.
`build.py` sets these in `EXCLUDE_DIRS`.

## Upload

Copy the contents of `site/out/` to the web root. All links are relative, so a subdirectory works too.
For example:

```bash
rsync -av --delete site/out/ user@host:/var/www/tersler/
```

The Markdown converter in `build.py` only covers the syntax these docs use: headings, lists and task
lists, tables, fenced code, quotes, links and images. If a page renders oddly after a docs edit, check
there first.