All Projects → dylanede → Cassowary Rs

dylanede / Cassowary Rs

Licence: other
A Rust implementation of the Cassowary constraint solving algorithm

Programming Languages

rust
11053 projects

Labels

Projects that are alternatives of or similar to Cassowary Rs

Dock
A docking layout system.
Stars: ✭ 204 (-17.41%)
Mutual labels:  gui, layout
Typography
C# Font Reader (TrueType / OpenType / OpenFont / CFF / woff / woff2) , Glyphs Layout and Rendering
Stars: ✭ 246 (-0.4%)
Mutual labels:  layout
Xboxkeyboardmouse
Keyboard and mouse for Xbox One streaming on Windows 10
Stars: ✭ 235 (-4.86%)
Mutual labels:  gui
Ultimatepp
U++ is a C++ cross-platform rapid application development framework focused on programmer's productivity. It includes a set of libraries (GUI, SQL, Network etc.), and integrated development environment (TheIDE).
Stars: ✭ 237 (-4.05%)
Mutual labels:  gui
Diagonallayout
With Diagonal Layout explore new styles and approaches on material design
Stars: ✭ 2,591 (+948.99%)
Mutual labels:  layout
Mojs Player
GUI player to control your animations
Stars: ✭ 243 (-1.62%)
Mutual labels:  gui
Oblivion
Data leak checker & OSINT Tool
Stars: ✭ 237 (-4.05%)
Mutual labels:  gui
X11docker
Run GUI applications and desktops in docker and podman containers. Focus on security.
Stars: ✭ 3,797 (+1437.25%)
Mutual labels:  gui
Remi
Python REMote Interface library. Platform independent. In about 100 Kbytes, perfect for your diet.
Stars: ✭ 2,943 (+1091.5%)
Mutual labels:  gui
Chrome Developer Mode Extension Warning Patcher
⇒ Disable Chrome's Developer Mode Extension Warning Popup & Elision WWW/HTTPS Hiding & Debugging Extension Popup
Stars: ✭ 240 (-2.83%)
Mutual labels:  gui
Kafka Ui
Open-Source Web GUI for Apache Kafka Management
Stars: ✭ 230 (-6.88%)
Mutual labels:  gui
React Native Text Size
Measure text accurately before laying it out and get font information from your App.
Stars: ✭ 238 (-3.64%)
Mutual labels:  layout
Sshfs Win Manager
A GUI for SSHFS-Win (https://github.com/billziss-gh/sshfs-win)
Stars: ✭ 239 (-3.24%)
Mutual labels:  gui
Storagesystem
🗒️ Personal Stock Control System
Stars: ✭ 236 (-4.45%)
Mutual labels:  gui
Lagrange
A Beautiful Gemini Client
Stars: ✭ 238 (-3.64%)
Mutual labels:  gui
Motion Shapeofview
Explain how to use MotionLayout with ShapeOfView
Stars: ✭ 236 (-4.45%)
Mutual labels:  layout
Reaper
Social media scraping / data collection tool for the Facebook, Twitter, Reddit, YouTube, Pinterest, and Tumblr APIs
Stars: ✭ 240 (-2.83%)
Mutual labels:  gui
Fltk Rs
Rust bindings for the FLTK GUI library.
Stars: ✭ 241 (-2.43%)
Mutual labels:  gui
Darklaf
Darklaf - A themeable swing Look and Feel based on Darcula-Laf
Stars: ✭ 249 (+0.81%)
Mutual labels:  gui
Python Mpv
Python interface to the awesome mpv media player
Stars: ✭ 245 (-0.81%)
Mutual labels:  gui

cassowary-rs

Build Status

This is a Rust implementation of the Cassowary constraint solving algorithm (Badros et. al 2001). It is based heavily on the implementation for C++ at nucleic/kiwi. The implementation does however differ in some details.

Cassowary is designed for solving constraints to lay out user interfaces. Constraints typically take the form "this button must line up with this text box", or "this box should try to be 3 times the size of this other box". Its most popular incarnation by far is in Apple's Autolayout system for Mac OS X and iOS user interfaces. UI libraries using the Cassowary algorithm manage to achieve a much more natural approach to specifying UI layouts than traditional approaches like those found in HTML.

This library is a low level interface to the solving algorithm, though it tries to be as convenient as possible. As a result it does not have any intrinsic knowledge of common user interface conventions like rectangular regions or even two dimensions. These abstractions belong in a higher level crate.

For more information, please read the documentation.

Getting Started

Add the following to your Cargo.toml:

[dependencies]
cassowary = "^0.3.0"

Please read the documentation (linked above) for how to best use this crate.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].