Describe the workspace as it actually is

The README's layout block was two reorganisations out of date: it still had
`tools_bbs/`, `tools_build/`, `tools_libs/`, an `archive/`, and the public site
and wiki at the workspace root. Since 2026-08-16 every folder is a Gitea org,
one to one — which is the reason a path in `repos.list` is just `<org>/<name>` —
so the block now says that, names the exceptions (`devarea` itself, plus `media/`
and `memory/`, which are not repos), and includes `stores/`.

`clone-repos.sh` needed no change: it makes the parent of each path, so a fresh
machine gets the org folders from the list alone.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-18 08:46:56 +02:00
co-authored by Claude Opus 5
parent 24ece3cb35
commit de86f7b62c
2 changed files with 24 additions and 12 deletions
+23 -11
View File
@@ -54,21 +54,33 @@ All scripts live under `scripts/` and can also be run standalone:
## Workspace structure
Every folder is a Gitea org, one to one — that is the rule since 2026-08-16, and
it is why a repo's path in `repos.list` is simply `<org>/<name>`:
```
TTG/
├── devarea/ # this repo
├── teletypegames/ # public site monorepo (GitHub)
├── wiki-pages/ # wiki mirror (Grav)
├── archive/ # retired projects
├── demos/ # engine demos, experiments
├── games/ # games
├── media/ # assets, images (not git)
├── tools/ # standalone tools, infra
├── tools_bbs/ # BBS-related repos
├── tools_build/ # engine/build toolchains (*-tools)
── tools_libs/ # own libraries (inkwell, rubbs, gorpg)
├── devarea/ # this repo — has to sit here, clone-repos.sh clones into its parent
├── bbs/ # BBS servers and showcases
├── build/ # CI toolchains and builder images (*-tools)
├── demos/ # one per engine: shows a platform, not a product
├── engines/ # own engines and libraries other repos depend on
├── games/ # catalog products
├── infra/ # the server environment itself (nginx, backups, wiki-pages)
├── services/ # what runs on our server (public site, bots)
├── stores/ # store engines and the stores built on them
├── tools/ # what one person installs and runs for themselves
── media/ # reference images and documents — not git repos
└── memory/ # working agreements the assistants read (not a git repo)
```
Two exceptions to the one-to-one rule: `devarea` itself, which stays at the
workspace root because `clone-repos.sh` clones into its parent directory, and
`media/` + `memory/`, which are not repos at all. `repos.ignore` lists the
server-side repos that are deliberately not cloned.
The org taxonomy — what each org is for, and why a repo belongs to one rather
than another — is in [REPO_REFACT.md](REPO_REFACT.md).
## Estate documentation
These describe the estate as a whole, which is why they live here rather than in