AI-Powered Font Design: Crafting High-Quality Fonts with Cursor, Claude Code, & ChatGPT

Erik ChenErik Chen
8 min read

Part 1: The Philosophy — The Designer as Creative Director

The fundamental shift is this: You are no longer just the typographer; you are the Art Director and Technical Lead of an AI-powered foundry assistant.

Your job is not to draw every curve but to:

  1. Establish the Vision: Define the unbreakable rules, the aesthetic principles, and the conceptual core of the typeface.

  2. Direct the Execution: Write precise prompts (your "creative brief" for the AI) to generate components that fit the vision.

  3. Curate and Refine: Use your designer's eye to identify where the AI's logical, mathematical output fails aesthetically and requires human intervention (optical correction, subtle curve adjustments).

  4. Engineer the System: Use the AI to build the font's technical scaffolding (features, kerning, character sets) with speed and precision.

A low-quality font made with AI is a collection of individually prompted glyphs. A high-quality font is a system generated from a single, coherent set of rules that you define and the AI helps you execute.


Part 2: The High-Quality Workflow: A Phase-by-Phase Guide

Let's walk through the creation of a hypothetical high-quality typeface, "Aperture Sans," a geometric sans-serif inspired by technical drawings.

Phase 1: Concept, Brief, and Rule-Setting (Claude/ChatGPT)

This is pure creative direction. The AI is your brainstorming partner.

  • Goal: Create a rock-solid design brief that will guide every subsequent prompt.

  • Your Role: Ask probing questions.

  • AI's Role: Act as a research assistant and sounding board.

Prompt for Claude/ChatGPT: "I'm designing a geometric sans-serif called 'Aperture Sans'. Its core principles are:

  1. Based on perfect circles and straight lines.

  2. Monolinear appearance (consistent stroke width of 55 units).

  3. Open apertures (like in 'c', 's', 'a').

  4. x-height of 500 units.

Help me build a detailed design brief. Brainstorm a list of 'governing rules'. For example, how should terminals (the ends of strokes) be treated? Should they be perfectly flat or slightly rounded? How should joins in letters like 'n' or 'm' be handled to avoid visual clogging?"

The AI will help you codify rules like: "All terminals are cut at a 90-degree angle to the stroke," or "In the 'n', the shoulder join should be a perfect tangent from the stem." This document is your bible.

Phase 2: Generating Core Glyphs (Cursor + Font Editor)

This is where you move from theory to practice. You'll use Cursor because it can see your font files and scripts, making it ideal for iterative development.

  • Goal: Create your "control characters" (e.g., n, o, H, V) based on your rules.

  • Your Role: Write precise, rule-based prompts and then critically evaluate the output in your font editor.

  • AI's Role: Translate your rules into executable Python code for GlyphsApp or RoboFont.

Prompt for Cursor (with your font project open): "Write a GlyphsApp Python script to generate the glyph 'n' for my font 'Aperture Sans'. Referencing my design brief, it must adhere to these rules:

  • The stem must be perfectly vertical and 500 units high (the x-height).

  • The stroke width must be exactly 55 units.

  • The shoulder must be constructed from a segment of a perfect circle that is tangent to the stem.

  • The interior and exterior paths must be parallel.

  • Ensure correct path direction and close all paths."

The Quality Step: The AI will generate a mathematically perfect 'n'. You will then open it in GlyphsApp and make micro-adjustments. Maybe the join feels too heavy—you'll manually nudge a point. Maybe the whole letter feels too narrow—you'll adjust the sidebearings. This human refinement of AI-generated perfection is the key to quality.

Phase 3: Systematization and Expansion (Cursor)

A font is a system. Now you expand from your control characters to the full set.

  • Goal: Apply the rules from your n and o to create related glyphs (h, m, b, d, p, q, c, e).

  • Your Role: Identify patterns and direct the AI to replicate them.

  • AI's Role: Act as a tireless production artist, building new glyphs from components.

Prompt for Cursor: "Using the existing 'n' glyph in my font as a reference, write a script to create the 'm'. It should use the stem and shoulder from 'n'. Duplicate the shoulder and stem components, position them correctly, and fuse them to create a seamless 'm' that maintains the 55-unit stroke width and all other design rules."

Another Prompt: "Create the glyph 'd' by combining the component for my 'o' glyph and adding a new ascender stem. The ascender height should be 750 units. Ensure the join is clean."

The AI does the repetitive work in seconds, ensuring consistency that would be hard to achieve manually.

Phase 4: Spacing and Kerning (Cursor + AI Chat)

This is 90% logic and 10% art, making it perfect for AI augmentation.

  • Goal: To establish rhythmic, even spacing and correct problematic letter combinations.

  • Your Role: Set the spacing logic and define kerning classes. Then, spot-check and adjust.

  • AI's Role: Automate the creation of spacing strings, class definitions, and initial kerning values.

  1. Setting Sidebearings:

    Prompt for Cursor: "Write a RoboFont script. For every glyph with a flat left side (like H, E, n, m), set the left sidebearing to 60 units. For every glyph with a round left side (O, C, G), calculate the bounding box and set the sidebearing so the whitespace is optically equivalent to the 60 units of the flat-sided glyphs. A good starting point is LSB = 60 * 0.4 for round glyphs."

  2. Kerning:

    Prompt for Claude: "Generate a comprehensive list of all-caps kerning pairs that I need to check for a geometric sans-serif. Focus on pairs involving straight, round, and diagonal shapes, like AV, TO, LY, WA."

    Prompt for Cursor: "Write a GlyphsApp script to create kerning classes. @L_flat should contain H, I, N, M, E, F. @R_flat should contain the same. @O_round should contain O, C, G, Q. Apply a class kerning value of -45 between T and @O_round."

You use the AI to do the bulk work, then you scroll through the proof and fix the exceptions by hand.

Phase 5: Technical Polish & Quality Assurance (Cursor)

A high-quality font is technically flawless.

  • Goal: To find and fix any errors before exporting.

  • Your Role: Define what "broken" means.

  • AI's Role: Build a custom QA tool to check every glyph against your rules.

Prompt for Cursor: "Write a comprehensive QA Python script for GlyphsApp. It should iterate through all glyphs in the font and check for the following issues:

  1. Open paths.

  2. Incorrect path directions.

  3. Extremum points that are not perfectly vertical or horizontal.

  4. Stray points or paths with fewer than two points.

  5. Inconsistent stem widths (check against the master width of 55, with a 2-unit tolerance).

  6. Missing anchors in diacritics (like _top in acutecomb).

Print a report to the console listing the glyph name and the specific error found."

This script becomes your pre-flight check, ensuring a level of technical quality that is difficult and time-consuming to achieve manually.

Phase 6: Advanced Features — Variable Fonts (Cursor)

This is where AI goes from a time-saver to a paradigm-shifter. Variable font math is complex.

  • Goal: To create a flawless variable font axis.

  • Your Role: Define the start and end points of the design space.

  • AI's Role: Calculate the "delta" movements for every point in every glyph.

Prompt for Cursor: "I have two master files for 'Aperture Sans', a 'Light' (weight 35) and a 'Bold' (weight 80). Write a script that can be run in my font editor to generate a 'Weight' [wght] axis. For each point in each glyph, calculate the interpolation delta between the Light and Bold masters and ensure all glyphs are compatible (same number of points, paths, and components)."


Part 3: The Litmus Test for High-Quality AI-Assisted Fonts

After using AI, ask these questions. You must be able to answer "yes" to all of them.

  1. Is it Cohesive? Do the a, e, g, and s look like they belong to the same family as the n, H, and O? (AI can drift if prompts aren't based on a central brief).

  2. Is it Optically Corrected? Did you make the horizontals slightly thinner than the verticals? Did you make the O slightly larger than the H so it feels the same size? The AI will not do this for you. This is a hallmark of quality.

  3. Is the Rhythm Right? When you type a paragraph, does it have an even texture and color? Or are there awkward gaps and dark spots? (This is where you manually tweak the AI's spacing).

  4. Is it Technically Sound? Did it pass your custom QA script? Does it install and render without errors?

  5. Is it Original? Does it have a point of view, or does it look like "AI-generica"? Your initial brief and manual refinements are what give the font its soul.

Conclusion: Your Skill, Augmented

Using Cursor, Claude, and other AI tools to create high-quality fonts isn't about letting the AI design for you. It's about leveraging AI to execute your precise design vision with superhuman speed and consistency.

The quality comes from the rigor of your rules, the precision of your prompts, and—most importantly—the discerning eye you use to guide, correct, and refine the AI's output. The future of typography isn't human vs. machine; it's the master typographer conducting an orchestra of powerful new tools.


0
Subscribe to my newsletter

Read articles from Erik Chen directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Erik Chen
Erik Chen