schannel-qt5

A GUI client of schannel powered by therecipe/qt and golang

Github stars Tracking Chart

schannel-qt5

A QT based GUI client for schannel - 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

Then:

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:

login

logging:

logging

invoices view:

invoices

invoiceview

select nodes:

nodes

service info & client switch:

client-turn-off

client-turn-off

user settings:

settings

data charts:

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 tests

Welcome feedback questions and submit PRs,

I am looking forward to working with you.

Main metrics

Overview
Name With Ownerapocelipes/schannel-qt5
Primary LanguageGo
Program languageGo (Language Count: 2)
Platform
License:MIT License
所有者活动
Created At2018-09-19 15:34:22
Pushed At2019-04-02 05:36:43
Last Commit At2019-04-02 13:35:56
Release Count0
用户参与
Stargazers Count34
Watchers Count3
Fork Count6
Commits Count157
Has Issues Enabled
Issues Count0
Issue Open Count0
Pull Requests Count0
Pull Requests Open Count0
Pull Requests Close Count0
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private