# a2ui
[](https://crates.io/crates/a2ui)
[](https://docs.rs/a2ui)
[](https://github.com/Liangdi/a2ui/blob/master/LICENSE)
[English](README_EN.md) | ไธญๆ
> ๐ฆ **a2ui** crate ็ๆ ยท umbrella crate(็ปไธๅ
ฅๅฃ)
>
> ่ฟๆฏ [`a2ui`](https://crates.io/crates/a2ui) workspace ็ไผ crate,ๆๅๅญ crate ้ๆฐๅฏผๅบๅฐ็จณๅฎ็ `a2ui::core` / `a2ui::tui` ่ทฏๅพไธใๅฎๆดไป็ป่ง[ๆ น็ฎๅฝ README](https://github.com/Liangdi/a2ui#readme)ใ
[A2UI (Agent to UI) v1.0](https://github.com/a2ui-project/a2ui) ๅ่ฎฎ็ Rust ๅฎ็ฐ:ๆธฒๆ็ฑ AI Agent ๅจๆ็ๆใJSON ๆตๅผ้ฉฑๅจ็็จๆท็้ขใๆฌ crate ๆฏ **umbrella**,ไธ่กไพ่ตๅณๅฏๆฟๅฐๆ ธๅฟๅฑไธ้ป่ฎค็ป็ซฏๅ็ซฏ;Slint / egui ๆก้ขๅ็ซฏๆ้ๅจ feature ๅๅผๅฏใ
## ็ๆๅ
จๆฏ
```
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ apps: a2ui-gallery (TUI) a2ui-slint-gallery a2ui-egui-gallery โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ โถ a2ui (umbrella: re-export core + tui [+ slint] [+ egui]) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ backends: a2ui-tui (ratatui) a2ui-slint a2ui-egui โ
โ a2ui-base (ๆกๆถๆ ๅ
ณ:Protocol / Model / Catalog / Processor) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
```
| [`a2ui-base`](https://crates.io/crates/a2ui-base) | ๆกๆถๆ ๅ
ณๆ ธๅฟๅฑ | `a2ui::core` |
| [`a2ui-tui`](https://crates.io/crates/a2ui-tui) | ratatui ็ป็ซฏๅ็ซฏ(้ป่ฎค) | `a2ui::tui` |
| [`a2ui-slint`](https://crates.io/crates/a2ui-slint) | Slint ๆก้ขๅ็ซฏ(ๅฏ้) | `a2ui::slint`(`slint` feature) |
| [`a2ui-egui`](https://crates.io/crates/a2ui-egui) | egui ๆก้ขๅ็ซฏ(ๅฏ้) | `a2ui::egui`(`egui` feature) |
> ้ป่ฎคๅช re-export `core` + `tui`ใไธคไธชๆก้ขๅ็ซฏ่พ้(Slint ๅทฅๅ
ท้พ / winit + glow),ๆ
ๆ้ๅผๅฏใ
## ็นๆง
| `slint` | ๆ Slint ๅ็ซฏ re-export ไธบ `a2ui::slint` | `--features slint` |
| `egui` | ๆ egui ๅ็ซฏ re-export ไธบ `a2ui::egui` | `--features egui` |
| `audio` | ่ฝฌๅ็ป `a2ui-tui` ็็ๅฎ้ณ้ขๆญๆพ | `--features audio` |
## ็จๆณ
```bash
cargo add a2ui # ๆ ธๅฟ + ้ป่ฎค็ป็ซฏๅ็ซฏ
cargo add a2ui --features egui # ้ขๅคๅผๅฏ egui ๆก้ขๅ็ซฏ
```
```rust
// ่ทฏๅพไฟๆ็จณๅฎ โโ ่ฟๆญฃๆฏ umbrella ๅญๅจ็ๆไน
use a2ui::core::message_processor::MessageProcessor;
use a2ui::tui::catalogs::basic::{build_basic_catalog, build_basic_registry};
```
## ็คบไพ
ๆฌ crate ่ชๅธฆ 17 ไธช็คบไพ,ๆฏไธๆ A2UI ็ๆไฝณๅ
ฅๅฃ:
```bash
cargo run -p a2ui --example 01_hello_world
cargo run -p a2ui --example 04_login_form
cargo run -p a2ui --example 12_handshake # ่ฝๅๅๅๆกๆ
```
ๅฎๆด็คบไพ่กจ่ง[ๆ น็ฎๅฝ README](https://github.com/Liangdi/a2ui#readme)ใ
## ่ฎธๅฏ่ฏ
MIT