mirror of
https://github.com/acepanel/panel.git
synced 2026-02-04 10:17:17 +08:00
feat: hello AcePanel
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
|
||||
## Code of Conduct
|
||||
|
||||
The Rat Panel complies with the industry's common code of conduct. Any breach of the Code of Conduct can be reported to us:
|
||||
The AcePanel complies with the industry's common code of conduct. Any breach of the Code of Conduct can be reported to us:
|
||||
|
||||
- Participants will be tolerant of opposing views.
|
||||
- Participants must ensure that their language and actions are free of personal attacks and disparaging personal remarks.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
[<a href="README.md">简体中文</a>] | [English]
|
||||
</p>
|
||||
|
||||
<h1 align="center" style="font-size: 40px">Rat Panel</h1>
|
||||
<h1 align="center" style="font-size: 40px">AcePanel</h1>
|
||||
|
||||
<div align="center">
|
||||
|
||||
@@ -44,7 +44,7 @@ curl -sSLOm 10 https://dl.cdn.haozi.net/panel/install.sh && bash install.sh
|
||||
|
||||
## Partners
|
||||
|
||||
If the Rat Panel is helpful to you, welcome to [sponsor us](https://github.com/tnborg/panel/issues/90), also thanks to the following supporters/sponsors:
|
||||
If the AcePanel is helpful to you, welcome to [sponsor us](https://github.com/tnborg/panel/issues/90), also thanks to the following supporters/sponsors:
|
||||
|
||||
<p align="center">
|
||||
<a href="https://www.weixiaoduo.com/">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright (C) 2022 - now Rat Technology Co., Ltd.
|
||||
Copyright (C) 2022 - now AcePanel.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as published
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright (C) 2022 - now Rat Technology Co., Ltd.
|
||||
Copyright (C) 2022 - now AcePanel.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as published
|
||||
|
||||
@@ -36,7 +36,7 @@ func NewCli(t *gotext.Locale, cmd *route.Cli) *cli.Command {
|
||||
|
||||
return &cli.Command{
|
||||
Name: "panel-cli",
|
||||
Usage: t.Get("Rat Panel CLI Tool"),
|
||||
Usage: t.Get("AcePanel CLI Tool"),
|
||||
Version: app.Version,
|
||||
Commands: cmd.Commands(),
|
||||
}
|
||||
|
||||
@@ -151,7 +151,7 @@ func (r *userRepo) IsTwoFA(username string) (bool, error) {
|
||||
|
||||
func (r *userRepo) GenerateTwoFA(id uint) (image.Image, string, string, error) {
|
||||
key, err := totp.Generate(totp.GenerateOpts{
|
||||
Issuer: "RatPanel",
|
||||
Issuer: "AcePanel",
|
||||
AccountName: cast.ToString(id),
|
||||
SecretSize: 32,
|
||||
Algorithm: otp.AlgorithmSHA1,
|
||||
|
||||
@@ -55,7 +55,7 @@ func NewDashboardService(t *gotext.Locale, conf *koanf.Koanf, task biz.TaskRepo,
|
||||
func (s *DashboardService) Panel(w http.ResponseWriter, r *http.Request) {
|
||||
name, _ := s.settingRepo.Get(biz.SettingKeyName)
|
||||
if name == "" {
|
||||
name = s.t.Get("Rat Panel")
|
||||
name = s.t.Get("AcePanel")
|
||||
}
|
||||
|
||||
Success(w, chix.M{
|
||||
|
||||
@@ -110,7 +110,7 @@ func GenerateSelfSigned(names []string) (cert []byte, key []byte, err error) {
|
||||
|
||||
rootTemplate := x509.Certificate{
|
||||
SerialNumber: big.NewInt(1),
|
||||
Subject: pkix.Name{CommonName: "Rat Panel Root CA"},
|
||||
Subject: pkix.Name{CommonName: "AcePanel Root CA"},
|
||||
NotBefore: time.Now(),
|
||||
NotAfter: time.Now().AddDate(20, 0, 0),
|
||||
BasicConstraintsValid: true,
|
||||
@@ -135,7 +135,7 @@ func GenerateSelfSigned(names []string) (cert []byte, key []byte, err error) {
|
||||
|
||||
interTemplate := x509.Certificate{
|
||||
SerialNumber: big.NewInt(2),
|
||||
Subject: pkix.Name{CommonName: "Rat Panel CA"},
|
||||
Subject: pkix.Name{CommonName: "AcePanel CA"},
|
||||
NotBefore: time.Now(),
|
||||
NotAfter: time.Now().AddDate(10, 0, 0),
|
||||
BasicConstraintsValid: true,
|
||||
@@ -161,7 +161,7 @@ func GenerateSelfSigned(names []string) (cert []byte, key []byte, err error) {
|
||||
|
||||
clientTemplate := x509.Certificate{
|
||||
SerialNumber: big.NewInt(3),
|
||||
Subject: pkix.Name{CommonName: "Rat Panel"},
|
||||
Subject: pkix.Name{CommonName: "AcePanel"},
|
||||
NotBefore: time.Now(),
|
||||
NotAfter: time.Now().AddDate(10, 0, 0),
|
||||
KeyUsage: x509.KeyUsageDigitalSignature | x509.KeyUsageKeyEncipherment,
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
<body>
|
||||
<div class="container">
|
||||
<h1>404 Not Found</h1>
|
||||
<p>Powered by <a target="_blank" href="https://panel.haozi.net">Rat Panel</a></p>
|
||||
<p>Powered by <a target="_blank" href="https://acepanel.net">AcePanel</a></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Rat Panel</title>
|
||||
<title>AcePanel</title>
|
||||
<style>
|
||||
body {
|
||||
background-color: #f9f9f9;
|
||||
@@ -49,10 +49,10 @@
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
<h1>Rat Panel</h1>
|
||||
<p>This is the default page for the Rat Panel website!</p>
|
||||
<h1>AcePanel</h1>
|
||||
<p>This is the default page for the AcePanel website!</p>
|
||||
<p>When you see this page, it means your website has been created successfully.</p>
|
||||
<p>Powered by <a target="_blank" href="https://panel.haozi.net">Rat Panel</a></p>
|
||||
<p>Powered by <a target="_blank" href="https://acepanel.net">AcePanel</a></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -25,7 +25,7 @@ func (suite *RSATestSuite) TestRSA() {
|
||||
suite.NotEmpty(PrivateKeyToString(privateKey))
|
||||
suite.NotEmpty(PublicKeyToString(&privateKey.PublicKey))
|
||||
|
||||
message := []byte("Rat Panel")
|
||||
message := []byte("AcePanel")
|
||||
|
||||
// 加密数据
|
||||
ciphertext, err := EncryptData(&privateKey.PublicKey, message)
|
||||
|
||||
@@ -4,8 +4,8 @@
|
||||
|
||||
预了解更多请移步 [耗子面板](https://github.com/tnborg/panel)。
|
||||
|
||||
# Rat Panel
|
||||
# AcePanel
|
||||
|
||||
This is the frontend part of Rat Panel, developed using Vue3 + Vite + UnoCSS + Naive UI.
|
||||
This is the frontend part of AcePanel, developed using Vue3 + Vite + UnoCSS + Naive UI.
|
||||
|
||||
For more information, please visit [Rat Panel](https://github.com/tnborg/panel).
|
||||
For more information, please visit [AcePanel](https://github.com/tnborg/panel).
|
||||
|
||||
@@ -65,6 +65,7 @@
|
||||
"@types/luxon": "^3.6.2",
|
||||
"@types/node": "^22.15.21",
|
||||
"@types/node-forge": "^1.3.11",
|
||||
"@typescript/native-preview": "7.0.0-dev.20250808.1",
|
||||
"@unocss/eslint-config": "^66.1.2",
|
||||
"@vitejs/plugin-vue": "^6.0.0",
|
||||
"@vue/eslint-config-prettier": "^10.2.0",
|
||||
|
||||
81
web/pnpm-lock.yaml
generated
81
web/pnpm-lock.yaml
generated
@@ -123,6 +123,9 @@ importers:
|
||||
'@types/node-forge':
|
||||
specifier: ^1.3.11
|
||||
version: 1.3.13
|
||||
'@typescript/native-preview':
|
||||
specifier: 7.0.0-dev.20250808.1
|
||||
version: 7.0.0-dev.20250808.1
|
||||
'@unocss/eslint-config':
|
||||
specifier: ^66.1.2
|
||||
version: 66.4.2(eslint@9.32.0(jiti@2.5.1))(typescript@5.9.2)
|
||||
@@ -1159,6 +1162,53 @@ packages:
|
||||
resolution: {integrity: sha512-ldgiJ+VAhQCfIjeOgu8Kj5nSxds0ktPOSO9p4+0VDH2R2pLvQraaM5Oen2d7NxzMCm+Sn/vJT+mv2H5u6b/3fA==}
|
||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||
|
||||
'@typescript/native-preview-darwin-arm64@7.0.0-dev.20250808.1':
|
||||
resolution: {integrity: sha512-sLYVMJcUL/nWbuttSKeEjov1yCPjVKSUzJQLSBQexLCefAbUjDSog91LB/+6So82FhV9hWlgiqEJ7KzYCW6+yA==}
|
||||
engines: {node: '>=20.6.0'}
|
||||
cpu: [arm64]
|
||||
os: [darwin]
|
||||
|
||||
'@typescript/native-preview-darwin-x64@7.0.0-dev.20250808.1':
|
||||
resolution: {integrity: sha512-zFsSYSm5Ko7bEaUgXCTHe/zb0nwB3fhTEMJXolAT87IGJ05PAkIHaDaODacb9BEJRrJzdHCQipbkhE3ZZsWgvQ==}
|
||||
engines: {node: '>=20.6.0'}
|
||||
cpu: [x64]
|
||||
os: [darwin]
|
||||
|
||||
'@typescript/native-preview-linux-arm64@7.0.0-dev.20250808.1':
|
||||
resolution: {integrity: sha512-4nZP2JaIrYqx15V6WWiwKgfUSfatB5Tz0Tw7tjE6H2LA8dhdQs8hFzQGHzaslOVPcx3352anCVMehjgEh+iKJg==}
|
||||
engines: {node: '>=20.6.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
|
||||
'@typescript/native-preview-linux-arm@7.0.0-dev.20250808.1':
|
||||
resolution: {integrity: sha512-EL4183JV7254W2YnzBUurdnOa0VZmZp/vAAVApYTKTX57kUMM1rUZelvFzVt9Eg+QSgwnCwRkR0InRQVSDiqtA==}
|
||||
engines: {node: '>=20.6.0'}
|
||||
cpu: [arm]
|
||||
os: [linux]
|
||||
|
||||
'@typescript/native-preview-linux-x64@7.0.0-dev.20250808.1':
|
||||
resolution: {integrity: sha512-PXn6sjAStVFV9KjgmKCj6MrOi+ouVTtkJiU72zoLoejll+wT0xu3Hly4eRz5C+VKkWHXlaQvRV5E4Qcp57QWRA==}
|
||||
engines: {node: '>=20.6.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
|
||||
'@typescript/native-preview-win32-arm64@7.0.0-dev.20250808.1':
|
||||
resolution: {integrity: sha512-bblUodDySZOZqCXZm9pNpyu+UfJLb5OmxYeNYKi+k+T+1MgbtmGFYk+FbJwZug/7z/Q6h1h+y2ryJyAovgV/Rg==}
|
||||
engines: {node: '>=20.6.0'}
|
||||
cpu: [arm64]
|
||||
os: [win32]
|
||||
|
||||
'@typescript/native-preview-win32-x64@7.0.0-dev.20250808.1':
|
||||
resolution: {integrity: sha512-ocMKolDiUa/g68NcTySq8+b/hM1g+pxxpwm+pST/TSsRJ95j7lbcGeXhAXFZZHT8IUwsQFrf8rK/kByGMrapxQ==}
|
||||
engines: {node: '>=20.6.0'}
|
||||
cpu: [x64]
|
||||
os: [win32]
|
||||
|
||||
'@typescript/native-preview@7.0.0-dev.20250808.1':
|
||||
resolution: {integrity: sha512-gOjZikd2y3obz7yDQjOEoVGpJW8xj8U24xeFa5zNYjCJ3wLP6dCEHP8ndIwhP3pCzDwgwTblaQGAtY/zCqE2TA==}
|
||||
engines: {node: '>=20.6.0'}
|
||||
hasBin: true
|
||||
|
||||
'@unocss/astro@66.4.2':
|
||||
resolution: {integrity: sha512-En3AKHwkiPxtZT95vkVrNiRYrB+DFVCikew6/dMMCWDWVKK0+5tEVUTzR1ak3+YnzAXl0NpWj8D4zHb0PxOs/A==}
|
||||
peerDependencies:
|
||||
@@ -4666,6 +4716,37 @@ snapshots:
|
||||
'@typescript-eslint/types': 8.39.0
|
||||
eslint-visitor-keys: 4.2.1
|
||||
|
||||
'@typescript/native-preview-darwin-arm64@7.0.0-dev.20250808.1':
|
||||
optional: true
|
||||
|
||||
'@typescript/native-preview-darwin-x64@7.0.0-dev.20250808.1':
|
||||
optional: true
|
||||
|
||||
'@typescript/native-preview-linux-arm64@7.0.0-dev.20250808.1':
|
||||
optional: true
|
||||
|
||||
'@typescript/native-preview-linux-arm@7.0.0-dev.20250808.1':
|
||||
optional: true
|
||||
|
||||
'@typescript/native-preview-linux-x64@7.0.0-dev.20250808.1':
|
||||
optional: true
|
||||
|
||||
'@typescript/native-preview-win32-arm64@7.0.0-dev.20250808.1':
|
||||
optional: true
|
||||
|
||||
'@typescript/native-preview-win32-x64@7.0.0-dev.20250808.1':
|
||||
optional: true
|
||||
|
||||
'@typescript/native-preview@7.0.0-dev.20250808.1':
|
||||
optionalDependencies:
|
||||
'@typescript/native-preview-darwin-arm64': 7.0.0-dev.20250808.1
|
||||
'@typescript/native-preview-darwin-x64': 7.0.0-dev.20250808.1
|
||||
'@typescript/native-preview-linux-arm': 7.0.0-dev.20250808.1
|
||||
'@typescript/native-preview-linux-arm64': 7.0.0-dev.20250808.1
|
||||
'@typescript/native-preview-linux-x64': 7.0.0-dev.20250808.1
|
||||
'@typescript/native-preview-win32-arm64': 7.0.0-dev.20250808.1
|
||||
'@typescript/native-preview-win32-x64': 7.0.0-dev.20250808.1
|
||||
|
||||
'@unocss/astro@66.4.2(vite@7.1.1(@types/node@22.17.0)(jiti@2.5.1)(sass@1.90.0)(terser@5.43.1)(tsx@4.20.3))':
|
||||
dependencies:
|
||||
'@unocss/core': 66.4.2
|
||||
|
||||
@@ -10,7 +10,7 @@ const year = new Date().getFullYear()
|
||||
<p>
|
||||
© 2022 - {{ year }}
|
||||
<a hover="decoration-primary color-primary" target="__blank" href="https://panel.haozi.net/">
|
||||
{{ $gettext('Rat Panel') }}
|
||||
{{ $gettext('AcePanel') }}
|
||||
</a>
|
||||
{{ $gettext('All Rights Reserved.') }}
|
||||
</p>
|
||||
|
||||
@@ -436,7 +436,7 @@ if (import.meta.hot) {
|
||||
/>
|
||||
</n-gi>
|
||||
</n-grid>
|
||||
<template #title>{{ $gettext('Rat Panel') }}</template>
|
||||
<template #title>{{ $gettext('AcePanel') }}</template>
|
||||
<template #extra>
|
||||
<n-flex>
|
||||
<n-button type="primary" @click="toSponsor">
|
||||
|
||||
Reference in New Issue
Block a user