GithubHelp home page GithubHelp logo

ericwln / shadowsocks-electron Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nojsja/shadowsocks-electron

0.0 0.0 0.0 16.23 MB

Shadowsocks GUI application made for Ubuntu / Mac / Win users and powered by Electron.

License: GNU General Public License v3.0

JavaScript 23.03% TypeScript 76.27% CSS 0.12% HTML 0.58%

shadowsocks-electron's Introduction

GitHub repo size Lines of code GitHub

GitHub issues GitHub contributors

███████╗██╗  ██╗ █████╗ ██████╗  ██████╗ ██╗    ██╗███████╗ ██████╗  ██████╗██╗  ██╗███████╗      ███████╗██╗     ███████╗ ██████╗████████╗██████╗  ██████╗ ███╗   ██╗
██╔════╝██║  ██║██╔══██╗██╔══██╗██╔═══██╗██║    ██║██╔════╝██╔═══██╗██╔════╝██║ ██╔╝██╔════╝      ██╔════╝██║     ██╔════╝██╔════╝╚══██╔══╝██╔══██╗██╔═══██╗████╗  ██║
███████╗███████║███████║██║  ██║██║   ██║██║ █╗ ██║███████╗██║   ██║██║     █████╔╝ ███████╗█████╗█████╗  ██║     █████╗  ██║        ██║   ████****██╔╝██║   ██║██╔██╗ ██║
╚════██║██╔══██║██╔══██║██║  ██║██║   ██║██║███╗██║╚════██║██║   ██║██║     ██╔═██╗ ╚════██║╚════╝██╔══╝  ██║     ██╔══╝  ██║        ██║   ██╔══██╗██║   ██║██║╚****██╗██║
███████║██║  ██║██║  ██║██████╔╝╚██████╔╝╚███╔███╔╝███████║╚██████╔╝╚██████╗██║  ██╗███████║      ███████╗███████╗███████╗╚██████╗   ██║   ██║  ██║╚██████╔╝██║ ╚████║
╚══════╝╚═╝  ╚═╝╚═╝  ╚═╝╚═════╝  ╚═════╝  ╚══╝╚══╝ ╚══════╝ ╚═════╝  ╚═════╝╚═╝  ╚═╝╚══════╝      ╚══════╝╚══════╝╚══════╝ ╚═════╝   ╚═╝   ╚═╝  ╚═╝ ╚═════╝ ╚═╝  ╚═══╝

Shadowsocks Electron

Test on Ubuntu20.4/21.04/22.04 (amd64) ● MacOS catalina (x64) ● Windows 10/11 (x64)

Shadowsocks GUI client with cross-platform desktop support powered by Electron⚛️, made specially for Linux / Windows users.

Features

➣ Supported

  • SS / SSR Protocol
  • PAC Mode (GFWList)
  • Global Mode (socks proxy)
  • Manual Mode (no system-wide proxy set)
  • HTTP(S) Proxy
  • ACL (access control list)
  • Nodes Load-Balancing Mode
  • Clipboard / QR-code Import
  • Subscription Import
  • Language Detecting And Switching (zh-CN / en-US)
  • Configuration Backup / Recovery
  • Dark / Light Mode
  • Auto Start
  • Server Share
  • Activity Logs

➣ In Testing

  • AEAD ciphers
  • SIP003 plugins (v2ray & kcptun)

➣ Comming Soon

  • v2ray-plugin

Supported Platforms & Arch

system

More architecture will be supported if necessary, just give me an issue.

  • Ubuntu
    • deb x64/x86/arm64
    • AppImage x64/x86/arm64
    • snap x64
  • MacOS
    • dmg x64
  • Windows
    • exe x64
    • zip x64/x86

Screenshots

Main Page

main.png

Dark Mode

dark.png

Fixed Menu

fixed_menu.png

Server Add

add.png

Context Menu

context_menu.png

Server Edit

edit.png

Server Share

share.png

Downloads

Plugins Downloads

not necessary, just for some advanced users.

  • kcptun

    • effect: Use the plugin for ss server speed up. You must install it on you system first and enable it on ss server configuration.
    • ↪ kcptun repo releases
    • install: Download the correct version, unpack and rename it to kcptun, then put the file into system dir (such as /usr/local/bin/) on unix like systems. OR you may need to configure system variables on windows.
  • v2ray-plugin

    • effect: Use the plugin for traffic obfuscation. You must install it on you system first and enable it on ss server configuration.
    • ↪ v2ray-plugin repo releases
    • install: Download the correct version, unpack and rename it to v2ray-plugin, then put the file into system dir (such as /usr/local/bin/) on unix like systems. OR You may need to configure system variables on windows.

Recommended ACL Files

1. Download ACL file and saved it to local directory.

>> Github repo - SuperAcl

  • inchina.acl: Proxy only sites blocked by the firewall.
  • inforeign.acl: Proxy the sites in china which restricted access to overseas.

2. Enable ACL Mode and load the file on settings page of client.

Why?

This project was heavily inspired by shadowsocks/ShadowsocksX-NG, which uses local Shadowsocks-libev binary to avoid complex integration with native C code. This means it can always use the latest Shadowsocks-libev version.

It also uses Electron to bring the most powerful cross-platform desktop support with great developing experience.

Development

1. Env

  • Node@^14.18
  • Ubuntu18.04 or higher version
  • Mac catalina or other versions (works in most recent versions in theory)
  • Windows 10 or higher version

2. Prepare

The step is not necessary, there are some buildin ssr/ss executable files provided in bin dir, Only do this when you want to use external bin for test/dev.

  • Mac developers need to install shadowsocks-libev at first, use command here: brew install shadowsocks-libev. For china users, if brew is not installed, run this in terminal: /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" to install brew.
  • Ubuntu developers can install shadowsocks-libev with apt manager.
# for ubuntu developers
$: sudo apt install shadowsocks-libev
$: sudo snap install multipass
# for mac developers
$: brew install shadowsocks-libev

# proxy env set (if your local machine support)
export HTTPS_PROXY=http://127.0.0.1:<port>
export HTTP_PROXY=http://127.0.0.1:<port>

3. Run commands in terminal

# [01]clone
$: git clone https://github.com/nojsja/shadowsocks-electron.git
$: cd shadowsocks-electron

# for china developers
$: npm config set electron_mirror http://npm.taobao.org/mirrors/electron/

# [02]npm
$: npm i -g yarn
$: npm i

# [03]run scripts/download.js for env prepare
$: cd scripts
$: node download.js

# for ubuntu developers
$: cp pac/gfwlist.txt ~/.config/shadowsocks-electron/pac/
# for mac developers
$: cp pac/gfwlist.txt ~/Library/Application\ Support/shadowsocks-electron/pac/

# [04]start
$: npm start

Mention

The repo is cloned from robertying/shadowsocks-electron which is no longer maintained. I create a new repo based on that in order to be found in github search list.

Credit

shadowsocks-electron's People

Contributors

nojsja avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.