🔮Sigil
Declarative 3D for Kotlin Multiplatform & Jetpack Compose. Build reactive 3D scenes using familiar Compose syntax—powered by Materia's WebGPU/Vulkan engine.Sigil bridges Compose's reactivity with Materia's high-performance 3D rendering. Use standard Compose state (mutableStateOf, animate*AsState) to drive animations and scene updates.
Declarative 3D SyntaxBuild scenes with Box, Sphere, Group, and Light composables. No manual loop management or context handling required.
Reactive StateDrive animations and scene updates using standard Compose state—mutableStateOf, animate*AsState, and more.
Multiplatform ReadyJVM (Desktop) with Vulkan, Web (JS/Wasm) with WebGPU/WebGL2. Android & iOS support coming soon.
PBR MaterialsPhysically Based Rendering for realistic lighting and materials. Control metalness, roughness, and color with type-safe APIs.
Create stunning 3D scenes in just a few lines
@Composable fun RotatingCube() { var rotationY by remember { mutableStateOf(0f) } MateriaCanvas(modifier = Modifier.fillMaxSize()) { // Lighting AmbientLight(intensity = 0.5f) DirectionalLight(position = Vector3(5f, 10f, 5f)) // Objects Group(rotation = Vector3(0f, rotationY, 0f)) { Box( color = 0xFF4488FF.toInt(), metalness = 0.5f, roughness = 0.1f ) } } }
Sigil handles the scene graph, resource management, and GPU synchronization automatically. Just describe your scene and let the engine do the heavy lifting.
Powered by MateriaSigil is built on top of the Materia engine, which provides modern WebGPU/Vulkan/Metal graphics backends. Get high-performance 3D rendering with automatic platform selection.Learn more about Materia →
Works with SummonSigil's sigil-summon module provides seamless integration with Summon, allowing you to embed 3D canvases in your Kotlin Multiplatform web applications with SSR support.Learn more about Summon →
Ready to build 3D with Compose?Get started with Sigil today and bring declarative 3D to your Kotlin Multiplatform projects.
© 2025Yousef
Built withSummonSummon