Skip to content

docs: the logo, the favicon, and the page that explains them (Phase K) - #921

Merged
ocots merged 3 commits into
mainfrom
docs/logo
Aug 31, 2026
Merged

ocots merged 3 commits into
mainfrom
docs/logo

Conversation

@ocots

@ocots ocots commented Aug 31, 2026

Copy link
Copy Markdown
Member

What

The site had no logo and no favicon — DocumenterVitepress warned about both on every build. This adds them, and a page that explains what the logo actually is: an optimal control problem.

The OptimalControl.jl logo is an energy-minimal low-thrust orbit transfer — a spacecraft spiralling from a low circular orbit out to a higher one under continuous weak thrust. Solved once and rotated by ±120°, the three trajectories' departure points land as the three dots of the Julia logo, winding onto the outer orbit around the central body.

logo

Commits

  1. Assets + deps — logo.png (1200×1200, copied verbatim from .extras/logos/logo-gagnant/) and favicon.ico (multi-resolution, derived). CairoMakie + Colors join docs/Project.toml, pinned 0.15 / 0.13 to match the CT*Makie extensions' own compat. docs/src/assets/{Manifest,Project}.toml regenerated in the same commit per the standing rule.

  2. The page — examples/logo.md, one linear executed @example session:

    • the transfer OCP in @def (normalised two-body dynamics, three insertion conditions, ∫‖u‖² → min)
    • a warm-started solve + the insertion residuals
    • Makie.plot(sol) — the docs' first page to use the Makie plotting backend
    • the (x₁, x₂) spiral
    • the ±120° rotation into the finished figure, which matches the committed logo.png
    • a pointer to .extras/logos/logo-gagnant/ for the exact asset script

    No Transfer/Layout structs, no trait dispatch — the generator in .extras stays the reference render; the page is a worked example, not a script.

Decision recorded

CairoMakie in the docs env (decision B in .reports/campaign/K-logo.md): the page runs the real thing and generates the published asset, at the cost of ~a few hundred MB and ~4 min of CI precompile. This is the docs' first Makie usage — ahead of the dedicated Makie-doc phase, but self-contained and not in conflict.

Verification

Full julia --project=. docs/make.jl:

  • exit 0
  • 0 Cannot resolve @ref
  • the two DocumenterVitepress: No logo.png / No favicon.ico warnings gone
  • the in-page generated logo matches docs/src/assets/logo.png
  • only build errors are the 4 unchanged Phase-D @extref upstream-backlog items

Add the run documentation label to build the site in CI.

🤖 Generated with Claude Code

ocots and others added 2 commits August 31, 2026 23:34
The site had no logo and no favicon — DocumenterVitepress warned about both
on every build. Add them from the winning design in
`.extras/logos/logo-gagnant/`:

- `docs/src/assets/logo.png` (1200×1200, copied verbatim)
- `docs/src/assets/favicon.ico` (multi-resolution 64/48/32/16, derived)

`CairoMakie` and `Colors` join `docs/Project.toml` so the logo page
(next commit) can generate the figure for real with the Makie backend —
pinned `0.15` / `0.13` to match the `CT*Makie` extensions' own compat.
`docs/src/assets/{Manifest,Project}.toml` regenerated in the same commit,
per the standing rule.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
New page `examples/logo.md`: the OptimalControl.jl logo is an energy-minimal
low-thrust orbit transfer, solved once and rotated ±120° into the three
Julia-logo dots. One linear `@example` session — the transfer problem in
`@def`, a warm-started `solve` with the insertion residuals, `Makie.plot(sol)`,
the (x₁,x₂) spiral, then the three-fold rotation into the finished figure,
which matches the committed `logo.png`. Points at `.extras/logos/logo-gagnant/`
for the exact asset script.

This is also the docs' first page to use the Makie plotting backend.

`make.jl`: "The logo" appended to the Examples nav.

Verified: full docs build exit 0, 0 unresolved @ref, the two DocumenterVitepress
"No logo.png / No favicon.ico" warnings gone.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@ocots ocots added the run documentation Trigger the Documentation workflow on this PR label Aug 31, 2026
@ocots
ocots merged commit 5026502 into main Aug 31, 2026
6 checks passed
@ocots
ocots deleted the docs/logo branch August 31, 2026 21:45
@ocots

ocots commented Aug 31, 2026

Copy link
Copy Markdown
Member Author

Suite au retrait de favicon.ico avant merge : docs/src/examples/logo.md:171-172 dit encore que la figure est utilisée « downscaled, as its favicon », ce qui n'est plus vrai — le site garde le favicon DocumenterVitepress par défaut.

Correction en une ligne (retirer la clause « and, downscaled, as its favicon »), à traiter dans une petite PR de suivi ou à plier dans E6 (suppression de docs/attic/).

ocots added a commit that referenced this pull request Aug 31, 2026
The favicon was removed before #921 merged (the site keeps the default
DocumenterVitepress favicon), but the page still said the figure was used
"downscaled, as its favicon".

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@ocots

ocots commented Aug 31, 2026

Copy link
Copy Markdown
Member Author

Corrigé directement sur main : 185a54f (clause « downscaled, as its favicon » retirée).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

run documentation Trigger the Documentation workflow on this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant