Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | 03-May-2022 | - | ||||
src/ | H | 03-May-2022 | - | 1,971 | 1,333 | |
tests/ | H | 03-May-2022 | - | 173 | 141 | |
.cargo-checksum.json | H A D | 03-May-2022 | 89 | 1 | 1 | |
.gitignore | H A D | 12-Sep-2017 | 35 | 4 | 4 | |
.travis.yml | H A D | 12-Sep-2017 | 1.1 KiB | 13 | 12 | |
CHANGELOG.md | H A D | 13-Sep-2017 | 555 | 19 | 11 | |
Cargo.toml | H A D | 01-Jan-1970 | 1.1 KiB | 26 | 23 | |
Cargo.toml.orig-cargo | H A D | 13-Sep-2017 | 671 | 19 | 16 | |
LICENSE-APACHE | H A D | 12-Sep-2017 | 11.3 KiB | 202 | 169 | |
LICENSE-MIT | H A D | 12-Sep-2017 | 1.1 KiB | 22 | 17 | |
README.md | H A D | 13-Sep-2017 | 2.1 KiB | 55 | 39 |
README.md
1# cassowary-rs 2 3[![Build Status](https://travis-ci.org/dylanede/cassowary-rs.svg?branch=master)](https://travis-ci.org/dylanede/cassowary-rs) 4 5This is a Rust implementation of the Cassowary constraint solving algorithm 6([Badros et. al 2001](https://constraints.cs.washington.edu/solvers/cassowary-tochi.pdf)). 7It is based heavily on the implementation for C++ at 8[nucleic/kiwi](https://github.com/nucleic/kiwi). The implementation does 9however differ in some details. 10 11Cassowary is designed for solving constraints to lay out user interfaces. 12Constraints typically take the form "this button must line up with this 13text box", or "this box should try to be 3 times the size of this other box". 14Its most popular incarnation by far is in Apple's Autolayout 15system for Mac OS X and iOS user interfaces. UI libraries using the Cassowary 16algorithm manage to achieve a much more natural approach to specifying UI 17layouts than traditional approaches like those found in HTML. 18 19This library is a low level interface to the solving algorithm, though it 20tries to be as convenient as possible. As a result it does not have any 21intrinsic knowledge of common user interface conventions like rectangular 22regions or even two dimensions. These abstractions belong in a higher level 23crate. 24 25For more information, please read 26**[the documentation](https://dylanede.github.io/cassowary-rs)**. 27 28## Getting Started 29 30Add the following to your Cargo.toml: 31 32```toml 33[dependencies] 34cassowary = "^0.3.0" 35``` 36 37Please read the documentation (linked above) for how to best use this crate. 38 39## License 40 41Licensed under either of 42 43 * Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or 44 http://www.apache.org/licenses/LICENSE-2.0) 45 * MIT license ([LICENSE-MIT](LICENSE-MIT) or 46 http://opensource.org/licenses/MIT) 47 48at your option. 49 50### Contribution 51 52Unless you explicitly state otherwise, any contribution intentionally submitted 53for inclusion in the work by you, as defined in the Apache-2.0 license, shall be 54dual licensed as above, without any additional terms or conditions. 55