flaxforge

Formats and loom compatibility

If you are deciding whether Draft can talk to your loom, this is the page to read first. Short answer: anything that accepts a peg plan as text, plus every mechanical dobby, because paper is a format too.

The native file is a text file

A draft is one .flxd file, UTF‑8, one key per line, keys in any order. The format has been stable since the flxd/3 header arrived with version 3.0 in October 2024. It is documented inside the program under Help → File format, and here is a complete four-shaft file:

flxd/3
name      Twill sampler, 2/2
author    M. Dussart
shafts    4
treadles  4
unit      mm
threading 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
tieup     1:1,2  2:2,3  3:3,4  4:4,1
treadling 1 2 3 4
repeat    ends 11  picks 40
warp      #2c4461 x16
weft      #d9c8a4 x8
sett      warp 24/10cm  weft 20/10cm
reed      4 per dent
float     warn 5

Three things follow from this. Drafts live happily in version control, two drafts can be compared with a diff tool, and a file written by a newer Draft still opens in an older one — unknown keys are skipped with a line in the status area rather than a refusal.

What Draft reads

SourceExtComes acrossDoes not
Flaxforge draft.flxdEverything in the file—
Pattern exchange, plain.wpxThreading, tie-up, treadling, one colour pairBorders, unit names, reed plan
Tab or comma grid.tsv .csvDrawdown squares; threading is then solvedColour, sett
Portable bitmap, plain P1.pbmOne pixel per square, white is warp upAnything but the grid
Peg plan listing.plnTreadling order and the lift tableThreading, which cannot be inferred

Imports of the last three kinds end in the solver, so expect to be told how many shafts the pattern wants. A 24-shaft advancing twill imported as a grid will not fold itself into your eight-shaft loom, and Draft says that in one line instead of silently dropping ends.

What Draft writes

OutputExtShape of it
Flaxforge draft.flxdThe native file above
Pattern exchange, plain.wpxFor editors that read a plain interchange draft
Peg plan.plnOne line per pick, shaft numbers or a 0/1 column
Lift table.txtTab separated, one column per shaft, header optional
Threading card.pdfBands of 100 ends, numbered top and bottom
Drawdown.svg .pdfLine weights in millimetres, grid optional
Draft tables.csvThreading, tie-up and treadling as three blocks
Portable bitmap.pbmThe drawdown at one pixel per square

Looms and how Draft reaches them

LoomRouteKnown to work with
Floor loom, treadles tied by handPrinted threading card and treadling columnAny
Table loom, hand leversPrinted treadling, one pick per line, tick columnAny
Mechanical dobby, pegged barsPrinted peg plan, 100 picks per sheetAny
Electronic dobby over a serial line.pln sent as text, 9600 or 19200 baud, 8‑N‑1, no handshake16, 24 and 32‑shaft boxes in our hands
Electronic dobby over a USB serial adapterThe same stream through the adapter's device nodeNeeds the adapter's own driver
Parallel solenoid box with a card readerLift table written to a stick as .txtReported working, not tested here

We own two dobby looms between us, a 16‑shaft table loom and a 24‑shaft floor loom, and those are the two we can honestly say we test on before a release. Everything else in that column is the word of the weaver who wrote to us, and we will happily add yours.

Shaft numbering, and why it bites

Half the weaving world counts shaft 1 at the front of the loom and half counts it at the back. Draft defaults to the front, draws shaft 1 as the top row of the threading, and offers one switch in Preferences → Loom that flips both the screen and every export at once.

Get it wrong and the cloth still weaves: you simply get the mirror image of your pattern, which is harmless in a twill and obvious in an asymmetric one. The one place it is not harmless is a peg plan sent to a dobby, because a mirrored lift makes the shed open on the wrong side of your floating selvedge. The export dialogue therefore prints the current convention in the preview header rather than hiding it in a settings page.

Builds and requirements

PlatformPackageDownload
Windows 10 and 11, x86‑64Installer, or a zip you can run from a stick46 MB
macOS 13 and later, arm64 and x86‑64Signed disk image, one universal build52 MB
Linux x86‑64AppImage, or a tarball for your own packaging44 MB
Linux aarch64Tarball; built for single-board machines in workshops43 MB

Four gigabytes of memory is plenty and a graphics card is irrelevant — everything is drawn with flat rectangles. The window wants 1100 × 700 pixels before the four regions stop crowding each other, so a 1366‑wide laptop is comfortable and a 1024‑wide netbook is not. Installed size is about 120 MB including the structure library.

Licence keys and prices are on the pricing page; the version history is on the changelog.