Sunset Project
PlatformScript
A declarative programming language with pure YAML syntax. Though the project has concluded, the ideas it explored continue to shape our thinking.
PlatformScript is no longer under active development. This page serves as an archive of what we set out to do, what we learned, and where those ideas went next.
The Vision
PlatformScript asked a bold question: what if YAML wasn't just a configuration format, but a full-featured programming language?
PlatformScript was born from a frustration shared by thousands of developers working with cloud-native tooling, drowning in an ocean of configuration hell. Instead of bolting templating engines onto YAML or escaping into another language entirely, PlatformScript treated YAML itself as the syntax for a real programming language—one with lexically scoped variables, first-class functions, a type system, and structured concurrency all baked in.
Every PlatformScript program was a valid YAML document. No magic functions, no magic variables—just a small, consistent set of evaluation rules that turned familiar data into executable code.
What We Learned
- →
Executable YAML changes everything. Having YAML that could actually run resolved so many of the common headaches associated with feeding YAML into an interpreter written in another language. Errors became local, feedback was immediate, and the gap between what you wrote and what executed disappeared entirely.
- →
Structured concurrency is essential. Building structured concurrency into PlatformScript from the start reinforced our conviction that it belongs at the foundation of every runtime. This directly influenced our continued investment in Effection.
- →
Developer tooling is non-negotiable. A static type system and language server weren't nice to have—they were critical to the success of the whole system. Without instant feedback, autocompletion, and type-checked programs, the adoption was just too difficult.
The Archive
The source code and documentation remain available for anyone curious about the approach.
"Every experiment that ends teaches you where to go next."
Learn more about Frontside