Skip to content

zelara-ai/testing-mobile

Repository files navigation

Zelara Testing

Standalone diagnostic app for validating device-to-device communication and image processing pipelines between mobile and Zelara Core.

Bundle ID: ai.zelara.testing React Native: 0.76.6 (New Architecture)

Features

  • Live Counter — sends an incrementing value to Zelara Core every second over WebSocket
  • Progress Sync — request an immediate push of Core's current progress state
  • Image Processing Test — capture a photo, send to Core, display the color-inverted result
  • QR Pairing — scan Core's pairing QR to establish a TLS WebSocket link
  • BLE Auto-Discovery — reconnects automatically when Core is on the same local network

Prerequisites

  • Node.js 20+
  • JDK 17
  • Android SDK (API 33+) with adb on your PATH
  • A physical Android device or emulator connected via USB with USB debugging enabled

Install from Latest Release

The easiest way — no build toolchain needed.

  1. Download testing-android-apk.zip (or app-release.apk) from the latest release.
  2. Install directly to your device:
adb install app-release.apk

Development (Debug) Build

1. Clone (as part of the core monorepo)

git clone --recurse-submodules https://github.com/zelara-ai/core.git
cd core/apps/testing-mobile

Or if you already have the repo:

git submodule update --init apps/testing-mobile
cd apps/testing-mobile

2. Install dependencies

npm install --legacy-peer-deps

3. Connect your device

Plug in your Android device via USB and verify it is visible:

adb devices

4. Reroute Metro port (USB debugging)

Metro runs on port 8081. Forward it from your device to your machine:

adb reverse tcp:8081 tcp:8081

Re-run this after every USB reconnect or device reboot.

5. Start Metro bundler

In a dedicated terminal, keep this running for the duration of development:

npx react-native start

6. Build and install debug APK

In a second terminal:

npx react-native run-android

This compiles the debug APK, installs it via adb, and launches the app. Metro hot-reload is active while the bundler is running.


Release Build (local)

Use this to produce the same APK as CI without pushing a tag.

1. Build the release APK

cd android
./gradlew assembleRelease

Output: android/app/build/outputs/apk/release/app-release.apk

2. Install to device

adb install app/build/outputs/apk/release/app-release.apk

The release build does not use Metro — no bundler or port forwarding needed.


Architecture

Part of the Zelara monorepo (apps/testing-mobile/). Shared TypeScript packages live in src/packages/ and are resolved by Metro via watchFolders:

  • @zelara/shared — common types
  • @zelara/device-linking — WebSocket/TLS connection primitives
  • @zelara/state — local state management

Requires Zelara Core running on desktop for AI and sync features.

About

No description, website, or topics provided.

Resources

Code of conduct

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors