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.
- 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
To use Angust for your next app, follow these steps:
- Ensure you have a newer version of Rust and Cargo installed.
- Download the Angust CLI tool and add the path to environment variables.
- Open your terminal in an appropiate folder and run:
angust_cli create_project <your_project_name>
That's it, you can now run the app with cd <your_project_name>
, cargo run
. Head over to the Docs to learn how to use Angust's features.
In mid stages of development.
All contributions are warmly welcomed. Head over to CONTRIBUTING.md for details.