<p align="center"> <img src="img/kayak.svg" alt="Kayak UI" width="600" /> </p> <br/> # Introduction Kayak UI is a declarative UI that can be used to make user interfaces in Rust primarily targeting games. It's free and open-source! ## Features - Full integration into Bevy ECS. - Easy to use declarative syntax using a custom proc macro - Basic widget, global, and context state management - Input events (Mouse, Keyboard, Char) - Fast and accurate layouts using morphorm: https://github.com/geom3trik/morphorm - A few default widgets (check out Kayak's [built-in widgets](https://github.com/StarArawn/kayak_ui/tree/main/src/widgets)!) - Style system built to kind of mimic CSS styles. - Image and Nine patch rendering. - Widget and Tree diff based updating ## This book In this book you'll be learning: - How to use widgets. - How to create custom widgets. - Accessing bevy data from a widget. - Handling widget updates. And more! ## License Copyright © 2021-2022 John Mitchell. All code in the book is provided under the MIT-0 License. At your option, you may also use it under the regular MIT License. The text of the book is provided under the CC BY-NC-SA 4.0. ## Contributions Development of this book is hosted on GitHub. Please file GitHub Issues for any wrong/confusing/misleading information, as well as suggestions for new content you'd like to be added to the book.