Current version is 1.5
Next Generation of ShadowsocksX
It's hard to maintain the original implementation as there is too much unused code in it. It also embeds the ss-local source. It's crazy to maintain dependencies of ss-local. So it's hard to update the ss-local version.
Now I just copied the ss-local from homebrew. Run ss-local executable as a Launch Agent in the background. Serve PAC js file as a file URL. So there is only some source code related to GUI left. Then I will rewrite the GUI code in Swift.
- Mac OS X 10.11 +
- XCode 8.3+
- cocoapod 1.2+
- Use ss-local from shadowsocks-libev 3.0.5
- Could Update PAC by download GFW List from GitHub.
- Show QRCode for current server profile.
- Scan QRCode from screen.
- Auto launch at login.
- User rules for PAC.
- Support OTA
- HTTP Proxy by privoxy
- Over kcptun. Version 20170322
- Export/Import configure file.
- An advanced preferences panel to configure:
- Local socks5 listen address.
- Local socks5 listen port.
- Local socks5 timeout.
- If enable UDP relay.
- GFW List URL.
- Manual specify network service profiles which would be configure the proxy.
- Could reorder shadowsocks profiles by drag & drop in servers preferences panel.
- Configurable global shortcuts for toggle running and switch proxy mode.
Different from orignal ShadowsocksX
Run ss-local as a background service through launchd, not as an in-app process. So after you quit the app, the ss-local maybe be still running.
Added a manual mode which won't configure the system proxy settings. Then you could configure your apps to use socks5 proxy manual.
Contributions must be available on a separately named branch based on the latest version of the main branch develop.
The project is released under the terms of the GPLv3.