2026-10-28 09:33:01 -06:00
2026-10-28 09:17:40 -06:00
2026-10-28 09:33:01 -06:00
2026-10-28 09:17:40 -06:00
2026-10-28 09:33:01 -06:00
2026-10-28 09:33:01 -06:00
2026-10-28 09:17:40 -06:00
2026-10-28 09:33:01 -06:00
2026-10-28 09:17:40 -06:00
2026-10-28 09:17:40 -06:00

Federated CoreDesktop — Hugo Site

The website for Federated CoreDesktop, the scripts that turn a fresh Arch Linux + GNOME install into a tiling, keyboard-first desktop. Its look follows the Federated Computer site (hammerfest): a navy top bar and hero, bands that alternate white and light grey, Inter headlines and rounded cards, recolored here with a magenta accent and a cyan primary button.

Requirements

  • Hugo, v0.146 or newer (tested on v0.168.0 extended).

Running it locally

hugo server

Then open http://localhost:1313/.

Building for production

hugo --minify

Output goes to public/ (ignored by git). Links are relative, so the build also works from any subfolder or straight from disk.

How pages are built

Every page's content lives in its front matter as a sections: list. Each section has a type plus the fields that type needs, and layouts/partials/render-sections.html hands it to the matching partial in layouts/partials/sections/. To change copy, edit content/*.md; to change how a section type looks, edit its partial.

Type Fields
hero eyebrow, title, subhead, ctas, compact. On the right: log (a typed-out terminal; lines take tag, text, think, done; logTitle sets the title bar), otherwise the three-pane tiling visual (tiles relabels the panes; visual: false drops it). video (a path without extension, e.g. /video/ultrawide-desktop, with .webm, .mp4 and a .jpg poster in static/) instead runs a looping screen recording full width under the copy; videoTitle and videoLabel set its window bar and description
text kicker, headline, body (Markdown, including fenced code), ctas. Without a headline, the body renders as a large statement; *em* is magenta
command kicker, headline, lede, command (defaults to the install command), prompt, note
features items of label + body
cards columns, items of label, title, body, link, linktext
steps items of title + body
checklist items (Markdown strings)
split columns of title + items (the first column is dark)
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
faq items of q + a
callout text
final-cta headline, body, ctas (the navy closing band)

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).

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
  • data/siblings.yaml — the projects listed in the sibling directory
  • layouts/ — templates and section partials
  • static/css/style.css — the whole design system
  • static/video/ — the home page's screen recording (WebM, MP4 and poster)
  • static/images/coredesktop-logo.svg — the wordmark, drawn in the Federated lettering
S
Description
No description provided
Readme
1.9 MiB
Languages
CSS 60.5%
HTML 35.6%
Python 3.9%