sceneview/sceneview
3D & AR SDK for Android (Jetpack Compose + Filament), iOS (SwiftUI + RealityKit), and Web. AI-first: llms.txt, MCP server, Copilot/Cursor rules. The only Compose-native 3D library.
What it solves
SceneView simplifies the creation of 3D and Augmented Reality (AR) experiences across multiple platforms. It removes the need for complex engine boilerplate and lifecycle callbacks, providing a declarative API that integrates with modern UI frameworks like Jetpack Compose, SwiftUI, and React Native.
How it works
SceneView acts as a high-level wrapper around powerful rendering engines—Filament (for Android, Web, and Desktop) and RealityKit (for iOS, macOS, and visionOS). It uses a node-based system where 3D objects, lights, and cameras are treated as composable elements. For AR, it integrates with ARCore on Android and ARKit via RealityKit on iOS, allowing developers to pin virtual objects to the real world using anchors and plane detection.
Who it’s for
It is designed for app developers who want to add 3D or AR functionality to their applications without becoming experts in low-level graphics programming. It specifically targets developers using Android (Jetpack Compose), iOS (SwiftUI), Web (JavaScript/Kotlin/JS), Flutter, and React Native.
Highlights
- Multi-platform Support: Unified concepts across Android, iOS, Web, Desktop, TV, Flutter, and React Native.
- Declarative API: Nodes are treated as UI components (composables), making the scene graph reactive to state changes.
- Comprehensive Node Library: Over 26 node types including 3D models (glTF/GLB), procedural primitives, 3D text, and physics-enabled objects.
- Compose-in-3D: Ability to render standard UI components (like labels or cards) as textured planes within a 3D space.
- AI-First Design: Includes an MCP server for AI assistants (like Claude) to generate compilable 3D/AR code and a dedicated contributor toolkit.
- Advanced AR Features: Support for Geospatial VPS, Cloud Anchors, image/face tracking, and AR recording/playback for debugging.
Related
- Project
- Project
- Project
- Project
- Project