I suppose it’s time for me to start blogging here a bit about some recent work I’ve been doing for the tmtp project.
I’ve been watching Susan work on this project from the beginning, mostly being a cheerleader and occasionally actually looking at the code.
For the last few weeks I’ve been working on the next step for the project, which is to turn the inkscape extension into a standalone application that generates an SVG pattern from the command line, creating a framework in which a designer can create designs and have a lot of the implementations details of python and svg handled for them. I’ve been implementing it with python and pySVG.
While there’s still a lot to do, I’m able to create a pattern with a single piece in it – more than one should work but hasn’t been tested. There has been a lot of churn in the code, as I’ve been trying to unify the calling conventions across methods, stabilize classes and APIs, and get it to the point where at least the application can get some test use while development continues, without ‘breaking’ the design definitions too often.
Features implemented, in progress, or planned include:
- Loading client measurements and data from a file (or database – it’s json data)
- Loading styles from a file, allowing for customization
- Loading the design from a file, separating it from the application (and allowing different licenses for designs)
- Automatic generation of unique svg element IDs from the design heirarchy (this is cool)
- Automatic placement of pattern pieces based on printable page size
- Separate layers (groups) definable by the designer – typically one for the pattern, and one for reference objects
- Automatic hierarchical grouping of elements so (for example) pattern parts can be referenced, copied, and transformed
There is also already a list of bugs – but not too many.
There really isn’t enough there yet to make a coherent preview for anyone to look at, and there’s zero documentation. But I’m exited. It’s been a lot of fun to work through the inkscape plugin and figure out what Susan’s design process is, and try to extend that. I think she’s brilliant.
I’ll try to make regular updates on progress.