Note: This is NOT an official AWS product. It is mostly a technical proof-of-concept at the moment.
Code generator and runtime packages for Smithy models in pure Dart. Check out the Smithy Playground to start exploring the code generator!
Folder | Description |
---|---|
codegen | Smithy codegen plugin, written in Kotlin |
packages | Dart packages |
smithy | Smithy Dart runtime |
smithy_aws | Smithy Dart runtime for AWS clients |
smithy_ast | Smithy AST model with shape and trait definitions |
smithy_codegen | Smithy Dart code generator |
goldens | Smithy Dart code generator golden files |
playground | Online playground for exploring the Dart code generator |
frontend | Playground frontend, written in AngularDart |
backend | Playground CDK infrastructure |
lambda | Playground Lambda handler |
protos | Interface definition for Kotlin<->Dart communication |
Smithy is a protocol-agnostic language for defining services and SDKs. The Dart code generator is a plugin to the Smithy build system, which generates client SDKs from Smithy models.
Although the primary method for building Smithy models is via the Gradle build system, Smithy models can be directly sent to the Dart code generator in JSON AST form. This AST can be obtained using the Smithy CLI, for example, or written by hand.