MoltenVK is a Vulkan Portability implementation that layers Vulkan graphics and compute functionality over Apple's Metal framework, enabling Vulkan applications to run on macOS, iOS, tvOS, and visionOS.
The tool solves the problem of running Vulkan applications on Apple platforms, which lack native Vulkan support. It works by translating Vulkan API calls to Metal equivalents and automatically converting SPIR-V shaders to Metal Shading Language. The implementation uses only publicly available Apple APIs, making applications compatible with distribution channels including the App Store. MoltenVK supports Vulkan 1.4 and covers an almost-complete subset of the specification, with a separate shader converter tool available for development-time compilation.
Developers should choose MoltenVK when targeting Apple platforms with existing Vulkan codebases or when building cross-platform graphics applications. It suits projects that need to reach macOS, iOS, tvOS, and visionOS without maintaining separate Metal implementations. The tool works across all Apple architectures including Apple Silicon and supports various deployment targets from simulators to Mac Catalyst.
The project maintains a substantial base of adopters who report real-world issues, with almost all open issues raised by outside users rather than the core team. Maintainers typically respond to new issues and pull requests within a few days. Work in the issue tracker is dominated by completed items, bug reports, and enhancement requests.