software catalog

This commit is contained in:
2026-10-28 15:08:48 -06:00
parent 201ed5f730
commit c468387825
152 changed files with 4127 additions and 68 deletions
+17 -1
View File
@@ -50,6 +50,7 @@ how a section type looks, edit its partial.
| `stats` | `items` of `value` + `label` (numbers count up) |
| `table` | `headers`, `rows` (lists; the first cell labels the row) |
| `siblings` | The sibling directory, from `data/siblings.yaml` (see the comment at its top). `emptyText` and `emptyCtas` set what shows while it's empty |
| `catalog` | The software catalog: every page in `content/software/`, grouped by `params.softwareGroups`, with a filter box |
| `faq` | `items` of `q` + `a` |
| `callout` | `text` |
| `final-cta` | `headline`, `body`, `ctas` (the navy closing band) |
@@ -58,13 +59,28 @@ Every type also takes `kicker`, `headline`, `lede` and `id` (an anchor;
without one, it's made from the kicker or headline). `ctas` is a list of
`label`, `url` and `style` (`primary`, `ghost` or `text`).
## The software catalog
Each title CoreDesktop installs has a page in `content/software/`, rendered by
`layouts/software/single.html`; `content/software/_index.md` is the Software
page itself. A title's facts go in its front matter: `category` (one of the
`params.softwareGroups` names in `hugo.toml`, which also sets the order of
the groups), `tagline`, `source` (`pacman`, `AUR`, `Flathub`, `installer`,
`mise` or `extension`), `package`, `command`, `replaces`, `website`, `code`
(the source repository) and `links`. The body has three sections: What it
is, Why it's here and On CoreDesktop. To add a title:
```sh
hugo new content software/<name>.md --kind software
```
Code blocks and `command` sections get a Copy button from the script in
`layouts/_default/baseof.html`.
## Where things live
- `hugo.toml` — site settings (`params.repoUrl`, `params.installCommand`) and the menus
- `content/` — one file per page
- `content/` — one file per page; `content/software/` holds one per catalog title
- `data/siblings.yaml` — the projects listed in the sibling directory
- `layouts/` — templates and section partials
- `static/css/style.css` — the whole design system