3D & AR SDK for Android, iOS, Web — API docs, samples, validation, and code generation.
A server that exposes the 3D & AR SDK capabilities for Android, iOS, and Web, including API docs, samples, validation, and code generation. It aggregates cross-platform 3D/AR tooling with familiar UI frameworks and supports multiple ecosystems.
🛠️ Key Features
Cross-platform 3D & AR support across Android, iOS, Web, and more
API docs, samples, validation, and code generation
Integration with popular frameworks and languages (Kotlin, Swift, SwiftUI, Jetpack Compose, React Native, Flutter)
Supports GLTF workflows and ARCore/RealityKit / VisionOS compatibility
Readme excerpt highlights unified concepts and simple usage
🚀 Use Cases
Build AR experiences with existing UI frameworks
Create cross-platform 3D applications for mobile, web, and desktop
Leverage code generation and validation to accelerate development
Integrate with AR toolchains (ARCore, RealityKit, ARKit) and GLTF assets
⚡ Developer Benefits
Familiar API surface across platforms
Rich samples and documentation for rapid onboarding
Streamlined validation and code generation workflows
Broad topic coverage for Android, iOS, web, and native ecosystems
⚠️ Limitations
Data excerpt focuses on high-level capabilities; platform-specific nuances may require separate docs
Readme excerpt indicates multi-platform scope; actual MCP endpoints not enumerated here
Build 3D and AR experiences with the UI frameworks you already know.
Same concepts, same simplicity — Android, iOS, Web, Desktop, TV, Flutter, React Native.
See SceneView capabilities in action — install the live demos in one tap:
Browse all sample sources in samples/ — Android · iOS · Web · Desktop · TV · Flutter · React Native.
Tip — every demo opens directly via https://sceneview.github.io/open?demo=<id>. For example, …/open?demo=ar-rerun lands straight on the AR Rerun debug screen with a single tap from any QR code or link.
# Claude — ask AI to build your 3D app
claude mcp add sceneview -- npx sceneview-mcp
# Then ask: "Build me an AR app with tap-to-place furniture"
No engine boilerplate. No lifecycle callbacks. The runtime handles everything.
Platforms
Platform
Renderer
Framework
Status
Android
Filament
Jetpack Compose
Stable
Android TV
Filament
Compose TV
Alpha
iOS / macOS / visionOS
RealityKit
SwiftUI
Alpha
Web
Filament.js (WASM)
Kotlin/JS + sceneview.js
Alpha
Desktop
Software renderer
Compose Desktop
Alpha
Flutter
Native per platform
PlatformView
Alpha
React Native
Native per platform
Fabric
Alpha
Compose Multiplatform
Per platform (Filament / RealityKit)
sceneview-compose
Alpha — viewer subset, Android + iOS
Claude / AI
—
MCP Server
Stable
The Compose-native successor to Sceneform
Google archived Sceneform in 2021 and
ships no first-party declarative AR renderer — its current ARCore samples hand-roll a
throwaway OpenGL framework instead. SceneView fills that gap. It descends from the
maintained Sceneform community fork and is the actively-developed, Jetpack-Compose-native
way to build 3D and AR on Android:
ARCore for perception (plane detection, anchors, depth, geospatial)
Filament for rendering (Google's production-grade real-time engine)
Jetpack Compose for the API — nodes are composables, lifecycle is automatic
glTF (.glb / .gltf) instead of the deprecated .sfb model format
Multiplatform — the same concepts run on iOS, Web, Desktop, TV, Flutter, and React Native
Coming from the archived Sceneform repo? See the
migration guide for a concept-by-concept mapping
(ArFragment → ARScene { }, ModelRenderable → rememberModelInstance, and so on).
Install
Android (3D + AR):
kotlin
dependencies {
implementation("io.github.sceneview:sceneview:4.34.0") // 3D
implementation("io.github.sceneview:arsceneview:4.34.0") // AR (includes 3D)
}
Filament .filamat materials with parameters, plus built-in unlit / lit / overlay variants.
MaterialLoader
Post-processing
Bloom, depth of field, SSAO, vignette, color grading, tone mapping.
View.bloomOptions, dynamicResolutionOptions, …
Compose UI in 3D
Render any @Composable as a textured plane in world space — labels, cards, lists, animations. Fully interactive: picked touches are forwarded into the view, so Button.onClick, ripples and inner scrolling work.
Plus the iOS RerunBridge with the same wire format as Android, and a NodeBuilder DSL for declarative composition outside SwiftUI.
Install:https://github.com/sceneview/sceneview.git (SPM, from 4.34.0)
SceneView Web (JavaScript + Kotlin/JS)
The lightest way to add 3D to any website. Two <script> tags, one function call.
Friendly DSL (~25 KB) powered by Filament.js WASM (~210 KB) — the same engine behind Android SceneView.
Note: the sceneview-web npm package is the lower-level Kotlin/JS UMD
bundle — it expects a Filament global and does not include the friendly
SceneView.modelViewer DSL. Use the snippet above for vanilla-JS sites.
The npm package is intended for Kotlin/JS or webpack-based projects.
JavaScript API (script-tag):
SceneView.modelViewer(canvasOrId, url, options?) — all-in-one viewer with orbit + auto-rotate
SceneView.create(canvasOrId, options?) — empty viewer, load model later
viewer.loadModel(url) — load/replace glTF/GLB model
For Kotlin Multiplatform projects, the same engine is exposed as a Kotlin/JS class with an OrbitCameraController, a geometry DSL, and reactive node updates:
SceneView is AI-first — every API, doc, and sample is designed so AI assistants generate correct, compilable 3D/AR code on the first try.
MCP Server (Claude, Cursor, Windsurf, etc.)
The official MCP server provides 28 tools, 33 compilable samples, a full API reference, and a code validator:
bash
# Claude Code — one command
claude mcp add sceneview -- npx sceneview-mcp
# Claude Desktop / Cursor / Windsurf — add to MCP config
{ "mcpServers": { "sceneview": { "command": "npx", "args": ["-y", "sceneview-mcp"] } } }
Highlights: generate_scene, debug_issue, search_models (Sketchfab BYOK), analyze_project (audit existing app), validate_code (compile-check before sending), plus per-platform recipes for AR, physics, geometry, and Compose-in-3D.
Claude Code plugin (MCP + slash commands + hooks)
Want the MCP server plus the full SceneView contributor toolkit (one-shot release, review, cross-platform sync, version-bump, etc.) in a single install? Use the SceneView Claude Code marketplace:
sceneview-mcp server — same as above, started automatically
namespaced slash commands — /sceneview:contribute, /sceneview:release, /sceneview:review (incl. --score / --coverage / high — absorbs the former /evaluate + /test), /sceneview:document, /sceneview:quality-gate, /sceneview:sync-check, /sceneview:store-status, /sceneview:version-bump, /sceneview:maintain
Cross-platform reminder hooks — gentle nudges when you edit Android, iOS, Web, or KMP-core APIs to keep the other platforms in sync
Specialty MCP Servers
Domain
Install
Tools
Automotive — car configurators, HUD, dashboards
npx automotive-3d-mcp
9
Healthcare — anatomy, DICOM, surgical planning
npx healthcare-3d-mcp
7
Gaming — characters, physics, particles, levels
npx gaming-3d-mcp
7
Interior Design — room planning, AR furniture
npx interior-design-3d-mcp
7
Rerun.io — AR debug logging, visualization
npx rerun-3d-mcp
5
ChatGPT / GitHub Copilot / Other AI
llms.txt — Machine-readable API reference at llms.txt (complete API: composables, nodes, threading rules, recipes — its Kotlin snippets are compile-checked in CI)
Tap Save & Share in the AR Rerun demo to flush a .rrd recording on
your dev machine, then re-host it on any public URL (Cloudflare R2,
GitHub release, gist) and open:
…in any browser to scrub the AR session frame-by-frame. No install, no
Rerun viewer needed locally — perfect for attaching a fully-replayable
session to a bug report. Powered by @rerun-io/web-viewer under SceneView branding.
See the AR Debug — Rerun.io section in llms.txt for the
full architecture (live mode + save mode + control protocol) and the
Kotlin API surface (RerunBridge.requestSaveAndShare).
Record & Replay AR sessions
Record & Replay AR sessions — capture an outdoor ARCore session once with ARRecorder, replay it 1:1 at the desk via ARSceneView(playbackDataset = file). Pair with the Rerun bridge for record-replay-inspect debugging. See docs/docs/ar-recording.md and the Record & Playback demo.
Architecture
Each platform uses its native renderer. Shared logic lives in KMP.