About
A tool, not a service.
String Art Maker is a static website. There is no backend, no database and no account system, because none of those are needed to multiply some numbers and draw some lines.
Your photo stays here
The file is decoded by the page, solved on your CPU and rendered to your canvas. Nothing is uploaded, so there is nothing to leak, sell or subpoena.
No tracking
No analytics script, no cookies, no fingerprinting. The only thing stored on your device is your own projects, in local storage, which you can clear any time.
Free, actually
No trial, no watermark, no export limit, no "pro" tier hiding the PDF button. A static site costs almost nothing to run, so nothing is being recouped.
It works offline
Visit the studio once and the shell caches itself. Garages have bad wifi; the winding numbers should not depend on it.
Plain talk
What this site does not claim.
- There are no customer testimonials on this site, because there are no customers yet. The pieces shown on the landing page are illustrations drawn for the site, solved by the real engine.
- The renders are previews, not photographs. A physical board reads darker than the screen, because real thread casts shadows.
- The time and thread estimates are derived from published build logs and from the geometry of your own solve. They are honest estimates, not measurements of your hands.
- The solver is greedy, not optimal. It is fast, it runs on a phone, and it is good enough that the limiting factor is your photograph. It is not the best possible sequence.
Standing on shoulders
The people who worked this out first.
Computational string art has an unusually generous community: artists who published their method, makers who sell boards and open-sourced the engine anyway, and hobbyists who wrote down exactly how much thread they used. This tool exists because they did that.
- The origin
Petros Vrellis — A New Way to Knit
The 2016 work that started the modern form: a 71 cm circular rim, 200 pegs, one continuous thread and a computed sequence. Every generator since, including this one, is a re-derivation of that idea.
Visit - A maker who opened the engine
StringBoard — string-art-open
Will Taylor sells string art boards at stringboard.co.uk and published the Python engine behind them: numba-compiled, with importance masking and background removal. Someone with a business reason to keep it closed, who did not.
Visit - Generalised the frame
Michael Crum — Generalized String Art Generator
Broke the assumption that the frame has to be a circle, and wrote up the reasoning clearly: blur the target to the width of the thread, use Bresenham to touch only the pixels a chord crosses, and let later strings cover earlier mistakes.
Visit - The readable reference
christiansiegel/knitter
A Processing implementation that is short enough to read in one sitting, with real measurements from finished pieces: 1,543 m of thread for 3,000 lines on an 80 cm board.
Visit - The build log
Johannes Haupt — string art circle build log
The most useful kind of documentation: what he actually bought, what broke, and why nail height consistency turned out to matter more than nail height. Most of the physical numbers on this site trace back here.
Visit - The honest timings
Michel — Computer-designed portraits, knit by hand
3,844 lines, 2.3 km of thread, 8 hours of knitting plus 4 hours of loom work. Where the "hours, not minutes" framing on this site comes from.
Visit - Another angle on the maths
danielvarga/string-art
Treats the problem as reconstructing an image from a set of chords rather than as a walk, which is a useful second way to think about what the solver is doing.
Visit - Kit seller, MIT tool
StringAr.com
Sells a 200-pin kit and gives the browser generator away under MIT. Also worth reading for how they tier difficulty by pin count — 80 to 150 for beginners, 250 to 400 for people who know what they are in for.
Visit
Conventions differ between these projects — some number nails from zero, some run anticlockwise. Everything here uses one rule, printed on every template: nail 1 at the top, clockwise, every tenth bold. Do not mix a template from one tool with a sequence from another.
Built with
Boringly, on purpose.
Astro for the pages, React for the studio, Tailwind for the styling, and hand-written TypeScript for everything that matters: the solver, the canvas renderer and the PDF writer. There is no image library, no PDF library and no maths library.
The PDF writer is about four hundred lines that emit vector operators directly, which is why the nail dots are exactly 1.2 mm and the templates are a few dozen kilobytes instead of a few dozen megabytes of raster tiles.
The solver runs in a Web Worker with a main-thread fallback, so the progressive preview stays smooth while a few thousand chords are chosen.
The numbering convention
Nail 1 at the top centre, clockwise, every tenth in bold. It matches the reference templates this project was built against and it is stated on every PDF, in the player and in the exported text.
Reporting something broken
The most useful bug report names the browser, the board settings and what you expected. A flat grey preview is almost always the photo — start withtroubleshooting.