sites/README.md

62 lines
3 KiB
Markdown
Raw Permalink Normal View History

# sites
Three domains, one directory each, one audience each.
| Directory | Domain | Subject | Audience |
|---|---|---|---|
| `flux.vision/` | flux.vision | Kiritan Flux: media arts, VJ, performance, installations, 2003-2021 | festival and art world |
| `tobias.raayoni-last.com/` | tobias.raayoni-last.com | client work, portfolio, CV | clients, employers, galleries |
| `randogoth.com/` | randogoth.com | the technical work, six areas | devs, retro and small-net readers |
They were one site until October 2026. The split is the fix: four audiences were being handed one
page, and a page that serves four audiences collapses into the only format that can hold unrelated
things, which is a dated list.
`sublunar.space` is deliberately not here. It is a working blog with nine years and 440 commits of
its own voice, and it keeps its own repo.
## Building
All three are Pelican, with no shared build. Each stands alone:
```sh
cd flux.vision # or tobias.raayoni-last.com, or randogoth.com
uv run --quiet --with pelican --with markdown -- pelican content -o output -s pelicanconf.py
```
Each directory has its own README covering its theme, its taxonomy and the traps specific to it.
| | articles | theme | notes |
|---|---|---|---|
| `flux.vision/` | 90 | `flux` | recovered from the Wayback Machine; closed, maintained not updated |
| `tobias.raayoni-last.com/` | 97 | `raayoni` | grid of tiles, light and dark |
| `randogoth.com/` | 41 | `bbs` | an ANSI bulletin board, 80 columns; `mc-pelican` is the fallback |
## Deployment
Built and served on `bucur`. A push triggers a webhook that builds the changed site and rsyncs it
into place. Content does not trigger a system activation: the site derivations are flake packages,
so a typo costs a Pelican run rather than a `nixos-rebuild switch`.
## Shared conventions
- **No em dashes.** Commas, colons, full stops or `·`.
- **Flat slugs.** `{slug}.html` on all three. Categories get reworked; slugs should not move.
- **No `nl2br`.** The recovered bodies are hard wrapped at about 70 characters, so it turns every
source line into a forced break. This has been fixed twice; do not add it back.
- **Lost images are handled at build time,** not in the browser. The references stay in the Markdown
because the reference records what was there; `plugins/lostimages.py` strips them from the output.
- **Check the built output, not the source.** Several bugs here were invisible at a glance and
obvious to a counter: forced line breaks that fell near the natural wrap, box drawing a column
short, a config change that silently emptied every hotkey.
## The working material
The inventory, the recovery pipelines, the pruned articles, the source archives and `REFACTOR.md`
live outside this repo, at `/mnt/data/Backup/sites-restructure-2026-10-05/`. A clone is the three
sites, not the argument that produced them.
That backup is worth keeping: the sort is not reproducible from the sites alone. `inventory.tsv`
records why each of 266 articles went where it did, and `_pruned/` is the only record of what was
taken out.