AI summary
Android Xray client for managing profiles and subscriptions, routing traffic per app or by custom rules, and viewing connection history. Requires your own server configuration or subscription; standard VPN mode does not require root.
Generated by AI. May contain inaccuracies.
Screenshots
About this app
Yet Another Xray Client (for Android) with tun0 defense, sock5 auth, support of antifilter.download subnets, geo files, per-app split, core routing and more
An Android client for Xray-core: manage subscriptions, compare servers and choose how your apps connect.
Latest release Requires Android 8.0 or newer MIT license
yaxc is a client, not a VPN service. Bring a subscription or a compatible server configuration from a provider you trust. The standard Android VPN mode does not require root.
Features
Profiles and subscriptions Import subscriptions and profile share links from the clipboard or a QR code. Keep multiple sources organized alongside your manually created profiles. Refresh subscriptions manually or automatically; see traffic usage and expiry when your provider supplies them. Check a single profile or compare a group with batch latency checks. Choose HTTP GET, HTTP HEAD or TCP checks. Routing you control Per-app split tunneling: route all apps through the VPN, exclude selected apps or include only selected apps. Core routing: build ordered rules in the visual editor or edit routing JSON directly. Send matching traffic through the proxy, directly or to a blocking outbound. Match domains, IP ranges, ports, protocols and TCP/UDP transport; import and export routing JSON through the clipboard. Download or import GeoIP, GeoSite and Antifilter lists in the app. Choose a bundled provider preset or your own geodata URLs. Tools for everyday use and advanced setups A full-screen JSON editor with syntax diagnostics, formatting, undo/redo and find/replace. Connection details and live runtime logs for troubleshooting. English and Russian interfaces, system-following appearance and four theme presets, including Mint Graphite and Light Slate. In-app release checks and APK updates. A Quick Settings tile for connection control, plus optional start on boot. Optional root/transparent-proxy settings for advanced hotspot and tethering setups. Screenshots Captured from the 1.5.3 development build on an isolated Android emulator. All profile names, endpoints and subscription usage are fictional demo data. These are real app screens, not mockups; the VPN is not connected.
Profiles & subscriptions Core routing Per-app routing Connect screen in Mint Graphite with a fictional demo subscription and server profiles Visual core routing editor with ordered rules and a domain strategy selector Per-app routing with Off, Exclude and Include modes, search and app selection JSON workspace Routing resources Preferences & themes Full-screen JSON editor showing a credential-free local routing example GeoIP and GeoSite resource management in Mint Graphite with download and file import controls Light Slate preferences with the five-choice App Theme dialog open Select any screenshot to view it at full resolution.
Themes Choose Settings → Preferences → Basic → App Theme, then save. Each preset below shows the same Connect and Core Routing screens with identical demo data so you can compare the colors directly.
Midnight Blue · Connect Midnight Blue · Core Routing Midnight Blue theme on the Connect screen with fictional demo profiles Midnight Blue theme in the visual Core Routing editor Graphite · Connect Graphite · Core Routing Graphite theme on the Connect screen with fictional demo profiles Graphite theme in the visual Core Routing editor Mint Graphite · Connect Mint Graphite · Core Routing Mint Graphite theme on the Connect screen with fictional demo profiles Mint Graphite theme in the visual Core Routing editor Light Slate · Connect Light Slate · Core Routing Light Slate theme on the Connect screen with fictional demo profiles Light Slate theme in the visual Core Routing editor System default — light and dark previews
Download Download APKs from GitHub Releases. Requires Android 8.0 or newer.
APK Choose this for universal Any supported architecture; the simplest choice if you are unsure. Available starting with 1.5.3. arm64-v8a Most current Android phones and tablets; smaller than universal. armeabi-v7a Older devices running 32-bit ARM Android. x86_64 Devices and emulators running 64-bit x86 Android. x86 Devices and emulators running 32-bit x86 Android. Allow your browser or file manager to install apps from this source if Android asks. When updating, install over the existing app using the same signing source to keep your profiles and preferences. If Android reports a signing conflict, do not uninstall just to bypass it: uninstalling removes app data.
Getting started
Install yaxc using the APK for your device. Add your configuration. Copy an HTTPS subscription URL or a supported profile share link, then use From Clipboard on the Connect screen. You can also use Scan QR code, or create a manual group and a JSON profile. Prepare routing resources. Open Settings → Assets and download geoip.dat and geosite.dat for the default routing rules. Configurations without geodata references do not need these files. Choose a profile. Open its group, select a server and optionally run a latency check. Connect. Tap the power button and approve Android's VPN request. Use the same button to disconnect. For split tunneling, open Routing → Apps Routing, choose Off, Exclude or Include, select apps and save. For domain/IP rules, open Routing → Core Routing. Rules are evaluated from top to bottom; higher rules take precedence.
Subscription updates Automatic refresh is optional. Enable Settings → Preferences → Auto-refresh subscriptions and set the refresh interval; provider-supplied intervals are used when available. Android may defer background work.
Each source is updated as a complete batch: a failed or malformed refresh keeps that source's previous profiles. Cancellation before commit also keeps them; an update already committing finishes before reporting its result. An unchanged active configuration keeps the existing connection running. A changed configuration is validated before replacing the active core; an invalid replacement keeps the previous connection and reports an error. If an update removes the selected profile, the VPN stops rather than silently using a deleted profile. When refreshing multiple sources, successful sources can still update; the result reports any partial failures.
FAQ
Does yaxc include servers or a subscription? No. You need your own compatible configuration or an HTTPS subscription from a provider. Availability, speed and server-side privacy depend on that provider and your network.
Which configuration formats can I use?
Use Xray JSON configurations or supported profile share links, including VLESS. You can also open a local JSON file with yaxc. Subscription sources can provide raw JSON or supported share-link lists, including base64-encoded subscriptions. A feature supported by Xray-core is not necessarily available through every share-link format.
Why does the connection ask for GeoIP or GeoSite?
A routing rule references geoip.dat, geosite.dat or a group inside one of those files. On the error dialog, choose Resources, download or import a compatible file, then return and tap Retry. If a group is missing, choose a rule set containing it or change the rule. Recovery does not automatically download files or connect.
Do I need root? Can this replace a kill switch?
Normal VPN use does not require root. Transparent-proxy mode is an advanced, root-dependent path and requires a separately installed Xray executable in Assets. Root/iptables behavior varies by device and is not as broadly verified as VPN mode.
Experimental TUN protection is not a guaranteed kill switch. Do not rely on yaxc to prevent every possible traffic leak.
What information is sent over the network?
Subscription requests go to your provider and can include the configured User-Agent, x-hwid identifier and Android/device headers. Review global values in Preferences and per-source overrides in Links. Release checks contact GitHub; resource downloads and latency checks contact their configured endpoints. Treat subscription URLs and exported configurations as secrets, and choose providers you trust.
What should I include in a bug report?
Open an issue with your app version, Android version, device model, steps to reproduce and the relevant error or log excerpt. Note whether you use VPN or root mode. Redact subscription URLs and tokens, server addresses, UUIDs, passwords, keys and local proxy credentials before sharing logs, JSON or screenshots.
Contributing
Bug reports, reproducible examples and focused pull requests are welcome. Build instructions, native dependency details and verification workflows live in the development guide, not in this user guide.
Credits and license
yaxc is an independently maintained fork of SaeedDev94/Xray, powered by Xray-core and hev-socks5-tunnel.
The app is licensed under MIT. Bundled third-party components retain their respective licenses.
What's new
- Connections and history Reworked Connections into app and configuration summaries. Select an app or configuration to inspect only its connections, with an opposite-side identity filter. Added compact connection rows with selectable details and copying; destination search; combined state, TCP/UDP, route, outcome and start-period filters; and sorting by time, traffic or duration. Back preserves filters and scroll position; incoming traffic does not force scrolling. Reduced presentation work for the grouped view and stopped presentation updates while the screen is hidden. Totals describe retained filtered observations, not lifetime traffic. Keep active records first and rotate finished history in completion order. History now reports native evictions/refusals and Android rotations/refusals separately instead of treating them as one exact lost-connection count; clearing resets history counters and rejects stale snapshots. Added History → Record connection analytics, enabled by default. Turning it off stops native capture and Android polling immediately without restarting the proxy or interrupting TCP/UDP traffic, in ordinary and Live Routing modes. Turning recording back on captures only new connections. Existing observations finish as interrupted/incomplete at the cutoff; their real connections keep running. The recording preference survives app/proxy restarts and is independent of Save history on this device. Turning recording off keeps existing history; use Clear finished history to release retained history memory. Existing bounds and 24-hour expiry still apply.
- Core Routing Import selected rules from a profile into the Core Routing draft, with a preview, optional domain strategy and append/replace choices. Save explicitly to apply; the source profile stays unchanged. Preserve Profile only / Core Routing only / Combine when saving. Repeat imports and equivalent runtime aliases no longer duplicate identical rules. Distinguish shared Proxy/Direct/Block roles from literal profile outbound tags. Ambiguous destinations require confirmation; unsupported outbound dependencies are rejected with an explanation.
- Embedded core Updated the embedded derundevu/proxide core to 26.11.9.2, based on the unchanged Xray 26.11.9 upstream base, with safe live connection-observation shutdown. The package ID and Room schema are unchanged. The separately managed root-mode Xray executable is not upgraded by this release; connection analytics remains unavailable in root mode.
About this version
- Version
- 1.5.6 (1178)
- Size
- 51.46 MB
- Requires Android
- 8.0
- Target SDK
- 26
- Architecture
- arm64-v8a
- Downloads
- 6
- Updated
- Nov 12, 2026
- Package
- io.github.derundevu.yaxc
Similar apps
Ratings & reviews
- 50
- 40
- 30
- 20
- 10