{"id":13560954,"url":"https://github.com/nojsja/shadowsocks-electron","last_synced_at":"2025-10-04T16:32:14.119Z","repository":{"id":37428226,"uuid":"413282746","full_name":"nojsja/shadowsocks-electron","owner":"nojsja","description":"Shadowsocks GUI application made for Ubuntu / Mac / Win users and powered by Electron.","archived":true,"fork":false,"pushed_at":"2023-06-13T13:57:35.000Z","size":60175,"stargazers_count":334,"open_issues_count":22,"forks_count":58,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-01-23T12:33:49.727Z","etag":null,"topics":["electron","electron-ssr","shadowsocks","shadowsocks-electron","shadowsocks-gui","shadowsocks-libev","shadowsocks-libev-gui","shadowsocksr","ssr","ssr-client"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nojsja.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-04T05:14:36.000Z","updated_at":"2025-01-15T10:22:47.000Z","dependencies_parsed_at":"2024-06-19T03:07:46.038Z","dependency_job_id":null,"html_url":"https://github.com/nojsja/shadowsocks-electron","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/nojsja/shadowsocks-electron","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nojsja%2Fshadowsocks-electron","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nojsja%2Fshadowsocks-electron/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nojsja%2Fshadowsocks-electron/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nojsja%2Fshadowsocks-electron/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nojsja","download_url":"https://codeload.github.com/nojsja/shadowsocks-electron/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nojsja%2Fshadowsocks-electron/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278342743,"owners_count":25971396,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["electron","electron-ssr","shadowsocks","shadowsocks-electron","shadowsocks-gui","shadowsocks-libev","shadowsocks-libev-gui","shadowsocksr","ssr","ssr-client"],"created_at":"2024-08-01T13:00:51.135Z","updated_at":"2025-10-04T16:32:09.044Z","avatar_url":"https://github.com/nojsja.png","language":"TypeScript","readme":"[![Build \u0026 Release](https://github.com/nojsja/shadowsocks-electron/actions/workflows/publish.yml/badge.svg)](https://github.com/nojsja/shadowsocks-electron/actions/workflows/publish.yml) ![GitHub repo size](https://img.shields.io/github/repo-size/nojsja/shadowsocks-electron) ![GitHub](https://img.shields.io/github/license/nojsja/shadowsocks-electron)\n\n![GitHub issues](https://img.shields.io/github/issues/nojsja/shadowsocks-electron) ![GitHub contributors](https://img.shields.io/github/contributors-anon/nojsja/shadowsocks-electron)\n\n```txt\n\n███████╗██╗  ██╗ █████╗ ██████╗  ██████╗ ██╗    ██╗███████╗ ██████╗  ██████╗██╗  ██╗███████╗      ███████╗██╗     ███████╗ ██████╗████████╗██████╗  ██████╗ ███╗   ██╗\n██╔════╝██║  ██║██╔══██╗██╔══██╗██╔═══██╗██║    ██║██╔════╝██╔═══██╗██╔════╝██║ ██╔╝██╔════╝      ██╔════╝██║     ██╔════╝██╔════╝╚══██╔══╝██╔══██╗██╔═══██╗████╗  ██║\n███████╗███████║███████║██║  ██║██║   ██║██║ █╗ ██║███████╗██║   ██║██║     █████╔╝ ███████╗█████╗█████╗  ██║     █████╗  ██║        ██║   ████****██╔╝██║   ██║██╔██╗ ██║\n╚════██║██╔══██║██╔══██║██║  ██║██║   ██║██║███╗██║╚════██║██║   ██║██║     ██╔═██╗ ╚════██║╚════╝██╔══╝  ██║     ██╔══╝  ██║        ██║   ██╔══██╗██║   ██║██║╚****██╗██║\n███████║██║  ██║██║  ██║██████╔╝╚██████╔╝╚███╔███╔╝███████║╚██████╔╝╚██████╗██║  ██╗███████║      ███████╗███████╗███████╗╚██████╗   ██║   ██║  ██║╚██████╔╝██║ ╚████║\n╚══════╝╚═╝  ╚═╝╚═╝  ╚═╝╚═════╝  ╚═════╝  ╚══╝╚══╝ ╚══════╝ ╚═════╝  ╚═════╝╚═╝  ╚═╝╚══════╝      ╚══════╝╚══════╝╚══════╝ ╚═════╝   ╚═╝   ╚═╝  ╚═╝ ╚═════╝ ╚═╝  ╚═══╝\n```\n\n[● Telegram Channel](https://t.me/shadowsocks_electron)\n\n## I. Shadowsocks Electron\n\nShadowsocks GUI client with cross-platform desktop support powered by Electron⚛️, made specially for Linux / Windows users.\n\n⚠️  For Mac OS users, If you receive system notification about **\"The app is broken\"** when start the client, Run following  command in terminal to fix that: **`sudo xattr -r -d com.apple.quarantine /Applications/Shadowsocks\\ Electron.app`**.\n\n### ➣ Tested on:\n\n- Ubuntu20.4/21.04/22.04 (amd64)\n- Ubuntu22.10 (arm64)\n- MacOS Catalina (x64)\n- MacOS Monterey (arm64/x64)\n- Windows10/11 (x64)\n\n### ➣ Future test plan\n\n- Linux Kali/Manjaro (x64)\n- Windows7/8 (x64/arm64)\n- MacOS Big Sur/Mojave (x64/arm64)\n\n## II. Features\n\n### ➣ Supported\n\n- __SS / SSR__ Protocol\n- __PAC__ Mode\n  - Auto proxy mode for browser that use [GFWList](https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt) as default rules.\n  - Allow custom rules.\n- __Global__ Mode\n  - Global socks5 proxy for browser.\n- __Manual__ Mode\n  - Get some tools like SwitchOmega to enable browser proxy on this mode.\n- __HTTP(S)__ Proxy\n  - On Windows, commands for terminal proxy(port 1095 as default):\n    - `$env:HTTPS_PROXY=\"http://127.0.0.1:1095\"` (powershell)\n    - `$env:HTTP_PROXY=\"http://127.0.0.1:1095\"` (powershell)\n    - `set http_proxy=http://127.0.0.1:1095` (cmd)\n    - `set https_proxy=http://127.0.0.1:1095` (cmd)\n  - On Linux/MacOS, commands for terminal proxy:\n    - `export http_proxy=\"127.0.0.1:1095\"`\n    - `export https_proxy=\"127.0.0.1:1095\"`\n    - Some tools like `proxychains` is deep recommended.\n- ACL (access control list)\n- Nodes Load-Balancing Mode\n- Clipboard / QR-code Import\n- Subscription Import\n- Language Detecting And Switching (zh-CN / en-US / ru-RU)\n- Configuration Backup / Recovery\n- Dark / Light Mode\n- Auto Start\n- Server Share\n- Activity Logs\n- [Process Manager](https://github.com/nojsja/electron-re)\n\n### ➣ In Testing\n\n- AEAD ciphers\n- SIP003 plugins (v2ray-plugin,kcptun and more)\n\n### ➣ Comming Soon\n\n- Tunnel Mode\n\n## III. Problems\n\n- QRCode-Import may not work on some devices.\n- Linux without Gnome-desktop may not work, working for that.\n- Snap package for Linux has some abnormal behavior.\n\n## IV. Supported Platforms \u0026 Arch\n\n![system](https://img.shields.io/badge/system-win%20%7C%20mac%20%7C%20linux-green)\n\n\u003e More architectures will be supported if necessary, just give me an issue.\n\n- Ubuntu\n  - deb `x64/x86/arm64`\n  - AppImage `x64/x86/arm64`\n  - snap `x64`\n- MacOS\n  - dmg `x64/arm64`\n  - zip `x64/arm64`\n- Windows\n  - exe `x64/x86`\n  - zip `x64/x86`\n\n## V. Screenshots\n\n### Home Page\n\n![main.png](./assets/main.png)\n\n### Dark Mode\n\n![dark.png](./assets/dark.png)\n\n### Fixed Menu\n\n![fixed_menu.png](./assets/fixed_menu.png)\n\n### Server Add\n\n![add.png](./assets/add.png)\n\n### Context Menu\n\n![context_menu.png](./assets/context_menu.png)\n\n### Server Edit\n\n![edit.png](./assets/edit.png)\n\n### Server Share\n\n![share.png](./assets/share.png)\n\n## VI. Downloads\n\n- GitHub Releases\n  - ![statistics](https://img.shields.io/github/downloads/nojsja/shadowsocks-electron/total?style=plastic)\n  - [↪ releases page ](https://github.com/nojsja/shadowsocks-electron/releases/latest)\n\n- ElectronJs Website\n  - [↪ home page ](https://www.electronjs.org/apps/shadowsocks-electron)\n\n- Snapcraft Store (linux)\n  - [![shadowsocks-electron](https://snapcraft.io/shadowsocks-electron/badge.svg)](https://snapcraft.io/shadowsocks-electron)\n  - [↪ home page ](https://snapcraft.io/shadowsocks-electron)\n\n## VII. Plugins Downloads\n\u003e not necessary, just for some advanced users.\n\n- __kcptun__\n  - effect: Use the plugin for ss server speed up. You must install it on you system first and enable it on ss server configuration.\n  - [↪ kcptun repo releases](https://github.com/shadowsocks/kcptun/releases/)\n  - install: Download a certain version plugin, unpack and rename it to `kcptun`, then put the file into system dir (such as `/usr/bin/`) on unix like systems. OR you may put the file into `plugins dir` on Windows (check \"Open Plugins Directory\" button from settings page).\n\n- __v2ray-plugin__\n  - effect: Use the plugin for traffic obfuscation. You must install it on you system first and enable it on ss server configuration.\n  - [↪ v2ray-plugin repo releases](https://github.com/nojsja/v2ray-plugin/releases)\n  - install: Download a certain version plugin, unpack and rename it to  `v2ray-plugin`, then put the file into system dir (such as `/usr/bin/`) on unix like systems. OR you may put the file into `plugins dir` on Windows (check \"Open Plugins Directory\" button from settings page).\n\n## VIII. Recommended ACL Files\n\n**1. Download ACL file and saved it to local directory.**\n\n[\u003e\u003e Github repo - SuperAcl](https://github.com/Windelight/SuperACL.git)\n- [inchina.acl](https://raw.githubusercontent.com/Windelight/SuperACL/master/inchina.acl): Proxy only sites blocked by the firewall.\n- [inforeign.acl](https://raw.githubusercontent.com/Windelight/SuperACL/master/inforeign.acl): Proxy the sites in china which restricted access to overseas.\n\n**2. Enable ACL Mode and load the file on settings page of client.**\n\n## IX. Why?\n\n- The official qt-version app - [`shadowsocks-qt5`](https://github.com/shadowsocks/shadowsocks-qt5) has been deprecated, which has an old interface but still working.\n- Only [`Shadowsocks-libev`](https://github.com/shadowsocks/shadowsocks-libev) and [`Shadowsocks for Android`](https://github.com/shadowsocks/shadowsocks-android) support ACL (bypass China IPs, etc.)\n\n This project was heavily inspired by [shadowsocks/ShadowsocksX-NG](https://github.com/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.\n\nIt also uses Electron to bring the most powerful cross-platform desktop support with great developing experience.\n\n## X. Development\n\n### 1. Env\n\n- Node@^`14.18`\n- Ubuntu18.04 or higher version\n- Mac catalina or other versions (works in most recent versions in theory)\n- Windows 10 or higher version\n\n### 2. Prepare\n\n\u003e 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.\n\n- __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.\n- __Ubuntu__ developers can install `shadowsocks-libev` with apt manager.\n\n```bash\n# for ubuntu developers\n$: sudo apt install shadowsocks-libev\n$: sudo snap install multipass\n# for mac developers\n$: brew install shadowsocks-libev\n\n# proxy env set (if your local machine support)\nexport HTTPS_PROXY=http://127.0.0.1:\u003cport\u003e\nexport HTTP_PROXY=http://127.0.0.1:\u003cport\u003e\n```\n\n### 3. Run commands in terminal\n\n```bash\n# [01]clone\n$: git clone https://github.com/nojsja/shadowsocks-electron.git\n$: cd shadowsocks-electron\n\n# for china developers\n$: npm config set electron_mirror http://npm.taobao.org/mirrors/electron/\n\n# [02]npm\n$: npm i -g yarn\n$: npm i\n\n# [03]run scripts/download.js for env prepare\n$: cd scripts\n$: node download.js\n\n# for ubuntu developers\n$: cp pac/gfwlist.txt ~/.config/shadowsocks-electron/pac/\n# for mac developers\n$: cp pac/gfwlist.txt ~/Library/Application\\ Support/shadowsocks-electron/pac/\n\n# [04]start\n$: npm start\n```\n\n## XI. Mention\n\n\u003e 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.\n\n## XII. Credit\n\n- [tindy2013/shadowsocks-static-binaries](https://github.com/tindy2013/shadowsocks-static-binaries)\n- [robertying/shadowsocks-electron](https://github.com/robertying/shadowsocks-electron)\n- [shadowsocks/shadowsocks-libev](https://github.com/shadowsocks/shadowsocks-libev)\n- [shadowsocks/ShadowsocksX-NG](https://github.com/shadowsocks/ShadowsocksX-NG)\n","funding_links":[],"categories":["TypeScript","Apps"],"sub_categories":["Open Source"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnojsja%2Fshadowsocks-electron","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnojsja%2Fshadowsocks-electron","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnojsja%2Fshadowsocks-electron/lists"}