diff --git a/marketing/instagram/README.md b/marketing/instagram/README.md new file mode 100644 index 000000000..b979344da --- /dev/null +++ b/marketing/instagram/README.md @@ -0,0 +1,36 @@ +# Instagram — design-work post + +A square (1080×1080) Instagram post built in the kernel.chat editorial +design language (`docs/design-language.md`): warm cream stock, EB +Garamond display + Courier Prime meta, tomato as the only spot color, +the asterisk as the single recurring system mark, a bracketed bilingual +kicker, and a bottom-right issue monument. + +## Files + +| File | What it is | +|---|---| +| `build_post.py` | Generator — writes the SVG and rasterizes it to PNG with cairosvg | +| `post.svg` | Vector source (scalable, editable) | +| `kernel-design-post.png` | 2160×2160 export, ready to upload (Instagram downsamples to 1080) | + +## Rebuild + +```sh +pip install cairosvg fonttools brotli +# Real brand fonts (EB Garamond + Courier Prime) via Fontsource on npm, +# converted woff2 -> ttf and installed for fontconfig. WenQuanYi Zen Hei +# (system) covers the Japanese glyphs in the bilingual lockups. +python3 build_post.py +``` + +To edit copy (headline, deck, issue number, hashtags), change the +strings in `build_post.py` and re-run. + +## Suggested caption + +> Every release is an issue. Sixteen issues of evidence-cited editorial +> design — warm paper, one spot color, a single recurring mark. Built in +> public. +> +> #editorialdesign #typography #designsystem #graphicdesign #magazine diff --git a/marketing/instagram/build_post.py b/marketing/instagram/build_post.py new file mode 100644 index 000000000..ef70e81ed --- /dev/null +++ b/marketing/instagram/build_post.py @@ -0,0 +1,113 @@ +#!/usr/bin/env python3 +""" +Instagram design-work post — kernel.chat editorial grammar. + +A 1080x1080 square cover built in the magazine's design language: +warm cream stock, EB Garamond display + Courier Prime meta, tomato as +the single spot color, the asterisk (the) as the one recurring system +glyph, bracketed bilingual kicker, and a bottom-right issue monument. + +Renders the SVG to PNG with cairosvg at 2x for crisp upload. + +Tokens (from docs/design-language.md): + cream #F3E9D2 warm secondary stock (ground) + ink #1F1E1D primary dark text + coffee #6B4E3D warm brown / swash decks + tomato #E24E1B the only spot color +""" +import cairosvg + +CREAM = "#F3E9D2" +INK = "#1F1E1D" +COFFEE = "#6B4E3D" +TOMATO = "#E24E1B" + +SERIF = "EB Garamond, Liberation Serif, serif" +# CJK-capable fallback so bilingual lockups render the JP glyphs +# (Courier Prime carries no kana/kanji; WenQuanYi picks them up per-glyph). +MONO = "Courier Prime, WenQuanYi Zen Hei, DejaVu Sans Mono, monospace" +JP = "WenQuanYi Zen Hei, Courier Prime, sans-serif" + +W = H = 1080 +M = 84 # outer editorial margin + + +def asterisk(cx, cy, r, color): + """The single recurring system mark: a 6-spoke editorial asterisk + (the project's PopIcon `asterisk`), drawn as three crossing strokes.""" + import math + a = 0.8660254 * r # cos(30) * r + b = 0.5 * r # sin(30) * r + w = max(1.8, r * 0.32) + lines = [ + (cx, cy - r, cx, cy + r), + (cx - a, cy - b, cx + a, cy + b), + (cx - a, cy + b, cx + a, cy - b), + ] + return "".join( + f'' + for x1, y1, x2, y2 in lines + ) + +svg = f''' + + + + + + + kernel.chat + {asterisk(748, 90, 7, TOMATO)} + ISSUE 375 · JUN 2026 + + + + [ DESIGN · 設計 ] + + + + Every release + is an issue. + + + Sixteen issues of evidence-cited editorial design — + warm paper, one spot color, a single recurring mark. + + + 毎号が、ひとつの号。 + + + + + DESIGNED IN PUBLIC · 公開設計 + #editorialdesign #typography #designsystem + + + ISSUE + 375 + THE SIX BORROWS +''' + +with open("post.svg", "w") as f: + f.write(svg) + +cairosvg.svg2png(bytestring=svg.encode(), write_to="kernel-design-post.png", + output_width=2160, output_height=2160) +print("wrote post.svg and kernel-design-post.png (2160x2160)") diff --git a/marketing/instagram/kernel-design-post.png b/marketing/instagram/kernel-design-post.png new file mode 100644 index 000000000..c3b37572d Binary files /dev/null and b/marketing/instagram/kernel-design-post.png differ diff --git a/marketing/instagram/post.svg b/marketing/instagram/post.svg new file mode 100644 index 000000000..0949690d0 --- /dev/null +++ b/marketing/instagram/post.svg @@ -0,0 +1,54 @@ + + + + + + + + kernel.chat + + ISSUE 375 · JUN 2026 + + + + [ DESIGN · 設計 ] + + + + Every release + is an issue. + + + Sixteen issues of evidence-cited editorial design — + warm paper, one spot color, a single recurring mark. + + + 毎号が、ひとつの号。 + + + + + DESIGNED IN PUBLIC · 公開設計 + #editorialdesign #typography #designsystem + + + ISSUE + 375 + THE SIX BORROWS + \ No newline at end of file