Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 16 additions & 3 deletions docs/doc/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ First, you need to pick a shadowsocks server and client implementation. Any impl
- [shadowsocks-libev][ss-libev]: Lightweight C implementation for embedded devices and low end boxes. Very small footprint (several megabytes) for thousands of connections.
- [go-shadowsocks2][go-ss2]: Go implementation focusing on core features and code reusability.
- [shadowsocks-rust][ss-rust]: A rust port of shadowsocks.
- [shadowsocks-go][ss-go]: Fast and efficient Go implementation with support for extensible routing rules.


### Feature comparison
Expand All @@ -21,6 +22,7 @@ First, you need to pick a shadowsocks server and client implementation. Any impl
<th><a href="https://github.com/shadowsocks/shadowsocks-libev">ss-libev</a></th>
<th><a href="https://github.com/shadowsocks/go-shadowsocks2">go-ss2</a></th>
<th><a href="https://github.com/shadowsocks/shadowsocks-rust">ss-rust</a></th>
<th><a href="https://github.com/database64128/shadowsocks-go">ss-go</a></th>
</tr>
</thead>
<tbody>
Expand All @@ -30,69 +32,79 @@ First, you need to pick a shadowsocks server and client implementation. Any impl
<td>✓</td>
<td>✗</td>
<td>✓</td>
<td>✓</td>
</tr>
<tr>
<td><a href="https://github.com/shadowsocks/shadowsocks/wiki/Configure-Multiple-Users">Multiuser</a></td>
<td>✓</td>
<td>✓</td>
<td>✗</td>
<td>✓</td>
<td>✓</td>
</tr>
<tr>
<td><a href="https://github.com/shadowsocks/shadowsocks/wiki/Manage-Multiple-Users">Management API</a></td>
<td>✓</td>
<td>✓</td>
<td>✗</td>
<td>✓</td>
<td>REST API</td>
</tr>
<tr>
<td>Redirect mode</td>
<td>✗</td>
<td>✓</td>
<td>✓</td>
<td>✓</td>
<td>✓</td>
</tr>
<tr>
<td>Tunnel mode</td>
<td>✓</td>
<td>✓</td>
<td>✓</td>
<td>✓</td>
<td>✓</td>
</tr>
<tr>
<td>UDP Relay</td>
<td>✓</td>
<td>✓</td>
<td>✓</td>
<td>✓</td>
<td>✓</td>
</tr>
<tr>
<td><a href="https://en.wikipedia.org/wiki/Multipath_TCP">MPTCP</a></td>
<td>✗</td>
<td>✓</td>
<td>✗</td>
<td>✓</td>
<td>✓</td>
</tr>
<tr>
<td><a href="aead.html">AEAD ciphers</a></td>
<td>2017</td>
<td>2017</td>
<td>2017</td>
<td>✓</td>
<td>✓</td>
<td>✓</td>
<td>✓</td>
<td>2022</td>
</tr>
<tr>
<td><a href="sip003.html">Plugin</a></td>
<td>✗</td>
<td>✓</td>
<td>✗</td>
<td>✓</td>
<td>✗</td>
</tr>
<tr>
<td><a href="https://github.com/shadowsocks/shadowsocks-org/issues/180">Plugin UDP (Experimental)</a></td>
<td>✗</td>
<td>✗</td>
<td>✗</td>
<td>✓</td>
<td>✗</td>
</tr>
</tbody>
</table>
Expand Down Expand Up @@ -171,6 +183,7 @@ First, you need to pick a shadowsocks server and client implementation. Any impl
[ss-libev]: https://github.com/shadowsocks/shadowsocks-libev
[go-ss2]: https://github.com/shadowsocks/go-shadowsocks2
[ss-rust]: https://github.com/shadowsocks/shadowsocks-rust
[ss-go]: https://github.com/database64128/shadowsocks-go
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider forking to shadowsocks org first? You can follow go-ss2's way to maintain your repo.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Given previously what happened to my membership in the organization, I'm not interested in having the project living in the organization. If this is a hard requirement for being listed in the page, please close the PR.

You can follow go-ss2's way to maintain your repo.

Because of how Go's import paths work, there's no good way of keeping multiple forks of a Go project alive, unless you enjoy resolving merge conflicts for every single commit. go-ss2's original repo outside the organization seems unmaintained.

[ss-win]: https://github.com/shadowsocks/shadowsocks-csharp
[ssx-ng]: https://github.com/shadowsocks/ShadowsocksX-NG
[ss-qt5]: https://github.com/shadowsocks/shadowsocks-qt5
Expand Down