ShadowsocksX-NG
GitHub describes it as Next Generation of ShadowsocksX. The repository metadata lists Swift as its primary language. The metadata lists the GPL-3.0 license. This article stays within the project description and details documented in the GitHub repository README.
shadowsocks/ShadowsocksX-NG: Why a new implementation?
GitHub describes it as Next Generation of ShadowsocksX. The repository metadata lists Swift as its primary language. The metadata lists the GPL-3.0 license. This article stays within the project description and details documented in the GitHub repository README.
Repository scope
GitHub describes it as Next Generation of ShadowsocksX. The repository metadata lists Swift as its primary language. The metadata lists the GPL-3.0 license. The README describes the project this way: It's hard to maintain the original implementation as there is too much unused code in it. It also embeds the ss-local source code. It's crazy to maintain dependencies of ss-local . So it's hard to update the ss-local version.
Why a new implementation?
The README section "Why a new implementation?" states: Now I just copied the ss-local from Homebrew. Run ss-local executable as a Launch Agent in the background. So there is only some source code related to GUI left. Then I have rewrited the GUI code in Swift.
Features
The README section "Features" states: - ss-local from shadowsocks-libev 3.2.5. - Support SIP003 plugins. Embed kcptun , simple-obfs and v2ray-plugin . - Could update PAC by download GFW List from GitHub. - Share your server profiles by qrcode or url. - Import server profile urls from pasteboard. - Import server profile by scan QRCode on screen. - Custom rules for PAC. - Support for AEAD Ciphers - HTTP Proxy by privoxy
Difference from original ShadowsocksX
The README section "Difference from original ShadowsocksX" states: ss-local is run as a background service through launchd, not as an in-app process. So after you quit the app, the ss-local might be still running.
Editorial conclusion
The repository README is the source for this review. It does not replace a local installation or an independent test.
Community notes