Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/MHSanaei/3x-ui.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMHSanaei <mc.sanaei@gmail.com>2023-02-09 22:18:06 +0300
committerMHSanaei <mc.sanaei@gmail.com>2023-02-09 22:18:06 +0300
commitb73e4173a3c1e69e02ad6b4e3b43e425e57a5be9 (patch)
treed95d2f5e903d97082e11eb9f9023c165b1bde388
3x-ui
-rw-r--r--.github/dependabot.yml10
-rw-r--r--.github/workflows/release.yml146
-rw-r--r--.gitignore13
-rw-r--r--LICENSE674
-rw-r--r--README.md41
-rw-r--r--config/config.go50
-rw-r--r--config/name1
-rw-r--r--config/version1
-rw-r--r--database/db.go104
-rw-r--r--database/model/model.go81
-rw-r--r--go.mod55
-rw-r--r--go.sum206
-rw-r--r--install.sh175
-rw-r--r--logger/logger.go58
-rw-r--r--main.go302
-rw-r--r--media/1.pngbin0 -> 31758 bytes
-rw-r--r--media/2.pngbin0 -> 39368 bytes
-rw-r--r--media/3.pngbin0 -> 26193 bytes
-rw-r--r--media/4.pngbin0 -> 35052 bytes
-rw-r--r--util/common/err.go29
-rw-r--r--util/common/format.go21
-rw-r--r--util/common/multi_error.go30
-rw-r--r--util/common/stringUtil.go9
-rw-r--r--util/context.go12
-rw-r--r--util/json_util/json.go24
-rw-r--r--util/random/random.go43
-rw-r--r--util/reflect_util/reflect.go21
-rw-r--r--util/sys/a.s0
-rw-r--r--util/sys/psutil.go8
-rw-r--r--util/sys/sys_darwin.go23
-rw-r--r--util/sys/sys_linux.go70
-rw-r--r--v2ui/db.go28
-rw-r--r--v2ui/models.go41
-rw-r--r--v2ui/v2ui.go51
-rw-r--r--web/assets/ant-design-vue@1.7.2/antd-with-locales.min.js3
-rw-r--r--web/assets/ant-design-vue@1.7.2/antd.less2
-rw-r--r--web/assets/ant-design-vue@1.7.2/antd.min.css8
-rw-r--r--web/assets/ant-design-vue@1.7.2/antd.min.js2
-rw-r--r--web/assets/axios/axios.min.js8
-rw-r--r--web/assets/base64/base64.min.js1
-rw-r--r--web/assets/clipboard/clipboard.min.js7
-rw-r--r--web/assets/css/custom.css152
-rw-r--r--web/assets/element-ui@2.15.0/theme-chalk/display.css1
-rw-r--r--web/assets/js/axios-init.js12
-rw-r--r--web/assets/js/langs.js84
-rw-r--r--web/assets/js/model/models.js185
-rw-r--r--web/assets/js/model/xray.js1819
-rw-r--r--web/assets/js/util/common.js57
-rw-r--r--web/assets/js/util/date-util.js147
-rw-r--r--web/assets/js/util/utils.js291
-rw-r--r--web/assets/moment/moment.min.js1
-rw-r--r--web/assets/qrcode/qrious.min.js5
-rw-r--r--web/assets/qs/qs.min.js1
-rw-r--r--web/assets/uri/URI.min.js93
-rw-r--r--web/assets/vue@2.6.12/vue.common.dev.js11959
-rw-r--r--web/assets/vue@2.6.12/vue.common.js5
-rw-r--r--web/assets/vue@2.6.12/vue.common.prod.js6
-rw-r--r--web/assets/vue@2.6.12/vue.esm.browser.min.js6
-rw-r--r--web/assets/vue@2.6.12/vue.esm.js11993
-rw-r--r--web/assets/vue@2.6.12/vue.min.js6
-rw-r--r--web/assets/vue@2.6.12/vue.runtime.common.dev.js8423
-rw-r--r--web/assets/vue@2.6.12/vue.runtime.common.js5
-rw-r--r--web/assets/vue@2.6.12/vue.runtime.common.prod.js6
-rw-r--r--web/assets/vue@2.6.12/vue.runtime.esm.js8451
-rw-r--r--web/assets/vue@2.6.12/vue.runtime.js8429
-rw-r--r--web/assets/vue@2.6.12/vue.runtime.min.js6
-rw-r--r--web/controller/api.go48
-rw-r--r--web/controller/base.go33
-rw-r--r--web/controller/inbound.go136
-rw-r--r--web/controller/index.go84
-rw-r--r--web/controller/server.go85
-rw-r--r--web/controller/setting.go88
-rw-r--r--web/controller/util.go97
-rw-r--r--web/controller/xui.go42
-rw-r--r--web/entity/entity.go82
-rw-r--r--web/global/global.go22
-rw-r--r--web/html/common/head.html17
-rw-r--r--web/html/common/js.html22
-rw-r--r--web/html/common/prompt_modal.html67
-rw-r--r--web/html/common/qrcode_modal.html120
-rw-r--r--web/html/common/text_modal.html58
-rw-r--r--web/html/login.html123
-rw-r--r--web/html/xui/common_sider.html73
-rw-r--r--web/html/xui/component/inbound_info.html94
-rw-r--r--web/html/xui/component/setting.html32
-rw-r--r--web/html/xui/form/inbound.html106
-rw-r--r--web/html/xui/form/protocol/dokodemo.html17
-rw-r--r--web/html/xui/form/protocol/http.html10
-rw-r--r--web/html/xui/form/protocol/shadowsocks.html19
-rw-r--r--web/html/xui/form/protocol/socks.html24
-rw-r--r--web/html/xui/form/protocol/trojan.html141
-rw-r--r--web/html/xui/form/protocol/vless.html155
-rw-r--r--web/html/xui/form/protocol/vmess.html119
-rw-r--r--web/html/xui/form/sniffing.html16
-rw-r--r--web/html/xui/form/stream/stream_grpc.html7
-rw-r--r--web/html/xui/form/stream/stream_http.html12
-rw-r--r--web/html/xui/form/stream/stream_kcp.html38
-rw-r--r--web/html/xui/form/stream/stream_quic.html24
-rw-r--r--web/html/xui/form/stream/stream_settings.html45
-rw-r--r--web/html/xui/form/stream/stream_tcp.html86
-rw-r--r--web/html/xui/form/stream/stream_ws.html33
-rw-r--r--web/html/xui/form/tls_settings.html60
-rw-r--r--web/html/xui/inbound_info_modal.html61
-rw-r--r--web/html/xui/inbound_modal.html178
-rw-r--r--web/html/xui/inbounds.html457
-rw-r--r--web/html/xui/inbounds_client_row.html22
-rw-r--r--web/html/xui/index.html334
-rw-r--r--web/html/xui/setting.html196
-rw-r--r--web/job/check_inbound_job.go33
-rw-r--r--web/job/check_xray_running_job.go25
-rw-r--r--web/job/stats_notify_job.go248
-rw-r--r--web/job/xray_traffic_job.go38
-rw-r--r--web/network/auto_https_listener.go21
-rw-r--r--web/network/autp_https_conn.go67
-rw-r--r--web/service/config.json75
-rw-r--r--web/service/inbound.go417
-rw-r--r--web/service/panel.go26
-rw-r--r--web/service/server.go302
-rw-r--r--web/service/setting.go303
-rw-r--r--web/service/user.go73
-rw-r--r--web/service/xray.go163
-rw-r--r--web/session/session.go46
-rw-r--r--web/translation/translate.en_US.toml192
-rw-r--r--web/translation/translate.fa_IR.toml191
-rw-r--r--web/translation/translate.zh_Hans.toml191
-rw-r--r--web/web.go432
-rw-r--r--x-ui.service15
-rw-r--r--x-ui.sh630
-rw-r--r--xray/client_traffic.go12
-rw-r--r--xray/config.go62
-rw-r--r--xray/inbound.go41
-rw-r--r--xray/process.go313
-rw-r--r--xray/traffic.go8
133 files changed, 61908 insertions, 0 deletions
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
new file mode 100644
index 00000000..6e4fd399
--- /dev/null
+++ b/.github/dependabot.yml
@@ -0,0 +1,10 @@
+version: 2
+updates:
+ - package-ecosystem: "gomod" # See documentation for possible values
+ directory: "/" # Location of package manifests
+ schedule:
+ interval: "daily"
+ - package-ecosystem: "github-actions"
+ directory: "/"
+ schedule:
+ interval: "daily"
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
new file mode 100644
index 00000000..db2c6cbc
--- /dev/null
+++ b/.github/workflows/release.yml
@@ -0,0 +1,146 @@
+name: Release 3X-ui
+on:
+ push:
+ tags:
+ - "*"
+ workflow_dispatch:
+jobs:
+ release:
+ runs-on: ubuntu-20.04
+ outputs:
+ upload_url: ${{ steps.create_release.outputs.upload_url }}
+ steps:
+ - name: Create Release
+ id: create_release
+ uses: actions/create-release@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ tag_name: ${{ github.ref }}
+ release_name: ${{ github.ref }}