
Rust-powered fast codegen tools for full stack Dart
Rust + Dart = dust.
Generate models, JSON, validation, clients, routes, state, i18n, and database code from one fast Rust engine. Use only what you need.
- Rust
- engine
- Dart
- and Flutter
- MIT
- licensed
$
downloading https://github.com/y3l1n4ung/dust/releases/latest/download/dust-aarch64-apple-darwin.tar.gz
verified dust-aarch64-apple-darwin.tar.gz
installed dust -> ~/.local/bin/dust
$
____ __ / __ \__ _______/ /_ / / / / / / / ___/ __/ / /_/ / /_/ (__ ) /_ /_____/\__,_/____/\__/ build scanned: 5010 generated: 5010 cached: 0 skipped: 0 time: 5149ms
$
01 / Install
$ curl -fsSL https://raw.githubusercontent.com/y3l1n4ung/dust/main/install.sh | bash02 / Capabilities
Data classes
Inspired by Rust derive. Generate equality, copyWith, toString, and model helpers.
Read the guide ↗JSON
Inspired by Serde. Generate JSON mapping with aliases, codecs, strict keys, and nested models.
Read the guide ↗Validation
Inspired by Validate. Put field rules on the model and get path-aware errors back.
Read the guide ↗HTTP clients
Inspired by Retrofit. Define a typed API interface and generate the request client.
Read the guide ↗Routing
Built for Flutter. Generate typed params, guards, shell routes, and result helpers.
Read the guide ↗State
Built for Flutter. Generate ViewModel args, state, and watch/read access.
Read the guide ↗i18n
Generate typed translation accessors from keys and default text in code.
Read the guide ↗dust_server
Coming soon. A shelf-based Dart server with an Axum-inspired design.
Coming soonDatabase
Inspired by SQLx. Check SQL during generation and map rows to Dart types.
Read the guide ↗03 / Workflow
- 01
Annotate
Add dust annotations to the Dart code you already own.
@Derive(Serde()) class Article with _$Article {} - 02
Generate
Run dust build. The Rust engine writes the generated Dart.
$ dust build - 03
Use
Call the generated helpers from normal Dart and Flutter code.
Article.fromJson(json)