angust

Crates.ioangust
lib.rsangust
version0.1.1
sourcesrc
created_at2024-11-18 09:29:33.281821
updated_at2024-11-18 16:11:27.035195
descriptionA Rust GUI framework in Angular style
homepage
repositoryhttps://github.com/TudorOrban/Angust
max_upload_size
id1452040
size274,063
Tudor Andrei Orban (TudorOrban)

documentation

https://tudororban.github.io/Angust

README

Angust

Angust is a Rust GUI framework designed to bridge the gap between the safety and performance of Rust and the simplicity and scalability of web development. It provides an Angular-style API to develop dynamic UI applications, through reusable Components and associated HTML templates.

This crate contains the core features provided by Angust. See also the Angust CLI tool and the Angust Macros.

Status

Angust is in the mid-stages of development. As such, it still contains various bugs, misses important features and has an unstable API. Users are advised to use Angust with caution. We welcome feedback and contributions to help shape the future of Angust.

Features

  • Declaration of UI through standard HTML - CSS
  • Custom Components with: HTML templates, reflective and reactive Component State, inputs and outputs, lifetime hooks
  • HTML Directives: @if, @for, @onclick, supporting complex Rust expressions
  • Custom Services: injectable singleton objects, supporting async operations and return to GUI thread for state updates
  • Pre-made Router: object encapsulating common navigation functionality (route configuration, history, page caching etc.)
  • CLI tool: provides commands for generating boilerplate Angust code for a smooth development experience

Documentation

For comprehensive and up-to-date documentation, please visit our official documentation website. This website is the primary source for all documentation related to Angust, including API references, tutorials, and examples.

Contributing

All contributions are warmly welcomed. Head over to CONTRIBUTING.md for details.

License

Angust is licensed under the MIT License. See the LICENSE file for more details.

Commit count: 311

cargo fmt