README.md
📱 OxygenHub Android
The official native Android client for OxygenHub, designed for modern devices and fully optimized for foldables like the Pixel 10 Pro Fold.
Built with Kotlin, Jetpack Compose, and deep Rust interop (via uniffi-rs) to execute native oxy commands directly on your device.
✨ Features
- 🧬 Commutative History: Native visualization of the change graph.
- 🔀 Offline-First Conflicts: Resolve conflicts on the go; they're just data.
- 🌊 Job Flow Control: Orchestrate OxygenFlow CI/CD pipelines right from your phone.
🛠️ Setup
- Clone the repository with
oxy clone, and fetch the pinned Oxygen sources:oxy submodule update --init(rust-core builds overoxygen/). - Install the Android SDK with an NDK (Android Studio's SDK manager), and
point
local.propertiesat it (sdk.dir=…) or setANDROID_HOME. - Install the Rust side:
cargo install cargo-ndkandrustup target add aarch64-linux-android x86_64-linux-android. - Build and test; the build compiles rust-core for arm64-v8a and x86_64
and generates its Kotlin bindings itself:
./gradlew :app:assembleDebug :app:testDebugUnitTest
🏗️ CI/CD
We dogfood OxygenFlow for our builds.
The pipeline is defined in .flow/pipeline.kdl.
If you notice any issues with Flow or Oxygen during development, please log them in the ~/oxygen_feedback.md document for the core team.