Hex stickers for the greta extension packages: greta.gp, greta.gam, greta.dynamics, and greta.distributions.
greta's own sticker is the original, on the left. I haven't redrawn it.
Each extension carries the greta wordmark at the original's size and its height, plus one symbol saying what that package does.
That's the whole idea. I wanted a family, not four stickers that happen to be purple.
I last ran this on 2026-08-06, on macOS 26.5 with R 4.6.1.
It is all in compare.qmd, with pictures. Every option I
considered, and why I landed where I did.
Render it and open output/compare.html.
targets::tar_make() # the stickers (~10s)
Sys.setenv(TAR_PROJECT = "explore")
targets::tar_make() # the sheets and write-up (~17s)Build the stickers first, because the write-up shows two of their sheets.
The two pipelines keep separate stores, so a broken comparison sheet can't stop the stickers being produced.
To change which sticker you get, edit design_choice() in R/design.R. It
names the theme, and the symbol for each package.
To change how a symbol is drawn, edit motif_style() in the same file.
Line weights, alphas, whether the distributions baselines are drawn at all.
Change it and only the drawings rebuild. The colours aren't there — a drawing's
secondary ink is detail_ink on the theme, because it has to differ per fill.
There's nothing to install as a package. packages.R is the dependency list,
plain library() calls, so renv::dependencies() can find them.
Mulish comes off Google Fonts on the first run, and caches under R_user_dir().
pipelines/stickers.R |
the deliverable pipeline. Read this one first |
pipelines/explore.R |
the design exploration |
_targets.yaml |
the two projects and their stores. main aliases stickers |
packages.R |
every package attached, in one place. Sources conflicts.R |
R/ |
the functions both pipelines call, one file per concern |
compare.qmd |
the design argument, with pictures |
reference/ |
the original greta hex, byte-identical to logos/greta_hex.png in greta |
| output | |
|---|---|
output/stickers/<theme>/ |
the stickers, 600 dpi. This is what the extension repos take |
output/sheets/ |
contact and comparison sheets |
output/variants/ · strips/ · icons/ |
exploration. Gitignored, regenerates |
Only stickers/ and sheets/ are committed.
Nothing is drawn closer than about 2mm to the edge of the hexagon.
I check that against the rendered pixels rather than trusting the arithmetic,
and check_margins() fails the build if anything crosses. It has caught real
bugs twice.
The other one is the wordmark. It is the original's, at the original's size and its height, rather than something close to it.
That is what makes them read as greta's, and it is also why the symbols are so small, because it leaves them a band only 0.22 tall. Its ink reaches y = 1.37, and the safe area caps the hexagon at 1.91.
I think that trade is worth it, but it is a trade, and I argue it properly in
compare.qmd.
