MoltenLava is a Swift package that provides a real-time renderer for Lava animation format using Metal. It enables efficient tile-based animation playback with real-time performance on Apple platforms.
Designed to work seamlessly on macOS & iOS.
- π Real-time playback of Lava animations
- π¨ Tile-based frame decoding using
MTLBlitCommandEncoder - π¦ Parses
.lava/.olavaanimation manifests and image frames - π± Cross-platform: macOS & iOS
- π‘ Smooth real-time playback via
LavaView
Add MoltenLava to your Swift package dependencies:
dependencies: [
.package(url: "https://github.com/OpenLavaFormat/MoltenLava.git", from: "0.1.0")
]Or add it to your Xcode project using File > Add Packages...
Check out the example project that demonstrates how to use MoltenLava to render Lava animations in a SwiftUI application:
OpenLava/Examples/MoltenLavaExample
This package plays back Lava animations packaged as either:
- Folders containing:
manifest.json: animation metadata and frame diffs- Image frames: referenced in the manifest by filename
Contributions are welcome!
Feel free to open an issue or submit a PR if you'd like to improve rendering performance, support new features, or extend platform support.
MIT License Β© 2025 AlexStrNik