awesome-smithy
Software framework resource hub
A curated collection of build tools, code generators, examples, and resources related to Smithy IDL for building scalable and maintainable software systems.
Awesome Smithy is a curated list of awesome build-tools, code-generators, examples, and other resources related to the Smithy IDL.
158 stars
8 watching
16 forks
last commit: 4 months ago
Linked from 1 awesome list
apiawesomeawesome-listawsclientcodegensdkserversmithy
Awesome Smithy / Build tools | |||
Smithy CLI | 1,813 | 6 days ago | Smithy CLI is used to build, validate, diff, and transform Smithy models |
Gradle Plugin | 29 | 4 months ago | Integrates Smithy with the Gradle build system |
Mill Plugin | Community supported plugin that integrates smithy with the | ||
SBT Plugin | Community supported plugin that integrates smithy with the SBT build system for Scala | ||
Awesome Smithy / Code Generators / Client Code Generators | |||
TypeScript | 230 | 7 days ago | 🚧 - Client code generation for Typescript |
Golang | 177 | 6 days ago | 🚧 - Client code generation for Golang |
Rust | 507 | 6 days ago | 🚧 - Client code generation for Rust |
Ruby | 36 | 8 days ago | 🚧 - Client code generation for Ruby |
Kotlin | 83 | 7 days ago | 🚧 - Client code generation for Kotlin |
Swift | 29 | 6 days ago | 🚧 - Client code generation for Swift |
Scala | 350 | 13 days ago | Community plugin for generation of clients/servers in Scala |
Dafny | 10 | 6 days ago | 🚧 - Code generation tools for the verification-aware programming language |
Python | 48 | 15 days ago | 🚧 - Client code generation for Python |
Awesome Smithy / Code Generators / Server Code Generators | |||
TypeScript | 230 | 7 days ago | 🚧 - Server generator for TypeScript |
Rust | 507 | 6 days ago | 🚧 - Server generator for Rust |
Scala | 350 | 13 days ago | Community plugin for generation of clients/servers in Scala |
Awesome Smithy / Learning resources | |||
Smithy Examples | 39 | 22 days ago | A collection of examples to help you get up and running with Smithy |
aws-samples: Typescript Example service | 17 | over 1 year ago | Shows how to write a Typescript lambda service using Smithy and call the service using a generated client (see: ) |
Rust server SDK examples | 507 | 6 days ago | a collection of examples using Smithy to generate a Rust server SDK |
kubukoz/smithy4s-course | 12 | about 2 months ago | Smithy/Smithy4s course |
Awesome Smithy / IDE Support | |||
Smithy LSP | 35 | 9 days ago | 🚧 - A Language Server Protocol implementation for the Smithy IDL |
Visual Studio Code Plugin | 37 | 2 months ago | 🚧 - Visual Studio Code extension providing a Language Server Protocol implementation for the Smithy IDL |
Intellij plugin | 11 | over 2 years ago | 🚧 - Provides IDE integration for the Smithy IDL within IntelliJ IDEA |
iancaffey/smithy-intellij-plugin | 26 | 5 months ago | Community plugin for IDE integration for the Smithy IDL in Intellij IDEA |
Tree Sitter Grammar for Smithy | 22 | 7 months ago | Tree-sitter grammar for Smithy. Included in and by default |
Zed extension | 3 | 9 months ago | extension using |
Awesome Smithy / Implementations | |||
Smithy Reference Implementation | 1,813 | 6 days ago | Smithy reference implementation in Java |
Atelier | 77 | over 1 year ago | 🚧 - Community implementation of Smithy in Rust |
Awesome Smithy / Model Converters | |||
Smithy to OpenAPI | Converts Smithy models to | ||
Smithy to JSONSchema | 1,813 | 6 days ago | Converts Smithy models to |
Cloud Formation Resource Schemas | Generating Cloudformation resource schemas from Smithy models | ||
Openapi/JSONSchema to Smithy | 54 | about 2 months ago | smithy-translate : a community-provided CLI tool for best-effort Openapi/JSONSchema to Smithy conversions |
Smithy to Protobuf | 54 | about 2 months ago | smithy-translate (see above) |
Awesome Smithy / CICD Support / GitHub Actions | |||
setup-smithy | Install Smithy CLI to your GitHub Workflow | ||
format-smithy | Checks if Smithy Models are formatted | ||
Awesome Smithy / Videos | |||
Scaling APIs with Smithy | Overview of Smithy's background and features | ||
Abstraction: Creating the Best developer experience / Model-First Design | An introduction to model first design with Smithy | ||
Building with the new AWS SDKs for Rust, Kotlin, and Swift | Explores how these SDKs were built in parallel with Smithy, the commonalities they share, and how to build an app with each one | ||
Simplify building applications with AWS SDKs | Discusses how Smithy and model-first API design are used at AWS, how the AWS SDKs model client-side primitives such as paginators in Smithy, and how the AWS SDKs are evolving to use a standardized architecture | ||
Introduction to Smithy/Smithy4s | Scala Conference talk introducing the Smithy IDL and the Smithy4s library | ||
Generating Kotlin SDKs with Smithy | KotlinConf talk that provides an overview of Smithy and discusses how can be used to generate Kotlin SDKs | ||
Elevating API Design With Smithy | Functional Scala talk - Intro to Smithy IDL with JVM Tooling and Smithy4s | ||
Awesome Smithy / Blog Posts | |||
Introducing Smithy IDL 2.0 | Launch announcement for the Smithy IDL 2.0 | ||
Introducing the Smithy CLI | Launch announcement for the Smithy CLI along with examples of how to use the CLI | ||
Developer Preview: Ruby SDK code generation using Smithy | Launch announcement for and overview of the AWS Ruby SDK built with Smithy | ||
Smithy4s-full stack | A series of posts describing an application built with Smithy4s in both front-end and back-end | ||
Awesome Smithy / Others | |||
Smithy Playground | 30 | 9 days ago | 🚧 - A language server and VS Code client for interactive experimentation with Smithy services |
Build Server Protocol | 457 | 20 days ago | an extension to the Language Server Protocol using Smithy as a definition language |
Alloy | 38 | about 2 months ago | a library of Smithy traits providing additional semantics and constraints, used in particular by smithy-translate and smithy4s |