An open-source pipeline that converts images into laser-cuttable SVG patterns. It traces, overlays, compares, and iterates — looping until the vector is faithful to the source.
Open Source · Run it yourself · Built for makers
Start with any photo. Pick a style — stained glass, woodcut, line art — and the pipeline takes it from there.
OpenAI's image model redraws the source in the target aesthetic — clean regions, bold outlines, no floating islands.
Two tracing libraries — VTracer and Potrace — convert the raster to SVG paths, run against each other to find the best result.
Both tracers output native bezier curves — Potrace's optimized splines and VTracer's tunable smoothing produce clean, minimal paths.
The vector is composited over the source and an LLM visually compares them, flagging discrepancies until the trace is faithful.
The final SVG goes straight to the laser cutter. No orphaned islands, consistent line weight — ready to burn.
Get Started
One prompt — your coding agent handles cloning, setup, and running the pipeline.
Your agent clones the repo, installs Python dependencies, and runs the full pipeline — AI generation, tracing, overlay check, curve fitting. You get back a laser-ready SVG.
Works with Claude Code (CLI, VS Code, or claude.ai/code), Cursor, Codex, or from the terminal directly. You'll need Python 3 and an OpenAI API key — the README covers setup.
Don't want to set up a local pipeline? We're building a hosted version — upload an image, pick a style, get back a laser-ready SVG. Drop your email and we'll let you know when it's ready.
About
Kerfline has grown out of my own process. The individual pieces — AI image generation, tracing libraries like VTracer and Potrace, bezier curve fitting — are all off-the-shelf. What makes it work is the loop: trace the image, overlay the vector on the source, have an LLM compare them, and iterate until the result is actually faithful. That compare-and-retry cycle is the core of the pipeline, and it's what turns decent traces into cuttable ones.
It's open source because this stuff is more fun when people build on it. If you're into laser cutting, CNC, or just want to mess around with AI-to-physical pipelines, come hang out on GitHub.