UniFFI 는 Mozilla에서 Rust 라이브러리를 대상으로 하는 외부 언어에 대한 바인딩을 자동으로 생성해주는 도구이다. 이 도구는 여러 플랫폼을 대상으로 하면서도 비즈니스 로직을 단일 Rust 라이브러리에서 통합하는 방식을 지지한다. 크로스 플랫폼 코드베이스의 개발 및 유지보수를 간소화 할 수 있다. 이걸 사용한다고 해서 해당 플랫폼에 Rust 라이브러리를 배포할 수 있는건 아니지만 바인딩 코드를 직접 작성하는 수고를 덜어준다.
Rust 언어로 한번만 작성하고 다양한 플랫폼과 언어에서 쉽게 재사용 할 수 있도록 하기 위함.

UniFFI 프로스저 매크로 또는 UDL(WebIDL) 파일을 통해서 인터페이스를 정의하도록하고 이 정의는 대상 언어에서 사용할 수 있는 메서드와 데이터 구조를 설명하며 Rust 스캐폴딩코드와 외부언어 바인딩을 생성하는데 사용된다.
KotlinSwiftPythonRubyC#GolangDartJavaJavaScript