Mol* Viewer packaged as an Android application with native device-file integration.
The application uses the upstream prebuilt Mol* Viewer runtime without patching its JavaScript, CSS, molecular formats, rendering, state management, or normal user interface.
- open supported files from Android file managers;
- receive
VIEW,SEND, andSEND_MULTIPLEintents; - use Mol*'s own file picker through Android's Storage Access Framework;
- follow the system light/dark setting and avoid system-bar overlap;
- install candidate builds beside stable releases.
Files are delivered to Mol* as browser File objects with their original names and MIME types. Parsing, decompression, representations, selections, rendering, and scientific workflows remain Mol* responsibilities.
Layer 3 minimal mobile policy
↓
Layer 2 Android lifecycle, files, theme, recovery, and stable bridge
↓
Layer 1 upstream prebuilt Mol* Viewer runtime, vendored unmodified
See Architecture for the complete boundary.
Use the Mol* Viewer documentation for Viewer controls, selections, representations, measurements, sessions, and other scientific workflows.
This repository documents only the Android-specific behavior:
Requirements: Node.js 24.x, npm 11 or newer, JDK 17, Android SDK platform 36, and build-tools 36.0.0.
git clone https://github.com/molstar/molstar-viewer-android.git
cd molstar-viewer-android
nvm install
nvm use
export ANDROID_SDK_ROOT=/path/to/Android/Sdk
bash scripts/verify.sh
bash scripts/ci/build-channel.sh candidate debugStable releases require permanent signing and approval of the exact release commit on a real Android device. GitHub Actions artifacts are development builds.
Mol* and this Android host are distributed under the MIT License. Upstream license and provenance are included under app/src/main/assets/viewer/vendor/molstar/.