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

推荐订阅源

S
Security Affairs
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
大猫的无限游戏
大猫的无限游戏
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
爱范儿
爱范儿
阮一峰的网络日志
阮一峰的网络日志
GbyAI
GbyAI
D
Docker
美团技术团队
N
Netflix TechBlog - Medium
罗磊的独立博客
V
Visual Studio Blog
人人都是产品经理
人人都是产品经理
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Hugging Face - Blog
Hugging Face - Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Jina AI
Jina AI
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
M
MIT News - Artificial intelligence
腾讯CDC
MongoDB | Blog
MongoDB | Blog
Last Week in AI
Last Week in AI
博客园 - 三生石上(FineUI控件)
博客园 - 叶小钗
V
V2EX
L
LangChain Blog
博客园 - 【当耐特】
B
Blog RSS Feed
量子位
U
Unit 42
Engineering at Meta
Engineering at Meta
小众软件
小众软件
宝玉的分享
宝玉的分享
H
Help Net Security
Microsoft Azure Blog
Microsoft Azure Blog
云风的 BLOG
云风的 BLOG
博客园 - 聂微东
博客园 - 司徒正美
The Cloudflare Blog
The GitHub Blog
The GitHub Blog
T
Tailwind CSS Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
The Last Watchdog
The Last Watchdog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
S
SegmentFault 最新的问题
博客园_首页
Attack and Defense Labs
Attack and Defense Labs
TaoSecurity Blog
TaoSecurity Blog
Apple Machine Learning Research
Apple Machine Learning Research
S
Security @ Cisco Blogs

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.