This repository has been archived by the owner. It is now read-only.
A pure python implementation of the Cassowary constraint solving algorithm.
Switch branches/tags
Nothing to show
Clone or download


This project is in the attic

Due to a change in focus, I'm not actively maintaining this project any longer. I'll happily merge any patch that looks reasonable; or, if you're interested in taking over the project, get in touch.


A pure Python implementation of the Cassowary constraint-solving algorithm. Cassowary is the algorithm that forms the core of the OS X and iOS visual layout mechanism.


Cassowary is compatible with both Python 2 or Python 3. To install Cassowary in your virtualenv, run:

$ pip install cassowary

Then, in your Python code, you can create and solve constraint systems. See the documentation for examples of what this looks like in practice.


Documentation for Cassowary can be found on Read The Docs.


Cassowary is part of the BeeWare suite. You can talk to the community through:


If you experience problems with Cassowary, log them on GitHub. If you want to contribute code, please fork the code and submit a pull request.