Skip to main content

A fast implementation of the Cassowary constraint solver

Project description

https://travis-ci.org/nucleic/kiwi.svg?branch=master https://codecov.io/gh/nucleic/kiwi/branch/master/graph/badge.svg Documentation Status

Kiwi is an efficient C++ implementation of the Cassowary constraint solving algorithm. Kiwi is an implementation of the algorithm based on the seminal Cassowary paper. It is not a refactoring of the original C++ solver. Kiwi has been designed from the ground up to be lightweight and fast. Kiwi ranges from 10x to 500x faster than the original Cassowary solver with typical use cases gaining a 40x improvement. Memory savings are consistently > 5x.

In addition to the C++ solver, Kiwi ships with hand-rolled Python bindings.

The version 1.1.0 of the Python bindings will be the last one to support Python 2, moving forward support will be limited to Python 3.5+.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kiwisolver-1.2.0.tar.gz (52.1 kB view hashes)

Uploaded Source

Built Distributions

kiwisolver-1.2.0-cp38-none-win_amd64.whl (58.1 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

kiwisolver-1.2.0-cp38-none-win32.whl (43.4 kB view hashes)

Uploaded CPython 3.8 Windows x86

kiwisolver-1.2.0-cp38-cp38-manylinux2014_aarch64.whl (84.1 kB view hashes)

Uploaded CPython 3.8

kiwisolver-1.2.0-cp38-cp38-manylinux1_x86_64.whl (92.2 kB view hashes)

Uploaded CPython 3.8

kiwisolver-1.2.0-cp38-cp38-manylinux1_i686.whl (85.6 kB view hashes)

Uploaded CPython 3.8

kiwisolver-1.2.0-cp38-cp38-macosx_10_9_x86_64.whl (60.4 kB view hashes)

Uploaded CPython 3.8 macOS 10.9+ x86-64

kiwisolver-1.2.0-cp37-none-win_amd64.whl (57.8 kB view hashes)

Uploaded CPython 3.7 Windows x86-64

kiwisolver-1.2.0-cp37-none-win32.whl (44.4 kB view hashes)

Uploaded CPython 3.7 Windows x86

kiwisolver-1.2.0-cp37-cp37m-manylinux2014_aarch64.whl (82.5 kB view hashes)

Uploaded CPython 3.7m

kiwisolver-1.2.0-cp37-cp37m-manylinux1_x86_64.whl (88.7 kB view hashes)

Uploaded CPython 3.7m

kiwisolver-1.2.0-cp37-cp37m-manylinux1_i686.whl (84.5 kB view hashes)

Uploaded CPython 3.7m

kiwisolver-1.2.0-cp37-cp37m-macosx_10_9_x86_64.whl (60.5 kB view hashes)

Uploaded CPython 3.7m macOS 10.9+ x86-64

kiwisolver-1.2.0-cp36-none-win_amd64.whl (57.8 kB view hashes)

Uploaded CPython 3.6 Windows x86-64

kiwisolver-1.2.0-cp36-none-win32.whl (44.4 kB view hashes)

Uploaded CPython 3.6 Windows x86

kiwisolver-1.2.0-cp36-cp36m-manylinux2014_aarch64.whl (82.5 kB view hashes)

Uploaded CPython 3.6m

kiwisolver-1.2.0-cp36-cp36m-manylinux1_x86_64.whl (88.7 kB view hashes)

Uploaded CPython 3.6m

kiwisolver-1.2.0-cp36-cp36m-manylinux1_i686.whl (84.5 kB view hashes)

Uploaded CPython 3.6m

kiwisolver-1.2.0-cp36-cp36m-macosx_10_9_x86_64.whl (60.5 kB view hashes)

Uploaded CPython 3.6m macOS 10.9+ x86-64

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