Skip to content

ZethRise/Aethery

Repository files navigation

Aethery

Aethery icon

Native Android client for private, censorship-resistant connections.

Release Android build AGPL-3.0 Aether core

v0.4.0 — Aethery is an Android app around the Aether core. It is not a replacement or fork of Aether's networking engine.

What Aethery does

Aethery turns Aether into an Android-first VPN experience. It provides the native interface, Android VPN/TUN bridge, connection state, protocol picker, live connection logs, and release packaging. Aether remains responsible for route discovery, tunnel establishment, transport protocols, and encrypted traffic handling.

Android UI + Android VPN/TUN
            │
            ▼
      Aethery client
            │ JNI
            ▼
 Aether core — discovery, MASQUE, WireGuard, routing

Highlights

  • Native Android UI with one-tap connect, connection state, motion, and live logs.
  • Connection type picker: VPN routes device traffic through Android VpnService; Proxy exposes local SOCKS5 at 127.0.0.1:1819 by default for apps configured to use it.
  • MASQUE over HTTP/3, with HTTP/2 fallback when available.
  • WireGuard for networks where it is reachable.
  • WARP-on-WARP (gool) support through the Aether core.
  • Automatic endpoint scanning with IP-level diagnostics, cached-gateway reconnect, and Ironclad verification.
  • Retained Aether v1.3.0 Android FFI core builds into libaether.so; it is excluded from GitHub language statistics.
  • App-level default protocol setting and direct links to releases/source.

Protocol notes

Protocol Intended use
MASQUE Recommended default. Uses HTTPS-like tunnel transport and can fall back to HTTP/2.
WireGuard Fast direct transport where UDP/WireGuard is reachable.
WARP-on-WARP Nested WireGuard transport supplied by Aether. It still needs a reachable outer WireGuard path.

Network filtering differs by provider and location. A protocol appearing connected means Aether completed its tunnel readiness check; it does not promise that every destination is reachable on every network.

Download

Draft and published builds are available from GitHub Releases.

Device ABI Asset
64-bit ARM Aethery-arm64-v8.apk
32-bit ARM Aethery-Arm64-v7.apk

The second filename intentionally follows the current release naming convention, while its contents target armeabi-v7a.

Install an APK from Android Downloads after allowing installs from the source application when Android asks.

Build from source

Requirements

  • Android Studio with Android SDK 36

  • Android NDK 26.3.11579264

  • CMake 3.22.1

  • JDK 17

  • Rust stable with required Android targets:

    rustup target add aarch64-linux-android armv7-linux-androideabi
  • cargo-ndk

Build APKs

Gradle builds and stages matching Aether library automatically:

.\gradlew.bat :app:assembleDebug -PtargetAbi=arm64-v8a
.\gradlew.bat :app:assembleDebug -PtargetAbi=armeabi-v7a

Build both ABI splits:

.\gradlew.bat :app:assembleDebug

APK output:

app/build/outputs/apk/debug/app-arm64-v8a-debug.apk
app/build/outputs/apk/debug/app-armeabi-v7a-debug.apk

CI releases

The Android release workflow runs manually and builds debug APKs for arm64-v8a and armeabi-v7a. It uploads only direct .apk files to a draft GitHub Release. See the release guide.

To prepare v0.1.1:

Open **Actions**, select **Build Android APKs**, choose **Run workflow**, and enter `v0.1.1` as the release tag.

Review the draft assets and release note in GitHub, then publish the release when ready.

Project layout

app/                 Android application and JNI bridge
core/aether/         Aether Rust core used by this client
core/quiche/         QUIC/HTTP3 dependency used by Aether
.github/             issue forms and Android release workflow

Contributing

Read CONTRIBUTING.md before opening an issue or pull request. Bug and feature forms are available from New issue.

Security

Do not disclose security-sensitive tunnel, credential, or traffic issues in public issues. Read SECURITY.md for private reporting guidance.

License

Aethery is licensed under GNU AGPL-3.0. Aether and bundled dependencies retain their own license terms; see their respective files in core/.

Credits

About

One-click mobile GUI for the Aether censorship-circumvention tunnel — Kotlin & Rust

Topics

Resources

License

Contributing

Security policy

Stars

230 stars

Watchers

4 watching

Forks

Contributors