Skip to content
farfarfunPublic

About

A multi-platform proxy client based on mihomo (Clash.Meta) — Android, Windows, macOS and Linux. Simple to use, open source and ad-free.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

314 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FunClash

A multi-platform proxy client based on ClashMeta. Simple to use, open source and ad-free.

The FunClash dashboard

Features

  • One app for Android, Windows, macOS and Linux, with x64 and ARM64 builds on the desktop.
  • mihomo (Clash.Meta) core with rule routing, proxy groups, latency tests, system proxy and TUN mode.
  • Profiles from a subscription link or a file, with a built-in editor, override scripts, and custom rules, proxies and proxy groups.
  • Live views of connections, requests, DNS queries and logs.
  • Material You design with Apple-style interaction: dynamic color, light and dark themes, continuous corners, sheets that snap between heights, and layouts that adapt from phones to desktops.
  • Backup and restore through WebDAV or a local file.
  • Platform touches: a Quick Settings tile, per-app proxy and Android TV support on Android; a tray menu and global hotkeys on the desktop.
  • Open source and ad-free, licensed under GPL-3.0.

Screenshots

Proxy groups with latency tests Profiles from subscriptions and files Tools and settings

Download

Get the latest build from GitHub Releases, or open the website, which picks the right file for your device.

Platform Packages Notes
Android APK for arm64-v8a, armeabi-v7a and x86_64 Most phones use arm64-v8a.
Windows 10 and later Installer (.exe) or portable .zip, for x64 and ARM64 Pick ARM64 on Snapdragon and other ARM laptops.
macOS 12 and later DMG for Apple Silicon and Intel Also on Homebrew.
Linux .deb, .rpm and AppImage, for x64 and ARM64 The .deb is also on the APT source below. See the tray note too.

Get it on GitHub

Homebrew (macOS)

brew tap farfarfun/packages https://github.com/farfarfun/packages
brew trust farfarfun/packages
brew install funclash

The tap URL has to be spelled out: brew tap farfarfun/packages on its own looks for a homebrew-packages repository, and that one repository is also the APT source below. brew trust is what Homebrew 6.0 and later want before a third-party tap's casks will install under their bare name.

APT (Debian and Ubuntu)

curl -fsSL https://farfarfun.github.io/packages/farfarfun.gpg \
  | sudo tee /usr/share/keyrings/farfarfun.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/farfarfun.gpg] https://farfarfun.github.io/packages/deb stable main" \
  | sudo tee /etc/apt/sources.list.d/farfarfun.list
sudo apt update && sudo apt install funclash

Both channels are served by farfarfun/packages from this repository's releases, and both index one package per repository, which is why the package name is the lower-case funclash. apt keeps the last two versions — apt-cache madison funclash lists the one you can downgrade to; Homebrew carries the latest only.

Linux tray icon

The .deb package installs its own dependencies. With the AppImage or the .rpm, install the AyatanaAppIndicator library so the tray icon can show:

sudo apt-get install libayatana-appindicator3-1   # Debian and Ubuntu
sudo dnf install libayatana-appindicator-gtk3     # Fedora

Usage

Import a profile from a link. Opening a link in this form imports the subscription into FunClash. The clashmeta:// and funclash:// schemes work the same way.

clash://install-config?url=<URL-encoded subscription link>

Automate on Android. Tasker, MacroDroid and similar apps can start, stop or toggle the proxy by starting an activity with one of these actions:

com.farfarfun.funclash.action.START
com.farfarfun.funclash.action.STOP
com.farfarfun.funclash.action.TOGGLE

From a computer, the same works over adb:

adb shell am start -a com.farfarfun.funclash.action.TOGGLE

Build from source

You need Flutter 3.47 (release builds use 3.47.6), Go 1.27 and Rust installed through rustup. Each platform builds on its own host, except Android, which builds anywhere.

git clone --recursive https://github.com/farfarfun/funclash.git
cd funclash
flutter pub get
dart tool/setup.dart android   # or windows, macos, linux

Packages land in dist/. The Go core and the Rust libraries are compiled as part of the Flutter build.

Platform Also needed
Android Android SDK with the NDK. Add --arch arm64 to build a single ABI.
Windows GCC (MinGW-w64) for the core and Inno Setup 6 for the installer.
macOS Xcode and Node.js. The script installs appdmg through npm.
Linux Debian or Ubuntu. The script installs the build packages with apt and downloads appimagetool.

Run dart tool/setup.dart --help for the remaining options, such as --targets to build only some package formats.

Support

Starring the repository is the easiest way to support the project. Bugs and feature requests go to GitHub Issues.

License

FunClash is released under the GPL-3.0 license. It started as a fork of FlClash and keeps that licence.


关于 farfarfun

farfarfun 是一个专注于实用工具库的开源组织, 涵盖云存储、数据处理、AI、多媒体与开发工具链等方向。

本项目基于 GPL-3.0 协议开源。

About

A multi-platform proxy client based on mihomo (Clash.Meta) — Android, Windows, macOS and Linux. Simple to use, open source and ad-free.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages