Learn Smithy by writing it.
Short, focused lessons on the Smithy IDL — each ending with a hands-on exercise you write in the browser and check against the real Smithy compiler. Diagnostics come straight from the model assembler, inline.
Lessons
- 01 What is Smithy? A model-first, protocol-agnostic IDL for describing services once and generating everywhere. →
- 02 Simple shapes Strings, numbers, booleans, timestamps, blobs — and how to name your own. →
- 03 Structures Records with typed members — the shape you'll reach for most. →
- 04 Lists & maps Aggregate collections — ordered lists and string-keyed maps (and where set went). →
- 05 Unions Tagged unions — a value that is exactly one of several named variants. →
- 06 Traits Typed annotations that add docs and constraints without changing the type. →
- 07 Services & operations Describe an API — a service of operations, each with an input and output. →
- 08 HTTP bindings Layer REST onto an operation — method, URI, status, and where each member goes. →
- 09 @httpPayload Bind a single member as the raw HTTP body instead of the default JSON envelope. →
- 10 Resources Model entities with identity and bind lifecycle operations to them. →
- 11 Errors Model failures as structures and attach them to operations. →
- 12 Challenge: match this HTTP request Reverse the usual direction — given a concrete HTTP exchange, write the Smithy that produces it. →
- 13 Capstone: the Weather service Put it all together — model Smithy's canonical Weather service end to end. →