README.md

July 7, 2026 · View on GitHub

ClashFest

Clash Meta (Mihomo) client for Android — phone & Android TV
Redesigned Home · cleaner subscriptions & nodes · routing tools · safe defaults

📖 Wiki · Telegram · Releases · Issues · Roadmap · License

License: GPL v3 Platform: Android Latest Release Status: Active development


ClashFest is an Android client in the Clash Meta / Mihomo family — a redesigned Home experience, cleaner subscription/node flows, routing-focused tools, and practical safety defaults for everyday use.

💬 Questions, bugs, feature requests → Telegram (EN / RU) or GitHub issues.


Highlights

AreaWhat you get
HomeActive node card, compact subscription actions, circular tab swipe, import from URL / QR / clipboard
WidgetHome-screen speed widget — live ↑/↓ rate, tap to connect/disconnect (responsive: 1 cell = on/off, wider = live speed)
ModesRule / Global quick switch from Home
ProfilesDedicated Profiles tab manager with collapsible proxy groups + per-profile read-only config viewer (YAML highlighting, copy / share)
Proxy chainChain two proxies per profile (first hop → exit) with explicit save vs use-now and optional YAML preview
Rules & routingDedicated Routing hub, rule snippets, effective rules, app routing (per‑app VPN policy)
DNS & networkPer-profile DNS / hosts editor, Block IPv6 (AAAA) toggle, VPN options, security-oriented toggles
FeaturesSafe “every‑day” toggles (unified delay, geodata mode, TCP concurrent) + entry to Geo Data Source
Geo Data SourcePresets for geox-url mirrors (same upstream data, different CDN paths), custom URLs, on-device geo DB import
SubscriptionsHTTP(S) / content: profiles; mierus:// shares parsed via the same pipeline as other URL imports
UpdatesIn-app manual update check, merged About & updates, Home indicator when an update is available
Quick startQuick Settings tile flow with VPN permission handling and one-tap startup
Android TVD-pad-friendly layout with focus navigation and a leanback banner — the same app on the big screen
Companion / remotePair a device over LAN via QR and drive ClashFest remotely — the external controller doubles as a TV remote
ConnectionsLive connections view with resilient snapshot decoding and lower polling load
AppDark mode, pure-black (OLED), optional UI language (system / EN / RU / ZH), notification & recents options
LookLumen design language — obsidian surfaces, single-accent glow, Manrope + Space Grotesk type; sleeping-sloth branding

Screenshots


Home — connected — connect orb, mode, active node, live speed

Home — idle — disconnected state, one-tap connect

Nodes — grouped picker with latency, search & protocol chips

Profiles — subscriptions, proxy groups, per-profile tools

Rules — intent-style add / edit, DIRECT · REJECT · route to group

Routing — subscription + user rules in effective order

Import — add a subscription / profile from URL, QR or clipboard

Settings — about & updates, appearance, language, network

Roadmap

What we're building next, what's planned, and what's out of scope lives in ROADMAP.md — including community feature requests and why some are or aren't a fit. Have an idea? Open an issue.

Current focus

  • Stability and regression-free releases on top of the redesigned Home
  • Routing and profile management polish without breaking upstream compatibility
  • Performance and battery optimizations in high-refresh screens
  • Localization quality (EN / RU / ZH first, others incremental)
  • Post-release cleanup of medium-risk technical debt

Repository layout

ModuleRole
app/Activities, navigation, packaging
common/Shared helpers (imports, naming, ping helpers, …)
core/JNI bridge, native Mihomo integration
design/UI, themes, layouts, preference screens
service/VPN service, profiles, rule merge / Geo presets

Build

Requirements

  • Android Studio (or compatible IDE)
  • Android SDK + NDK as required by the project
  • JDK 21 (required — the native :hideapi step fails silently on older JDKs)
  • Gradle wrapper (included)

Debug (default alpha flavor)

# Linux / macOS
./gradlew assembleAlphaDebug
# Windows
.\gradlew.bat assembleAlphaDebug

Branding

  • App icon & README logo: the sleeping-sloth mark — part of the same brand family as SlothClash. Source art: design/ClashFest.png (with wordmark) · design/ClashFest_notxt.png (mark only).
  • Screenshots & notes live in docs/.

License

Licensed under the GNU General Public License v3.0. See LICENSE and NOTICE.

Disclaimer — ClashFest is provided as-is, without warranty. Use it responsibly and in compliance with local law, provider terms, and upstream licenses.


ClashFest builds on the open Clash / Meta stack. If you use or ship derivatives, keep copyright and license notices intact. If ClashFest is useful for you, consider giving the project a star ⭐

ProjectWhat it isLink
Clash Meta for AndroidUpstream Android client this tree forked fromMetaCubeX/ClashMetaForAndroid
mihomoClash.Meta core (Go) used under the hoodMetaCubeX/mihomo
Meta rules datCommunity geo / ruleset data releases (our Geo Data Source presets mirror these)MetaCubeX/meta-rules-dat
MieruUDP port hopping VPN protocol; mierus:// subscription links are supported as importsenfein/mieru
SlothClash (Desktop)Companion desktop client in the same ecosystem (Wails · Go · React)Nemu-x/SlothClash
DocumentationMihomo / Meta docs (rules, parsers, …)wiki.metacubex.one