Skip to main content

A fast implementation of the Cassowary constraint solver

Project description

https://travis-ci.org/nucleic/kiwi.svg?branch=main https://github.com/nucleic/kiwi/workflows/Continuous%20Integration/badge.svg https://github.com/nucleic/kiwi/workflows/Documentation%20building/badge.svg https://codecov.io/gh/nucleic/kiwi/branch/main/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 usecases gaining a 40x improvement. Memory savings are consistently > 5x.

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

Download files

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

Files for kiwisolver, version 1.3.2
Filename, size File type Python version Upload date Hashes
Filename, size kiwisolver-1.3.2-cp310-cp310-macosx_10_9_universal2.whl (118.2 kB) File type Wheel Python version cp310 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp310-cp310-macosx_10_9_x86_64.whl (61.8 kB) File type Wheel Python version cp310 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp310-cp310-macosx_11_0_arm64.whl (59.4 kB) File type Wheel Python version cp310 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl (1.6 MB) File type Wheel Python version cp310 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.6 MB) File type Wheel Python version cp310 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB) File type Wheel Python version cp310 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.5 MB) File type Wheel Python version cp310 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.4 MB) File type Wheel Python version cp310 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp310-cp310-win32.whl (42.2 kB) File type Wheel Python version cp310 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp310-cp310-win_amd64.whl (52.1 kB) File type Wheel Python version cp310 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp37-cp37m-macosx_10_9_x86_64.whl (61.5 kB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.5 MB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.4 MB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl (1.1 MB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp37-cp37m-win32.whl (42.8 kB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp37-cp37m-win_amd64.whl (51.6 kB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp38-cp38-macosx_10_9_universal2.whl (118.0 kB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp38-cp38-macosx_10_9_x86_64.whl (61.6 kB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp38-cp38-macosx_11_0_arm64.whl (59.2 kB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.5 MB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.4 MB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl (1.2 MB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp38-cp38-win32.whl (42.5 kB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp38-cp38-win_amd64.whl (52.1 kB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp39-cp39-macosx_10_9_universal2.whl (118.2 kB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp39-cp39-macosx_10_9_x86_64.whl (61.8 kB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp39-cp39-macosx_11_0_arm64.whl (59.3 kB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl (1.6 MB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.6 MB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.5 MB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.4 MB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp39-cp39-win32.whl (42.5 kB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size kiwisolver-1.3.2-cp39-cp39-win_amd64.whl (52.1 kB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size kiwisolver-1.3.2-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (52.7 kB) File type Wheel Python version pp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl (98.2 kB) File type Wheel Python version pp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (89.9 kB) File type Wheel Python version pp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (73.1 kB) File type Wheel Python version pp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2-pp37-pypy37_pp73-win_amd64.whl (51.9 kB) File type Wheel Python version pp37 Upload date Hashes View
Filename, size kiwisolver-1.3.2.tar.gz (54.6 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page