# Alef

A polyglot binding generator that reads a Rust library's public API and emits fully typed, native bindings, package scaffolding, documentation and end-to-end tests for 16 other languages.

Alef takes a Rust workspace described in one alef.toml configuration file and generates host-language types, documentation, error handling, async wrappers, callbacks and package files for each enabled target language, covering C, C#, Elixir, Go, Java, PHP, Python, R, Ruby, TypeScript, WebAssembly and more. Multiple crates in a workspace can each publish their own binding packages from shared configuration, and a staleness check embeds generation hashes so a project can verify its generated files are still up to date with the source.

Generated fixtures include cross-language end-to-end test suites and registry-mode test applications built from shared JSON fixtures, and per-language pipelines can run setup, formatting, linting, testing and publishing steps. A pluggable extension trait lets a project add its own domain-specific code-generation logic as a linked binary, a dynamic library or a template-only declaration.

It is written in Rust, installable via cargo, Homebrew or Scoop, and licensed under MIT.

Website: https://github.com/xberg-io/alef
