A library designed to support varied knitting machines.

pip install knitlib==0.0.1



Travis-CI Build Status Documentation Status PyPI Package monthly downloads Scrutinizer Status
'Stories in Ready'

1. What is Knitlib

Knitlib is a library designed to support the operation of varied knitting machines, mechanisms, and hacks. Knitlib is based on projects like AYAB, PDD, and KnitterStream to control knitting machines. Knitlib features a plugin system for knitting machines and implements an API to control machines' operation, knitting jobs and knitting patterns. The software is based on Python. There also is a Web API. Among the primary tasks is to develop plugins based on this solution to add support for more machines.

1.1 Idea behind Knitlib

1.2 Technical Background of Knitlib

Knitlib is implemented as a Python Library and API. Each machine is supported via a Plugin, allowing for extensibility. Each of the plugins is based on a simple Finite State Machine, with states from machine initialization to operation and knitting process. Among the aplications using the Knitlib API is Knitlib-server, implementing a Webserver and REST / WebSocket endpoints. Clients can also implement message callbacks, errors, notifications and blocking messages in order to provide a good user experience.

2.Development Installation

pip install -r requirements.txt pip install knitlib

3. Usage

4. Development

To run the all tests run:


5. References

6. Documentation

7. Contributing

7.1. Bug reports

Bugs can be reported via the Github issues tracker at

7.2 Documentation improvements

7.3 Feature requests, Issues, and Feedback

Issues, feature requests and feedback can be reported via the Github issues tracker at

7.4 Pull Request Guidelines

8. Applications using Knitlib

9. License

Free software: LGPLv3+ license