A Minecraft Inventory GUI framework to easily create powerful, reactive, and efficient Minecraft GUIs.
Viewportl uses the Compose Runtime library to make the creation of Minecraft UIs very easy.
Note
Jetpack Compose, that you may know from the Android Ecosystem, is build on top of the Compose Runtime.
Compose Runtime is a standalone library separate from the Android stack and can be used outside of it.
Its main goal is to make the creation of dynamic (UI) Trees easy and provides utilities for it.
This project is in its early stages and the API is not stable!
The API may receive breaking changes at anytime without notice!
List of the existing and planned Features
- https://github.com/JakeWharton/mosaic - Compose Runtime for Console UI
- https://www.youtube.com/watch?v=zMKMwh9gZuI - Explanation of how Compose constructs UIs
- https://www.youtube.com/watch?v=BjGX2RftXsU - How Modifiers work in Compose
- https://developer.android.com/develop/ui/compose/layouts/custom - How do Custom Layouts work?
- https://developer.android.com/develop/ui/compose/layering - Design of Compose (viewportl builds on the Runtime)
- https://developer.android.com/develop/ui/compose/phases - More about the Composition, Layout, and Draw Phases (+ all the other UI architecture docs)
- https://proandroiddev.com/understanding-jetpack-compose-internal-implementation-and-working-6db20733d4da - Deep Dive Especially the Gap Buffer
- https://arunkumar.dev/jetpack-compose-for-non-ui-tree-construction-and-code-generation/
- https://intelligiblebabble.com/compose-from-first-principles/
- https://github.com/JetBrains/compose-multiplatform-core
- https://github.com/JetBrains/compose-multiplatform