https://github.com/apocelipes/schannel-qt5
A GUI client of schannel powered by therecipe/qt and golang
https://github.com/apocelipes/schannel-qt5
client-side crawler go golang goqt linux qcharts qt5
Last synced: 2 months ago
JSON representation
A GUI client of schannel powered by therecipe/qt and golang
- Host: GitHub
- URL: https://github.com/apocelipes/schannel-qt5
- Owner: apocelipes
- License: mit
- Created: 2018-09-19T15:34:22.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2019-04-02T05:36:43.000Z (over 6 years ago)
- Last Synced: 2025-04-19T17:58:13.792Z (3 months ago)
- Topics: client-side, crawler, go, golang, goqt, linux, qcharts, qt5
- Language: Go
- Homepage:
- Size: 1.4 MB
- Stars: 34
- Watchers: 3
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## schannel-qt5
A QT based GUI client for [schannel](https://schannel.net/) - written in Golang### Features:
- clear data usage display
- quickly view service information
- supports lots of user settings
- simply & easy to use
- freely configure the ssr client program
- use charts to show data more clearly### Installation
At first we need to install [therecipe/qt](https://github.com/therecipe/qt)Then:
```bash
go get -u github.com/astaxie/beego/orm
go get -u github.com/mattn/go-sqlite3
go get -u github.com/PuerkitoBio/goquery
cd $GOPATH/src
git clone 'https://github.com/apocelipes/schannel-qt5'
# install country flags info
git clone 'https://github.com/matiassingers/emoji-flags' schannel-qt5/emoji-flags
cd schannel-qt5/widgets
qtmoc && qtrcc
cd .. && go build
```Note that schannel-qt5 needs golang >= go1.12.
Because of the flaw in QFont on x11, schannel-qt5 can't set its own font without fontconfig, so you need to install the font "NotoColorEmoji" to support emoji.
Now you can enjoy schannel-qt5!
### Screenshots
login:
logging:

invoices view:


select nodes:

service info & client switch:


user settings:

data charts:

### important configurations:
- `ssrclient.json`: Configure the behavior of the ssr client.
- `~/.local/share/schannel-qt5.json`: Configure the behavior of the schannel-qt5.
- `~/.local/share/schannel-users.db`: Store encrypted user information and traffic usage records (traffic records for chart display).
- `~/.local/share/data/schannel-qt5/GeoIP/`: Store the GeoIP database.### Options in schannel-qt5.json:
- `proxy_url`: The proxy server address used by schannel-qt5, or empty if you don't use a proxy.
- `log_file`: schannel-qt5's log file, uses stdout if it is empty.
- `ssr_node_config_path`: The path of a ssr node config file.
- `ssr_client_config_path"`: The path of ssr client config file.
- `ssr_bin`: The path of ssr client bin.### Todo:
- support system tray icon
- more clearly document
- more testsWelcome feedback questions and submit PRs,
I am looking forward to working with you.