惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Jina AI
Jina AI
V
Visual Studio Blog
博客园 - 司徒正美
TaoSecurity Blog
TaoSecurity Blog
博客园 - 聂微东
IT之家
IT之家
博客园_首页
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
C
Cyber Attacks, Cyber Crime and Cyber Security
博客园 - Franky
雷峰网
雷峰网
罗磊的独立博客
S
Schneier on Security
C
Cybersecurity and Infrastructure Security Agency CISA
The Cloudflare Blog
T
Tailwind CSS Blog
B
Blog RSS Feed
H
Help Net Security
T
The Blog of Author Tim Ferriss
C
CXSECURITY Database RSS Feed - CXSecurity.com
T
Threatpost
C
CERT Recently Published Vulnerability Notes
博客园 - 三生石上(FineUI控件)
P
Palo Alto Networks Blog
I
Intezer
G
GRAHAM CLULEY
Engineering at Meta
Engineering at Meta
S
Securelist
J
Java Code Geeks
V
V2EX
Y
Y Combinator Blog
Simon Willison's Weblog
Simon Willison's Weblog
L
LINUX DO - 热门话题
云风的 BLOG
云风的 BLOG
Spread Privacy
Spread Privacy
MongoDB | Blog
MongoDB | Blog
P
Privacy International News Feed
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
B
Blog
Forbes - Security
Forbes - Security
Google Online Security Blog
Google Online Security Blog
Help Net Security
Help Net Security
S
SegmentFault 最新的问题
N
Netflix TechBlog - Medium
Webroot Blog
Webroot Blog
Microsoft Security Blog
Microsoft Security Blog
SecWiki News
SecWiki News
Scott Helme
Scott Helme
aimingoo的专栏
aimingoo的专栏
N
News and Events Feed by Topic

Butler's Log

Agentic Version Control Benchmarks Grit: rewriting Git in Rust with agents Git Merge 2026 Agent-safe Git with GitButler We’ve raised $17M to build what comes after Git Announcing the GitButler CLI for Linux The Great CSS Expansion A couple of git nits Simplifying Git by Using GitButler Introducing the GitButler CLI GitButler 0.19 - "Commander Keen" MCP vs RAG: Two Very Different Ways to Gain Context Getting Started With GitButler Agents Using the GitButler MCP Server to Build Better AI-Driven Git Workflows Using GitButler With Multiple GitHub Accounts Advent of Code! Upcoming GitButler Events Use GitButler for your Gerrit workflow Integrating GitButler and GitHub Enterprise Butler Flow: shipping code faster (but less like Alfred, more like CI on steroids) - Part 3 Butler Flow: shipping code faster (but less like Alfred, more like CI on steroids) - Part 2 Butler Flow: shipping code faster (but less like Alfred, more like CI on steroids) - Part 1 Grid Happens: Because Flexbox Wasn’t Enough Using Cursor Hooks for automatic version control Deep Dive into the new Cursor Hooks A Responsive Item Counter with CSS only GitButler 0.16 - "Sweet Sixteen" GitButler's Claude Code tab GitButler's Annual Open Source Pledge Report Git Mini Summit 2025 Videos Automate Your AI Workflows with Claude Code Hooks Managing Multiple Claude Code Sessions Without Worktrees GitButler 0.15 - "Quirky Quinceañera" 20 years of Git. Still weird, still wonderful. GitButler's new patch based Code Review (Beta) Going down the rabbit hole of Git's new bundle-uri How to do patch-based review with git range-diff How Core Git Developers Configure Git Why is Git Autocorrect too fast for Formula One drivers? Stacked Branches with GitButler Git Merge 2024 Talks are Up GitButler 0.13 - "Lucky Baseball" Fearless Rebasing Git Merge 2024 Why GitHub Actually Won GitButler is joining the Open Source Pledge The New Era of Town Hall Chat The Future of Open Source GitButler is now Fair Source Git Merge 2024 GitButler 0.12 - "Stingy Baker" The Birth of THE MERGE GitButler for Windows Fixing up Git with Autosquash The Git Zeitgeist Git Worktrees and GitButler DevWorld Git Slides Git Tips and Tricks Git Tips 1: Oldies but Goodies Git Tips 2: New Stuff in Git Git Tips 3: Really Large Repositories FOSDEM Git Talk Opening Up GitButler Debugging Tauri in VS Code Advent of GitButler Code Signing Commits in Git, Explained Virtual Branches Alpha Our We Are Developers Adventure Building Virtual Branches DevDays in Vilnius The Future of Software and Open Source Introducing GitButler
But Head: Crafting a Custom Font
Pavel Laptev · 2026-01-22 · via Butler's Log

TLDR: But Head is a custom header font for GitButler that bridges developer-focused monospace aesthetics with magazine-style editorial typography. It combines geometric precision with proportional elegance to create a distinctive visual identity.

Download: 📦 font files ∙ 💾 source files ∙ 🎨 live demo

Defining a visual identity for a developer tool requires balancing utility with distinction. We aimed for a typographic style that could reference the history of computing—specifically the technical manuals and magazines of the 80s and 90s—without feeling dated. The goal was to signal technical precision while maintaining high readability.

A couple of examples of our initial exploration

A couple of examples of our initial exploration

Check on a dummy blog post page

Check on a dummy blog post page

We initially settled on PP Editorial New. It provided the condensed serif aesthetic we were looking for. For body copy, we tested various monospace fonts and for marketing text we chose Spline Sans Mono. But for the in-app experience, we selected Inter due to its versatility and excellent screen readability.

original-bd3b2dc814c9882d0ca1179cbe489308.png

However, this pairing revealed a disconnect. While PP Editorial New offered sophistication, and Inter provided utility, the combination lacked a direct link to the developer experience. The "technical soul" usually conveyed by monospace aesthetics was missing from the primary branding elements.

The old landing page with PP Editorial New

The old landing page with PP Editorial New

After a decade dominated by neutral, geometric sans-serifs, the industry collectively swung toward expressive, high-contrast serifs. This was a welcome change, bringing the warmth and authority of print media back to digital products.

However, a trend's success is often its downfall. PP Editorial New and similar typefaces became ubiquitous in tech marketing materials. Major companies adopted this style for its perceived sophistication, leading to market saturation.

You can observe this saturation in real-time archives:

The prevalence of this style in general tech marketing diluted the distinctiveness of our brand.

Screenshot 2026-01-13 at 00.05.13.png

Screenshot 2026-01-13 at 00.05.37.png

This ubiquity, combined with the lack of specific "developer" character in the font, prompted us to develop a custom solution. We needed a typeface that was:

  1. Technically Aligned: Visually referencing code editors and terminal environments.
  2. Structural: Possessing the condensed qualities of editorial design but with geometric precision.
  3. Distinct: A unique visual signature for GitButler.

We analyzed two existing typefaces that represented the opposing qualities we wanted to merge: Xanh Mono and Instrument Serif.

Xanh Mono

Xanh Mono served as the technical foundation. Its appeal lay in its geometric boldness and engineered feel. However, strictly monospace fonts can be problematic for display headers; characters like 'i' and 'l' leave excessive whitespace, while 'm' and 'w' can feel compressed.

Instrument Serif

Instrument Serif offered the proportional balance we needed. Its humanist qualities provided a counterweight to the angularity of Xanh.

The design goal was to synthesize these attributes: the mechanical geometry of Xanh Mono with the proportional rhythm of Instrument Serif.

Proportional Adaptation and Glyphic Analysis

Combining these fonts required a complete reconstruction. We extracted the structural DNA of Xanh Mono—its sharp serifs and geometric strokes—and grafted it onto the proportional skeleton of Instrument Serif.

Comparison showing which source influenced each glyph

Comparison showing which source influenced each glyph

We adopted a selective glyph strategy:

  • Structural Geometry: We retained Xanh's angular structures (e.g., the apex of 'A', the crossbar of 'F') but discarded its monospace constraints.
  • Proportional Widths: We applied Instrument Serif's spacing logic to Xanh's forms, allowing letters to breathe naturally.
  • Organic Curves: The italic forms incorporate Xanh’s distinctive organic bowls (seen in the 'a'), contrasting with the rigid stems.

The curved terminals and corner treatments

The curved terminals and corner treatments

Optical Adjustments and Stroke Weight

Display fonts often suffer from readability issues at smaller sizes due to high stroke contrast (the difference between thick and thin lines). Our initial tests revealed that the horizontal hairlines from Xanh were too delicate for diverse screen rendering contexts.

To resolve this, we uniformly increased the weight of the horizontal strokes. This reduced the extreme contrast, improved the optical density of the headers, and ensured they held visual weight when paired with the Inter body text.

After imageBefore image

Visual weight adjustment: Thickening horizontal strokes for better readability

An effective italic cut should not merely be a slanted version of the Roman upright. We treated the italic as a distinct "voice" within the family. It introduces kinetic energy through changed letterforms—specifically the cursive nature of the lowercase—while maintaining the angular terminals of the uprights. This variation provides necessary rhythm in editorial layouts.

but-italic.jpg

Ligatures and Collision Resolution

We implemented standard f-ligatures (fi, fl, fh, fb, ffi, ffl) to resolve terminal collisions—a common necessity in serif fonts where the hood of the 'f' invades the space of successive ascenders. Additionally, we included discretionary ligatures for rare pairs like 'qj' to solve kerning gaps and add visual interest.

Screenshot 2026-01-14 at 00.04.39.png

We created But Head, a custom header font for GitButler that merges the geometric precision of Xanh Mono with the proportional elegance of Instrument Serif. It bridges developer-focused monospace aesthetics with magazine-style editorial typography, giving us a distinctive visual identity beyond the oversaturated "Editorial" trend.

Download: font filessource fileslive demo

dum-compilo-spero-2.webp

Pavel Laptev

Written by Pavel Laptev

Quack! A digital designer who loves open source. Flaps around making interfaces nice and helps the design and frontend pond whenever he can.