Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Add cns-editorial Marp theme (cns.me design system)#662

Open
chrisns wants to merge 7 commits into
mainfrom
claude/marp-template-design-system-ld3h2d
Open

Add cns-editorial Marp theme (cns.me design system)#662
chrisns wants to merge 7 commits into
mainfrom
claude/marp-template-design-system-ld3h2d

Conversation

@chrisns

@chrisns chrisns commented Jun 15, 2026

Copy link
Copy Markdown
Owner

What

A new, beautiful Marp slide theme — themes/cns-editorial.scss — built directly from the cns.me web design system (blog.cns.me · talks.cns.me · govbuy.run.cns.me).

The Policy as [versioned] Code talk is switched to it as a live demo. Per the request, the only markdown change is the theme: line in its frontmatter — no other content was touched.

The design system, ported to slides

Tokens lifted straight from the sites' CSS:

Display Fraunces (variable serif, italic emphasis)
Body Hanken Grotesk
Mono JetBrains Mono (eyebrows, code, tables)
Paper #F4EFE7 warm cream · #FBF8F2 bone
Ink #14110F near-black · night code surfaces
Accent flamingo pink #E5197F / #FF2D8A / #B30E61

Highlights

  • Editorial title hero — Fraunces headline with hot-pink italic emphasis, mono 🦩 talks.cns.me wordmark, flamingo-pink parallax waves.
  • Code blocks — near-black surfaces with a pink edge, soft pink glow and a JetBrains Mono syntax palette tuned for dark; the deck's side-by-side pre layout fits cleanly.
  • fade semver slides — the changing digit pops in pink while the rest whispers.
  • Full coverage of every construct the deck uses so nothing breaks: title-page, invert, fade / fade.invert, white, listline (animated), tables, blockquotes, and the glitchy end Q&A slide.

Notes

  • Registered the theme in .marprc.yml's themeSet (config only) so npm run build picks it up; the compiled themes/*.css stays gitignored as before.
  • Verified by rendering all 161 slides to PNG and a full PPTX with the new theme before delivery.
  • Switching the talk's theme is intended as a temporary showcase — revert the one frontmatter line to restore themes/cns.

https://claude.ai/code/session_01Lrs5cWsqGvFgNsHe1mi5xi


Generated by Claude Code

claude added 7 commits June 15, 2026 09:49
Introduce themes/cns-editorial.scss, a slide theme built from the
cns.me web design system (blog.cns.me / talks.cns.me / govbuy.run.cns.me):
Fraunces display serif, Hanken Grotesk body, JetBrains Mono, warm cream
paper, near-black ink and flamingo pink. Covers all the deck's existing
constructs (title-page, invert, fade, white, listline, side-by-side code,
tables, the glitch end slide) so no markdown changes are needed beyond the
theme reference.

Register the theme in .marprc.yml's themeSet and point
PolicyAsVersionedCode.md at it (frontmatter theme line only).
The cns-editorial showcase was temporary; restore the original theme.
The new theme (themes/cns-editorial.scss) and its themeSet registration
stay in place so it remains available to use.
Theme refinements (work in progress, design still under review):
- Hanken/Fraunces balance kept editorial (serif display headings) while
  calming the code blocks (subtle deep-pink edge, soft shadow, no glow).
- Inline backtick code now carries a chip background everywhere, including
  inside headings (light paper chip / dark night chip), scaling cleanly.
- Listline tool ticker uses neutral middot separators instead of the
  pink diagonal slashes.

PolicyAsVersionedCode.md temporarily points at themes/cns-editorial for
visual review; revert the one frontmatter line to restore themes/cns.
Replace the middot separators (which read like bullets) with a very
faint thin vertical pipe between inline tool names.
The pipe pseudo-element collided with the mono glyphs; switch to a faint
box-model left border on inline-block items with padding so the divider
can never overlap the text.
inline-block + padding had spread the list out so lower items overflowed
off the slide. Back to display:inline with tight padding and a tightened
line-height so all entries fit, keeping the non-overlapping hairline divider.
Reduce line-height and zero list margins so all entries pack densely and
the last row no longer crops off the bottom of the slide.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants