A human-friendly DSL for ATProto Lexicons
Clean, readable syntax inspired by TypeScript and Rust. Write lexicons the way you think about them, with full type safety and constraint validation.
Bidirectional conversion with ATProto JSON Lexicons. Everything that can be expressed in JSON can be expressed in MLF, and vice versa.
Command-line interface, WebAssembly library, tree-sitter grammar for editor integration (Neovim, Helix, VS Code, Emacs), and comprehensive error messages.
Compile-time type checking catches errors before they become runtime problems. Constrained types ensure your data meets specifications.