This repository implements a tiny-go shadowsocks client so it can be used as a WATER dialer
- TinyGo - It must be on version 0.31.2
For generating a debug version, run:
make debug
For generating a release version, run:
make release
If you need to add a new field that should be loaded from the config file, you can add it to the Config
struct in config/config.go
and generate the tinyjson file with:
make config
make test
For testing the generated WASM with the integration tests, you must start a sing-box shadowsocks inbound so we can try to make a request
sing-box shadowsocks inbound example
{
"log": {
"level": "info",
"output": "stdout"
},
"inbounds": [
{
"type": "shadowsocks",
"tag": "ss-in",
"listen": "127.0.0.1",
"listen_port": 8388,
"method": "chacha20-ietf-poly1305",
"password": "8JCsPssfgS8tiRwiMlhARg==",
"network": "tcp"
}
],
"outbounds": [
{
"type": "direct",
"tag": "direct"
}
]
}
After the inbound server is listening, you should be able to run the integration tests with make integration-test