Embroidermodder

Embroidermodder is a free machine embroidery software tool that supports a variety of formats and allows the user to add custom modifications to their embroidery designs.

History
Embroidermodder 1 was started by Mark Pontius in 2004 while staying up all night with his son in his first couple months. When Mark returned to his day job, he lacked the time to continue the project. Mark made the decision to focus on his family and work, and in 2005, Mark gave full control of the project to Josh Varga so that Embroidermodder could continue its growth.

Embroidermodder 2 was conceived in mid 2011 when Jonathan Greig and Josh Varga discussed the possibility of making a cross-platform version. It runs on Linux, macOS, Microsoft Windows.

The Embroidermodder website and downloads are hosted on SourceForge. On July 18, 2013, The Embroidermodder 2 Source was moved to GitHub.

Embroidermodder 1 features

 * Runs under Microsoft Windows.
 * Source code (Visual C++) available.
 * Reads/Writes Tajima .dst file format, which is compatible with most every commercial and vendor's software available.
 * Also reads/writes Excel .csv file format for hand editing using Excel or a text editor.
 * Allows scaling designs to any size (not just +/- 20% like some software).
 * Shows the design on-screen, with unlimited zoom to get up close and personal with any stitch. Zoom to actual size, fit to screen, selection, or just in/out. Scrollbars allow panning around the design.
 * Multiple documents can be open, and each document may have multiple view windows, each at different zooms to allow fine detail editing, while still getting the big picture.
 * Print design at actual size.
 * Displays statistics like max/min/average stitch length, number of colors, etc.
 * Select, move, insert, or delete either stitches, lines, or selection.
 * Double click in select mode to select a region (stitches between Jumps or color changes).
 * Cut/Copy/Paste selection.
 * Cursor left/right steps selection point though individual stitches.
 * Add text using any windows font.
 * Toggle display of Jump stitches (as black dash-dot lines).
 * Display updates are very fast using a combination of direct screen draw with efficient clipping and background rendering.
 * Optional Debug mode (compile time option) with additional display and break capability, such as monitoring the background render progress in the status bar.

Embroidermodder 2 features

 * Runs under Linux, macOS, Microsoft Windows and Raspberry Pi.
 * CAD/CAM graphical user interface.
 * Source code (Qt4/Qt5 C++) available.
 * Undo/Redo functionality.
 * Reads over 45 different embroidery formats.
 * Also reads/writes Excel .csv file format for hand editing using Excel or a text editor or generating the .csv data from an external program such as Mathematica.
 * Cut, copy, and paste selection between multiple documents.
 * Scripting API.
 * Add text using any installed system font.
 * Customizable icon themes.

libembroidery
One of the byproducts of Embroidermodder 2 was the creation of libembroidery library. libembroidery is written in C. It supports reading and writing of a variety of embroidery formats, and several vector formats which are not commonly used in embroidery.

The formats are as such (last updated January 2017):

'Stable' = Yes, supported and is considered stable. 'Unstable' = Yes, supported but may be unstable. No = Not supported.