draw-your-font
A skill that turns a photo of handwriting into an installable ttf, woff and woff2 font, all processing local
Medium risk
We rate an entry medium when the tool runs code, makes network calls or reads project files. Check what exactly it does before installing.
Why this level
- The skill runs a local CLI and installs an npm package
- It reads the image files you pass and writes font files
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add skills/draw-your-fontDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
Run in a terminal in the project folder
npx skills add danilo-znamerovszkij/draw-your-font --skill draw-your-font -a claude-code -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit ef367bb
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/danilo-znamerovszkij/draw-your-font.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/draw-your-font/
git -C "$tmp" checkout ef367bb2193b523a03e313b9219e31055558ae70
mkdir -p .claude/skills
cp -R "$tmp/skills/draw-your-font" .claude/skills/draw-your-fontCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
npx skills add danilo-znamerovszkij/draw-your-font --skill draw-your-font -a cursor -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit ef367bb
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/danilo-znamerovszkij/draw-your-font.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/draw-your-font/
git -C "$tmp" checkout ef367bb2193b523a03e313b9219e31055558ae70
mkdir -p .agents/skills
cp -R "$tmp/skills/draw-your-font" .agents/skills/draw-your-fontCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
npx skills add danilo-znamerovszkij/draw-your-font --skill draw-your-font -a github-copilot -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit ef367bb
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/danilo-znamerovszkij/draw-your-font.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/draw-your-font/
git -C "$tmp" checkout ef367bb2193b523a03e313b9219e31055558ae70
mkdir -p .github/skills
cp -R "$tmp/skills/draw-your-font" .github/skills/draw-your-fontCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
npx skills add danilo-znamerovszkij/draw-your-font --skill draw-your-font -a codex -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit ef367bb
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/danilo-znamerovszkij/draw-your-font.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/draw-your-font/
git -C "$tmp" checkout ef367bb2193b523a03e313b9219e31055558ae70
mkdir -p .agents/skills
cp -R "$tmp/skills/draw-your-font" .agents/skills/draw-your-fontCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
npx skills add danilo-znamerovszkij/draw-your-font --skill draw-your-font -a gemini-cli -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit ef367bb
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/danilo-znamerovszkij/draw-your-font.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/draw-your-font/
git -C "$tmp" checkout ef367bb2193b523a03e313b9219e31055558ae70
mkdir -p .agents/skills
cp -R "$tmp/skills/draw-your-font" .agents/skills/draw-your-fontCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/danilo-znamerovszkij/draw-your-font.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/draw-your-font/
git -C "$tmp" checkout ef367bb2193b523a03e313b9219e31055558ae70
mkdir -p .devin/skills
cp -R "$tmp/skills/draw-your-font" .devin/skills/draw-your-fontCommands for macOS and Linux, on Windows run them in Git Bash.
Formerly Windsurf.
Run in a terminal in the project folder
npx skills add danilo-znamerovszkij/draw-your-font --skill draw-your-font -a cline -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit ef367bb
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/danilo-znamerovszkij/draw-your-font.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/draw-your-font/
git -C "$tmp" checkout ef367bb2193b523a03e313b9219e31055558ae70
mkdir -p .cline/skills
cp -R "$tmp/skills/draw-your-font" .cline/skills/draw-your-fontCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
npx skills add danilo-znamerovszkij/draw-your-font --skill draw-your-font -a roo -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit ef367bb
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/danilo-znamerovszkij/draw-your-font.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/draw-your-font/
git -C "$tmp" checkout ef367bb2193b523a03e313b9219e31055558ae70
mkdir -p .roo/skills
cp -R "$tmp/skills/draw-your-font" .roo/skills/draw-your-fontCommands for macOS and Linux, on Windows run them in Git Bash.
A fork of Roo Code, same .roo folders.
Run in a terminal in the project folder
npx skills add danilo-znamerovszkij/draw-your-font --skill draw-your-font -a opencode -yThe skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.
Without third-party tools, from commit ef367bb
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/danilo-znamerovszkij/draw-your-font.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/draw-your-font/
git -C "$tmp" checkout ef367bb2193b523a03e313b9219e31055558ae70
mkdir -p .agents/skills
cp -R "$tmp/skills/draw-your-font" .agents/skills/draw-your-fontCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/danilo-znamerovszkij/draw-your-font.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/draw-your-font/
git -C "$tmp" checkout ef367bb2193b523a03e313b9219e31055558ae70
mkdir -p .agents/skills
cp -R "$tmp/skills/draw-your-font" .agents/skills/draw-your-fontCommands for macOS and Linux, on Windows run them in Git Bash.
Run in a terminal in the project folder
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/danilo-znamerovszkij/draw-your-font.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/draw-your-font/
git -C "$tmp" checkout ef367bb2193b523a03e313b9219e31055558ae70
mkdir -p .agents/skills
cp -R "$tmp/skills/draw-your-font" .agents/skills/draw-your-fontCommands for macOS and Linux, on Windows run them in Git Bash.
Install the skill: npx skills add danilo-znamerovszkij/draw-your-font. Then call /draw-your-font and pass the path to the handwriting photo. Requires Node 18 or newer.
Other ways from the author
npx skills add danilo-znamerovszkij/draw-your-fontInstalls the skill; then call /draw-your-font and pass a handwriting photo.
This is third-party code. Review the repository files before installing.
What it does
The skill builds a font from your handwriting photo. The agent finds the letters in the image, labels them by vision and judges quality, while the CLI does all geometry: contour tracing, metrics, font assembly. The output is a ttf file, and on request woff, woff2 and a font-face snippet for a website. There is a template mode: print a pdf grid, write your alphabet, photograph the pages and hand them back. You refine by talking: rounder, bolder, fix one letter. Everything runs on your machine and the photos are never uploaded.
Who it is for. For designers and developers who want a personal handwriting font from their own writing.
Good fit when
- You have a handwriting photo and want a font from it
- You need a handwriting font for the web in woff and woff2
- You want to refine an earlier font: rounder, bolder, fix a letter
Not a fit when
- You want to pick or identify an existing font, not create your own
- You have no handwriting photo and do not want to fill a template
Example request
Here is a photo of my handwriting, make a font from it and give me woff2 with css for my siteLimitations
The skill creates a font only from your handwriting; it does not pick or identify existing fonts. It needs Node 18 or newer and installs the draw-your-font npm package on first run. Quality depends on the photo: even light and a dark pen work best, and the printed template gives the cleanest result.
How to disable. Remove the skill from the Claude Code skills directory and optionally uninstall the draw-your-font npm package.
Security check
- The skill runs a local CLI and installs an npm package
- It reads the image files you pass and writes font files
README in short
The README describes a Claude Code skill and a CLI that build a font from a handwriting photo. The skill installs with npx skills add, you hand the agent a photo, it labels the letters, and the npm package assembles the font. There is also a deterministic CLI with template, segment, build, make and preview commands and refinement flags. It supports ttf, woff, woff2 and a font-face snippet. Everything runs locally without FontForge or external binaries and needs Node 18 or newer. MIT licensed.
SKILL.md
--- name: draw-your-font description: Turn a photo of handwriting into a real installable font (TTF/WOFF/WOFF2). Use when the user shares a photo of handwritten letters and wants a font, asks to "make my font", "handwriting font", "turn my handwriting into a font", "font from this photo/image", asks for a handwriting font template, or wants to refine a font made earlier (smoother, thicker, fix a letter). Not for choosing, recommending, or identifying existing fonts - only for creating a font from the user's own handwriting. --- # draw-your-font Photo of handwritten letters in -> installable font out. You do the seeing (find and label letters, judge quality); the CLI does all geometry (trace, metrics, font assembly). Never edit SVG paths or coordinates yourself. ## Setup (once per session) Run `node <skill-dir>/scripts/resolve-cli.js` once. It prints the CLI invocation to use (e.g. `node /abs/path/src/cli.js`). Substitute that printed command wherever the examples below show `$DYF` - shell variables do not persist between tool calls, so paste the real command each time.
FAQ
Is the handwriting photo uploaded anywhere?
No, all processing is local on your machine; the photos are not sent to a server.
Can I use it without the agent, via CLI only?
Yes, there is a deterministic CLI: npx draw-your-font make photo.jpg with the characters and a name; no AI needed.
Related
Skills and CLI from HeyGen: the agent writes HTML compositions and renders them into MP4 videos, captions, motion graphics and decks
Blender MCP
MCP for Blender
An MCP server and Blender addon: the agent creates and edits objects, materials and scenes, pulls assets and runs Python in Blender
Official Remotion skills for making videos in React: compositions, animation, captions, maps and rendering
Agentic video studio for Claude Code, Cursor and Codex: script, voiceover, images, stock footage, music, subtitles and render