Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions .mise.toml
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,6 @@ description = "Regenerate docs/src/data/repos.json from the Lab271 GitHub org"
dir = "docs"
run = "node scripts/refresh-repos.mjs"

[tasks.docs-marks]
description = "Regenerate src/assets/logo.svg and badge.svg (Inter outlined to paths)"
dir = "docs"
run = "uv run scripts/refresh-marks.py"

[tasks.docs-icons]
description = "Re-export the favicon/apple-touch-icon PNGs from src/assets/badge.svg"
dir = "docs"
Expand Down
48 changes: 29 additions & 19 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ mise run docs-dev # dev server at http://localhost:4321/
mise run docs-check # astro check (type/content check)
mise run docs-build # static build into docs/dist
mise run docs-repos # regenerate docs/src/data/repos.json from the Lab271 org (needs `gh` auth)
mise run docs-marks # regenerate the logo/badge SVGs (needs uv)
mise run docs-icons # re-export the favicon PNGs from src/assets/badge.svg (needs librsvg)
```

Expand All @@ -38,11 +37,12 @@ When starting the dev server directly (not via mise), use background mode:
- `src/intro.md`: the intro paragraphs, imported into the landing page.
- `src/styles/custom.css`: Lab271 brand theme (colors, fonts) mapped onto
Starlight's CSS custom properties.
- `src/assets/logo.svg`: the horizontal wordmark used in the nav bar.
- `src/assets/logo.svg`: the horizontal wordmark used in the nav bar. Vendored
from the design team's final artwork (the Lab271 design refresh) rather than
generated - see Branding below.
- `src/assets/badge.svg`: the badge mark, and the master for the favicon PNGs
in `public/`. Both SVGs are generated by `scripts/refresh-marks.py`
(`mise run docs-marks`); the PNGs by `scripts/refresh-icons.sh`
(`mise run docs-icons`).
in `public/`. Also vendored artwork. The PNGs are re-exported from it with
`scripts/refresh-icons.sh` (`mise run docs-icons`).
- `src/assets/hero.jpg`: the hero photo.
- `src/data/repos.json`: committed, auto-generated list of public `Lab271`
repos that carry an open source license. Regenerate with `mise run
Expand All @@ -63,23 +63,33 @@ When starting the dev server directly (not via mise), use background mode:

## Branding

The theme implements the Lab271 brand kit (`labs-branding`, in particular
`brand/visual-identity.md` and `brand/tokens/lab271.tokens.json`). When touching
colors, type or the marks, read those first. The rules that shaped what is here:
The theme implements the Lab271 design refresh (see ADR-0005 in
`Lab271/www.lab271.io`), which supersedes the `labs-branding`
(`brand/visual-identity.md`, `brand/tokens/lab271.tokens.json`) Navy/Primary
Blue/Teal system this site carried before. `labs-branding` has not been
re-derived from the refresh yet, so it is temporarily stale - treat this
repo's `custom.css` and its `www.lab271.io` sibling as authoritative in the
meantime. The rules that shaped what is here:

- **Palette.** Navy `#1A1F36` anchors dark surfaces, including the nav bar in
both color modes. Primary Blue `#6C8EEF` is the signature, Blue Light
`#A8C0FF` its gradient partner. Teal `#36C5B0` is a spark: at most one per
composition, which here is the rule in the badge. Never pure black.
- **Palette.** Near-black `#020C17` anchors dark surfaces, including the nav
bar in both color modes (never pure black). Cyan `#1EE8ED` (dark mode) /
`#18B9BD` (light mode, darkened for contrast) is the signature accent.
Orange `#FF7000`/`#FF8D33` is a spark: at most one per composition, which
here is the rule in the badge. Light mode's canvas is a warm paper off-white
(`#FAF9F5`), not a cool gray.
- **Type.** Inter and JetBrains Mono are the open stand-ins for TT Interphases
and TT Interphases Mono, the licensed SBP faces that cannot ship on a public
build. Sentence case headings with tight tracking. Mono is "a pinch of tech",
so it is limited to the `e = 2.71828` motif and the language labels.
- **Marks.** `logo.svg` and `badge.svg` set Inter outlined to paths, so they
render without the font installed. The badge follows the brand kit's concept A,
"the door plate". Change them by editing `scripts/refresh-marks.py` and
re-running it, not by editing the path data.
- **Written "Lab271"**, sentence case, no space. Never "LAB271".
build - unchanged by the refresh. Sentence case headings with tight
tracking. Mono is "a pinch of tech", so it is limited to the `e = 2.71828`
motif and the language labels.
- **Marks.** `logo.svg` and `badge.svg` are vendored directly from the design
team's final artwork for the refresh, not generated - the previous
Inter-outlined-to-paths approach (`scripts/refresh-marks.py`) is retired.
Update them by replacing the SVG file with a new export from the design
source, not by hand-editing the path data.
- **Written "Lab271"**, sentence case, no space, in all prose and copy. Never
"LAB271" in running text - the all-caps treatment is reserved for the
wordmark graphic itself (`logo.svg`).
- US English throughout.
- No em dashes in the copy. `docs/scripts/refresh-repos.mjs` normalizes them out
of upstream GitHub descriptions too.
Expand Down
Binary file modified docs/public/apple-touch-icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/public/favicon-32x32.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/public/favicon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
135 changes: 0 additions & 135 deletions docs/scripts/refresh-marks.py

This file was deleted.

21 changes: 11 additions & 10 deletions docs/src/assets/badge.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading