Skip to main content

A library designed to support varied knitting machines.

Project description


Travis-CI Build Status Documentation 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


0.0.1 (2015-05-15

  • First release on PyPI.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page